(57)【要約】【課題】  ネットワークを介したデータ記録において、記録先のアドレスに応じて処理内容を切り替えることで、書込み先の記録媒体のファイルシステムの破壊を防止し、かつ、高速なデータ転送を実現する。【解決手段】  受信されたコマンドが記録媒体におけるファイルシステムの管理情報の記憶領域への書き込みコマンドであるか否かを判定する（Ｓ５０１）。その受信されたコマンドが記録媒体におけるファイルシステムの管理情報の記憶領域への書き込みコマンドであると判定された場合において、受信された、管理情報の記憶領域への書き込みデータが正常でないときは、記録媒体へのデータの書き込みを禁止する（Ｓ５０６）。【選択図】  図５
2014044683.tif 000002
【特許請求の範囲】
【請求項１】
外部の装置との間で通信を行う通信手段と、
データを記憶する記録媒体と、
所定のファイルシステムに従って前記記録媒体に対するデータの書き込み及び読み出しを行う記録再生手段と、
前記通信手段により受信されたコマンドが前記記録媒体における前記ファイルシステムの管理情報の記憶領域への書き込みコマンドであることを検出する検出手段と、
前記検出手段により検出された前記管理情報の記憶領域への書き込みコマンドによるデータが正常でない場合に、前記記録再生手段による前記記録媒体へのデータの書き込みを禁止する制御手段と、
を有することを特徴とする通信装置。
【請求項２】
前記記録媒体における前記管理情報の記憶領域に関する情報を記憶するレジスタを更に有し、
前記検出手段は、前記通信手段により受信されたコマンドに含まれる書き込みアドレスが前記レジスタに記憶された記憶領域に含まれている場合、前記通信手段により受信されたコマンドが前記記録媒体における前記管理情報の記憶領域への書き込みコマンドであると判定する
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記通信手段により受信されたコマンドに含まれる書き込みアドレスが前記レジスタに記憶された記憶領域に含まれていない場合、前記記録再生部は、前記記録媒体の、当該コマンドに含まれる書き込みアドレスにデータを記録することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
外部の装置との間で通信を行う通信手段と、
データを記憶する記録媒体と、
所定のファイルシステムに従って前記記録媒体に対するデータの書き込み及び読み出しを行う記録再生手段と、
を有する通信装置の制御方法であって、
検出手段が、前記通信手段により受信されたコマンドが前記記録媒体における前記ファイルシステムの管理情報の記憶領域への書き込みコマンドであることを検出する検出ステップと、
制御手段が、前記検出ステップで検出された前記管理情報の記憶領域への書き込みコマンドによるデータが正常でない場合に、前記記録再生手段による前記記録媒体へのデータの書き込みを禁止する制御ステップと、
を有することを特徴とする通信装置の制御方法。
【請求項５】
コンピュータに請求項４に記載の通信装置の制御方法の各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信装置に関し、特に、外部から受信した信号を記録媒体に記録する装置に関する。
【背景技術】
【０００２】
従来、携帯電話等の情報通信機器においては、無線通信によりデータの送受信を行っている（例えば、特許文献１参照）。例えば、送信側の機器から送信されたデータは受信側の機器で受信され、その受信されたデータは、メモリカード等の記録媒体に記録される。
【０００３】
また、メモリカードにおいては、近距離無線通信（ＮＦＣ）によりデータのやりとりが行われる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−０６１０４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
無線通信においては、他の無線の干渉や障害物により、あるいは、距離が離れることにより、通信が切断されることがある。そのため、通信に用いられるプロトコルは、アプリケーション通信であることが一般的であった。例えば、ＩＰネットワークプロトコルであればＦＴＰ(File Transfer Protocol)のように、ファイル単位でデータの送受信が行われる。これにより、たとえ通信が切断されたとしても、システムに重大な影響を及ぼすことはなかった。
【０００６】
しかし、このようなファイル単位での通信方式においては、受信したデータの記録位置のサーチや管理処理が発生するためにオーバーヘッドが大きくなり、伝送効率が悪い。
【０００７】
一方、一般的な記録媒体とシステムを接続するインターフェイスとしてＵＳＢなどがある。ＵＳＢでは、記録媒体との通信においてはマスストレージプロトコルが一般的に採用されている。このプロトコルは、ＦＴＰとは異なり、記録媒体に依存したプロトコルとなっている。即ち、送信側は記録媒体のどこに記録するかまで指定してデータを送信するために、マスストレージのプログラムの処理は、ＦＴＰなどのファイル単位での通信方式に比べ負荷が軽いためオーバーヘッドが少なく高速な転送を実現できる。ところが、この通信方式の場合、通信が切断された場合には、記録媒体を破壊してしまう可能性がある。例えば、メモリカード等に記録されたデータは、一般に、ＦＡＴファイルシステム等のファイルシステムに従いファイルとして管理される。そして、ファイルシステムにおける管理情報の送信途中に通信が切断された場合、記録媒体に記録されている情報の読み出しが不能になる可能性がある。
【０００８】
本発明はこのような問題に鑑みてなされたものであり、高速かつ安全にデータを受信、記録することができるようにすることを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面によれば、外部の装置との間で通信を行う通信手段と、データを記憶する記録媒体と、所定のファイルシステムに従って前記記録媒体に対するデータの書き込み及び読み出しを行う記録再生手段と、前記通信手段により受信されたコマンドが前記記録媒体における前記ファイルシステムの管理情報の記憶領域への書き込みコマンドであることを検出する検出手段と、前記検出手段により検出された前記管理情報の記憶領域への書き込みコマンドによるデータが正常でない場合に、前記記録再生手段による前記記録媒体へのデータの書き込みを禁止する制御手段とを有することを特徴とする通信装置が提供される。
【発明の効果】
【００１０】
本発明によれば、高速かつ安全にデータを受信、記録することができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態における通信システムの構成を示す図。
【図２】実施形態における送信装置及び受信装置の構成を示す図。
【図３】管理情報が記憶された記録媒体における記憶領域の模式図。
【図４】実施形態における送信装置によるデータ送信処理を示すフローチャート。
【図５】実施形態における受信装置によるデータ受信処理を示すフローチャート。
【図６】実施形態におけるパケットデータの構造例を示す図。
【図７】実施形態における管理情報を記憶するためのレジスタを示す図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、本発明は以下の実施形態に限定されるものではなく、本発明の実施に有利な具体例を示すにすぎない。また、以下の実施形態の中で説明されている特徴の組み合わせの全てが本発明の課題解決のために必須のものであるとは限らない。
【００１３】
図１は、本実施形態に係る通信システムの構成例を示すブロック図である。図１において、通信装置である送信装置１０１と受信装置１０２はそれぞれ、図２に示す構成を備える情報処理装置である。送信装置１０１と受信装置１０２は無線通信により通信を行い、データの送受信を行う。また、本実施形態では、送信装置１０１は例えば、パーソナルコンピュータ等の大容量の記録媒体を備えた装置であってもよく、受信装置１０２は携帯電話等の携帯型の機器であってもよい。
【００１４】
図２は、送信装置１０１及び受信装置１０２の構成を示す図である。図２において、送信装置１０１と受信装置１０２は同様の構成を備えている。以下の説明では、送信装置１０１の構成について説明する。受信装置１０２は送信装置１０１と同様の構成を備えているため、受信装置１０２各部の詳細な説明は省略する。送信装置１０１と受信装置１０２との間で対応する構成要素には共通の参照番号が付与されている。ただし、それぞれの参照番号の末尾には、送信装置１０１の構成要素であることを示す「ａ」、又は、受信装置１０２の構成要素であることを示す「ｂ」の文字が更に付されている。
【００１５】
制御部２０１ａは、操作部２０２ａからの入力に応じて送信装置１０１の動作全体を制御する。制御部２０１ａはマイクロコンピュータやメモリ等を含み、不図示のメモリに記憶されたプログラム（ソフトウェア）に従って送信装置１０１を制御する。操作部２０２ａは、ユーザにより操作可能な各種のスイッチを含む。そして、操作部２０２ａは、ユーザによる各種の指示などを受理して制御部２０１ａへ通知する。また、操作部２０２ａは、電源スイッチやデータの送信の開始や、送信するデータを選択するためのユーザインターフェイス等を含む。
【００１６】
表示制御部２０３ａは、制御部２０１ａからの指示により、各種の情報を表示部２０４ａに表示する。表示部２０４ａは液晶パネル等の表示デバイスを含む。メモリ２０５ａは、受信したデータ等の各種のデータを記憶する。バス２０６ａは、送信装置１０１の各部の間でデータを送受信する。
【００１７】
記録再生部２０７ａは、記録媒体２０８ａに対し、各種の情報を書き込み、また、読み出す。本実施形態では、記録媒体２０８ａは、例えばハードディスク（ＨＤＤ）、フラッシュメモリカード等、ランダムアクセスの記録媒体である。また、記録再生部２０７ａは、記録媒体２０８ａに記録したデータを、ＦＡＴ（File Allocation Table）等のファイルシステムに従い、ファイルとして管理する。また、不図示の装着・排出機構により、受信装置１０２に対して記録媒体２０８ａを容易に装着、排出することができるように構成するが、送信装置１０１に記録媒体２０８ａが内蔵される構成でもよい。
【００１８】
通信部２０９ａは、アンテナ２１０ａを用いて、無線通信により外部の装置との間でデータやその他コマンド等を送受信する。データ判定部２１１ａは、後述するように、受信したコマンドの内容と指定されたアドレスを判定する。バス２１２ａは、記録再生部２０７ａとデータ判定部２１１ａとの間でデータを送受信するための専用のバスである。バッファメモリ２１３ａは、データ判定部２１１ａが受信したコマンドやアドレス、データを一時的に記憶する。
【００１９】
次に、送信装置１０１から受信装置１０２に対してデータを送信し、受信装置１０２における記録媒体２０８ｂに受信したデータを記録する処理について説明する。
【００２０】
図４は、送信装置１０１によるデータ送信処理を示すフローチャートである。なお、図４のフローチャートに対応するプログラムは例えばメモリ２０５ａに格納され、制御部２０１ａがこれを読み出して実行し各部を制御することによりデータ送信処理が実現される。
【００２１】
ユーザは操作部２０２ａを操作して、送信対象のデータを選択するための選択画面の表示を指示する。制御部２０１ａは、選択画面の表示が指示されると、記録媒体２０８ａより、ファイルシステムに関連した管理情報を読み出すように記録再生部２０７ａに指示する。記録再生部２０７ａは、記録媒体２０８ａよりファイルシステムに関連した管理情報を読み出し、メモリ２０５ａに記憶する。管理情報とは、記録媒体２０８ａに記録されたデータの記録位置や記録媒体２０８ａの空き領域などを管理するための情報である。例えば、ＦＡＴファイルシステムにおいては、管理情報はＦＡＴやルートディレクトリエントリ、或いは、各ディレクトリエントリの情報である。制御部２０１ａは、メモリ２０５ａに記憶された管理情報に基づいて、記録媒体２０８ａに記録されたファイルを検出し、送信対象のデータ（ファイル）を選択するための選択画面を生成するように表示制御部２０３ａに指示する。表示制御部２０３ａは、選択画面を生成して表示部２０４ａに表示する。
【００２２】
ユーザは、操作部２０２ａを操作して、表示部２０４ａに表示されたデータから、送信対象のデータを選択する（Ｓ４０１）。送信データが選択されると、制御部２０１ａは、通信部２０９ａより、受信装置１０２に対し、受信装置１０２における記録媒体２０８ｂの管理情報の送信を要求する（Ｓ４０２）。通信部２０９ａは、制御部２０１ａからの指示に従い、管理情報の送信コマンドをアンテナ２１０ａより受信装置１０２に送る。
【００２３】
受信装置１０２では、通信部２０９ｂがアンテナ２１０ｂにより送信装置１０１からの管理情報の送信コマンドを受信し、データ判定部２１１ｂに送る。データ判定部２１１ｂは、後述するように、受信されたコマンドが書き込みコマンドであることを検出する。ここでは、受信したコマンドが管理情報の送信コマンドであるため、データ判定部２１１ｂは、受信したコマンドを制御部２０１ｂに送る。制御部２０１ｂは、管理情報の送信コマンドに応じて、記録再生部２０７ｂに対して、受信装置１０２における記録媒体２０８ｂの管理情報を読み出すように指示する。記録再生部２０７ｂは、記録媒体２０８ｂより管理情報を読み出し、メモリ２０５ｂに記憶する。制御部２０１ｂは、通信部２０９ｂにより、メモリ２０５ｂに記憶された管理情報を送信するように指示する。通信部２０９ｂは、メモリ２０５ｂより管理情報を読み出し、アンテナ２１０ｂにより送信装置１０１に送る。
【００２４】
送信装置１０１において、通信部２０９ａは受信装置１０２より送信された管理情報を受信し、データ判定部２１１ａに送る（Ｓ４０３）。データ判定部２１１ａは、受け取った管理情報を制御部２０１ａに送る。制御部２０１ａは、受信した管理情報に基づいて、受信装置１０２の記録媒体２０８ｂにおけるフォルダを表示部２０４ａに表示するように表示制御部２０３ａに指示する。表示制御部２０３ａは、記録媒体２０８ｂのフォルダを表示部２０４ａに表示する（Ｓ４０４）。ユーザは操作部２０２ａを操作して、表示部２０４ａに表示されたフォルダから、送信したデータを記録するフォルダを選択する（Ｓ４０５）。送信先のフォルダが選択されると、制御部２０１ａは、受信装置１０２より受信した管理情報に基づいて、選択されたフォルダに対して、選択されたデータの書き込みを指示する書き込みコマンドを生成する。
【００２５】
制御部２０１ａは、受信装置１０２より受信した管理情報に基づいて、記録媒体２０８ｂにおける空き領域を検出する。そして、この空き領域から、送信データを記録するアドレスを決定し、書き込みアドレスを含む書き込みコマンドを生成する。また、制御部２０１ａは、受信装置１０２より受信した管理情報に基づいて、記録媒体２０８ｂへの送信データの書き込みに応じて変更する必要がある管理情報を生成する。例えば、送信データの記録先として指定されたフォルダに関するディレクトリエントリや、ＦＡＴの情報を変更する。そして、変更したこれらの管理情報と書き込みアドレスを含む書き込みコマンドを生成する。
【００２６】
制御部２０１ａは、通信部２０９ａに対し、書き込みコマンドと送信データとを送信するように指示する（Ｓ４０６）。通信部２０９ａは、書き込みコマンドと送信データとを受信装置１０２に送る。本実施形態では、図６に示すパケットデータ６０１の形式としてコマンドを送信する。パケットデータ６０１は、読み出し、書き込みなどの処理内容を示すコマンドフィールド６０２、論理アドレスを示すアドレスフィールド６０３を含む。また、パケットデータ６０１は、書き込み、読み出しのデータの長さを示すデータ長フィールド６０４、送信対象のデータが格納されるデータフィールド６０５から構成される。
【００２７】
次に、受信装置１０２におけるデータの受信処理について説明する。図５は、受信装置１０２によるデータの受信処理を示すフローチャートである。なお、図５のフローチャートに対応するプログラムは例えばメモリ２０５ｂに格納され、制御部２０１ｂがこれを読み出して実行し各部を制御することによりデータ受信処理が実現される。
【００２８】
前述のように、送信装置１０１よりコマンドが送信されると、通信部２０９ｂはアンテナ２１０ｂを介してコマンドを受信し、データ判定部２１１ｂに送る。データ判定部２１１ｂは、受信したコマンドをバッファメモリ２１３ｂに記憶する。データ判定部２１１ｂによりコマンドが受信されると、図５のフローが開始される。
【００２９】
まず、データ判定部２１１ｂは、受信したコマンドがデータの書き込みコマンドか否かを判別する（Ｓ５０１）。データの書き込みコマンドでなかった場合、データ判定部２１１ｂは、受信したコマンドを制御部２０１ｂに送り、制御部２０１ｂによりコマンドに対応した処理が実行される（Ｓ５０８）。
【００３０】
受信したコマンドが書き込みコマンドであった場合、データ判定部２１１ｂは、コマンドに含まれる書き込みアドレスが所定のアドレスであるか否かを判別する（Ｓ５０２）。データ判定部２１１ｂは、記録媒体２０８ｂにおける管理情報が記録されている論理アドレスを記憶するためのレジスタ７００を内蔵している。図７は管理情報の記憶のためのレジスタを示している。図７において、管理情報の記憶開始アドレス７０１と、記憶終了アドレス７０２がレジスタ７００に記憶されている。例えば、図３に示すように、記録媒体２０８ｂにおける記憶領域３０１のうち、アドレス０ｘ００００ＢＥ００〜０ｘ００４０ＢＥ００の間の領域３０２に管理情報が記憶されていた場合、これらのアドレスがレジスタ７００に記憶される。また、アドレス管理情報が、記録媒体２０８ｂにおける複数の領域に分散して記憶されている場合、各領域の先頭の論理アドレスと終了の論理アドレスがそれぞれ、レジスタ７００に記憶される。データ判定部２１１ｂは、受信装置１０２の電源が投入された場合、或いは、新たに記録媒体２０８ｂが装着された場合に、記録媒体２０８ｂに記憶されている管理情報の記憶領域を全て検出し、レジスタ７００に記憶する。
【００３１】
データ判定部２１１ｂは、受信したコマンドに含まれる書き込みアドレスが、レジスタ７００に記憶された１以上の記憶開始アドレスと記憶終了アドレスにより指定される記憶領域の何れかに含まれるか否かを判定する。
【００３２】
受信したアドレスが、管理情報の記憶領域に含まれていない場合、データ判定部２１１ｂは、バッファメモリ２１３ｂより受信したデータを読み出し、バス２１２ｂを介して記録再生部２０７ｂに送る（Ｓ５０７）。記録再生部２０７ｂは、受信したコマンドに基づいて、記録媒体２０８ｂにおける指定されたアドレスにデータを記録する。
【００３３】
受信したアドレスが、管理情報の記憶領域に含まれていた場合、データ判定部２１１ｂは制御部２０１に対し、管理情報の記憶領域に対する書き込み要求があった旨の割り込み信号を出力する（Ｓ５０３）。制御部２０１ｂは、割り込み信号に応じて、データ判定部２１１ｂを制御して、バッファメモリ２１３ｂより受信したデータを読み出し、メモリ２０５ｂに記憶する（Ｓ５０４）。制御部２０１ｂは、メモリに２０５ｂに記憶されたデータが正常であるか否かを判別する（Ｓ５０５）。受信した書き込みコマンドに含まれるアドレスが、記録媒体２０８ｂにおける管理情報の記憶領域に含まれているということは、書き込み対象のデータがファイルシステムにより規定された管理情報であるということである。そのため、制御部２０１ｂは、受信した書き込み対象のデータが、ＦＡＴファイルシステムにより規定された正しい値となっているか否かを確認する。例えば、制御部２０１ｂは、管理情報が記憶されるクラスタのうち、終端を示す値が格納されるべきところに不良クラスタなどの不定なデータが格納されている場合は、受信データが正しくないと判断する。或いは、ＦＡＴにて指定されるクラスタチェーンがループしている場合などもデータが正しくないと判定する。
【００３４】
データが正常であると判定した場合、制御部２０１ｂは、メモリ２０５ｂよりデータを読み出して記録再生部２０７ｂに送り、記録再生部２０７ｂにおける指定されたアドレスにデータを記録する（Ｓ５０７）。
【００３５】
データが正常でないと判定した場合、制御部２０１ｂは、記録再生部２０７ｂに対して書き込みコマンドとデータの送信を停止し、受信したデータの書き込みを禁止する（Ｓ５０６）。このように、データの書き込みが正常に完了しない場合、制御部２０１ｂは、通信部２０９ｂにより、データの書き込みが完了しない旨のコマンドを送信装置１０１に送る。
【００３６】
このように、本実施形態によれば、管理情報の書き込みコマンドを受けた場合、受信したデータを一旦メモリに記憶して内容が正しいか否かをチェックする。そのため、送信中のエラーや、無線通信が切断されたことにより、不良なデータが記録媒体２０８ｂの管理情報領域に書き込まれてしまい、データが読み出せなくなるということを防ぐことができる。
【００３７】
また、本実施形態によれば、管理情報以外のデータの書き込みコマンドを受けた場合には、コマンドとデータをそのまま記録再生部に送るので、高速にデータの書き込みを実現することができる。
【００３８】
本実施形態では、ＦＡＴファイルシステムに従ってデータを管理する構成であったが、ＦＡＴ以外のファイルシステムを用いる場合にも同様に本発明を適用可能である。また、図２の受信装置１０２において、複数の記録媒体を装着可能な場合は、それぞれの記録媒体について、管理情報の記憶領域をレジスタに記憶しておく。また、本実施形態では、無線通信により通信を行う構成としたが、有線通信を用いることも可能である。
【００３９】
（他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【図１】
2014044683.tif 000003
【図２】
2014044683.tif 000004
【図３】
2014044683.tif 000005
【図４】
2014044683.tif 000006
【図５】
2014044683.tif 000007
【図６】
2014044683.tif 000008
【図７】
2014044683.tif 000009