(57)【要約】      （修正有）【課題】複数のデバイスを認識させる場合において煩雑な処理を軽減し、小型の電子機器に対しても適用可能であるデータ制御システム及びプログラムを提供する。【解決手段】データ制御システムは、バスを介したデータ転送の対象となる第１〜第ｎのデバイス５０、８０と、第１〜第ｎのデバイス５０、８０のパーティション管理情報から、第１〜第ｎのデバイス５０、８０を１つのデバイスとして認識させるための仮想管理情報を作成する仮想管理情報作成部６２と、第１〜第ｎのデバイス５０、８０が、１つのデバイスの論理アドレスを指定してリード又はライトのアクセスが要求された場合に、仮想管理情報及び論理アドレスに基づいて、第１〜第ｎのデバイス５０、８０のいずれかを指定するデバイス指定情報と論理アドレスに対応する物理アドレスを算出して、デバイスに対するアクセス制御を行うデバイス制御部６４と、を含む。【選択図】図１
2006338350.tif 000002
【特許請求の範囲】
【請求項１】
バスを介したデータ転送の対象となる第１〜第ｎ（ｎは２以上の整数）のデバイスと、
前記第１〜第ｎのデバイスのパーティション管理情報から、前記第１〜第ｎのデバイスを１つのデバイスとして認識させるための仮想管理情報を作成する仮想管理情報作成部と、
前記第１〜第ｎのデバイスが前記仮想管理情報に基づいて１つのデバイスとして認識され、前記１つのデバイスの論理アドレスを指定してリード又はライトのアクセスが要求された場合に、
前記仮想管理情報及び前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかを指定するデバイス指定情報と前記論理アドレスに対応する物理アドレスを算出して、前記第１〜第ｎのデバイスの少なくとも１つに対するアクセス制御を行うデバイス制御部と、
を含むことを特徴とするデータ制御システム。
【請求項２】
請求項１において、
前記仮想管理情報作成部は、
前記第１〜第ｎのデバイスのいずれかの管理情報のブート情報を、前記仮想管理情報のブート情報にコピーして前記仮想管理情報を作成することを特徴とするデータ制御システム。
【請求項３】
請求項１又は２において、
前記仮想管理情報作成部は、
前記第１〜第ｎのデバイスのうちの前記第１のデバイスのパーティション管理情報を、前記仮想管理情報の第１パーティション情報にコピーして前記仮想管理情報を作成することを特徴とするデータ制御システム。
【請求項４】
請求項３において、
前記仮想管理情報作成部は、
前記第１〜第ｎのデバイスのうちの前記第２〜第ｎのデバイスのパーティション管理情報に対して、パーティションのスタートアドレスをオフセットする処理を施し、その結果を、前記仮想管理情報の第２〜第ｎパーティション情報に用いることを特徴とするデータ制御システム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記デバイス制御部は、
指定された前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかに特定する処理と、前記物理アドレスを算出する処理とを行い、
前記論理アドレスに対応するデバイスが第ｋ（ｋは２以上ｎ以下）のデバイスである場合には、前記論理アドレスから第１〜第ｋ―１のデバイスのパーティションのサイズの合計に相当する値を減算することで、前記物理アドレスを算出することを特徴とするデータ制御システム。
【請求項６】
請求項５において、
前記デバイス制御部は、
前記論理アドレスに対応するデバイスが第１のデバイスである場合には、前記論理アドレスを前記物理アドレスとして用いることを特徴とするデータ制御システム。
【請求項７】
バスを介したデータ転送の対象となる第１〜第ｎ（ｎは２以上の整数）のデバイスのパーティション管理情報から、前記第１〜第ｎのデバイスを１つのデバイスとして認識させるための仮想管理情報を作成する仮想管理情報作成部と、
前記第１〜第ｎのデバイスが前記仮想管理情報に基づいて１つのデバイスとして認識され、前記１つのデバイスの論理アドレスを指定してリード又はライトのアクセスが要求された場合に、
前記仮想管理情報及び前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかを指定するデバイス指定情報と前記論理アドレスに対応する物理アドレスを算出して、デバイスに対するアクセス制御を行うデバイス制御部と、
を含むことを特徴とするプログラム。
【請求項８】
請求項７において、
前記仮想管理情報作成部は、
前記第１〜第ｎのデバイスのいずれかの管理情報のブート情報を、前記仮想管理情報のブート情報にコピーして前記仮想管理情報を作成することを特徴とするプログラム。
【請求項９】
請求項７又は８において、
前記仮想管理情報作成部は、
前記第１〜第ｎのデバイスのうちの前記第１のデバイスのパーティション管理情報を、前記仮想管理情報の第１パーティション情報にコピーすることで前記仮想管理情報を作成することを特徴とするプログラム。
【請求項１０】
請求項９において、
前記仮想管理情報作成部は、
前記第１〜第ｎのデバイスのうちの前記第２〜第ｎのデバイスのパーティション管理情報に対して、パーティションのスタートアドレスをオフセットする処理を施し、その結果を、前記仮想管理情報の第２〜第ｎパーティション情報用いることを特徴とするプログラム。
【請求項１１】
請求項７乃至１０のいずれかにおいて、
前記デバイス制御部は、
指定された前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかに特定する処理と、前記物理アドレスを算出する処理とを行い、
前記論理アドレスに対応するデバイスが第ｋ（ｋは２以上ｎ以下）のデバイスである場合には、前記論理アドレスから第１〜第ｋ―１のデバイスのパーティションのサイズの合計に相当する値を減算することで、前記物理アドレスを算出することを特徴とするプログラム。
【請求項１２】
請求項１１において、
前記デバイス制御部は、
前記論理アドレスに対応するデバイスが第１のデバイスである場合には、前記論理アドレスを前記物理アドレスとして用いることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ制御システム及びプログラムに関する。
【背景技術】
【０００２】
ＵＳＢ規格の上位層のプロトコルの１つに、外部記憶装置をサポートするための規格としてＵＳＢマスストレージクラスが知られている。ＵＳＢマスストレージクラスでは複数のデバイスのそれぞれを、プロトコル上で個々のデバイスとして認識させる。このため、複数のデバイスを例えばＵＳＢマスストレージクラスで扱う場合は複数のデバイスの管理を行う必要があり、この管理に処理は煩雑であり、小型の電子機器では単一のデバイスしか扱えないものもある。
【０００３】
他の機器と通信にて情報を送受信する通信手段と、他の機器によってリモート制御可能にするベンダーユニークの宣言及び前記他の機器の記録手段として機能するストレージクラスの宣言のうちのいずれか一方を設定する設定手段とを備える構成が知られている（特許文献１参照）。
【特許文献１】特開２００１−１８６３９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような構成においては、機能するストレージクラスの宣言のうちのいずれか一方を設定する必要があり、例えば複数の記憶装置を同時に認識させることができない。
【０００５】
また、複数のデバイスを有する電子機器においては、プロトコル上で個々のデバイスとして認識させる場合には、ＵＳＢマスストレージクラス上において複雑なデータ制御処理を行わなければならなかった。
【０００６】
本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、複数のデバイスを認識させる場合において煩雑な処理を軽減し、小型の電子機器に対しても適用可能であるデータ制御システム及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明は、バスを介したデータ転送の対象となる第１〜第ｎ（ｎは２以上の整数）のデバイスと、前記第１〜第ｎのデバイスのパーティション管理情報から、前記第１〜第ｎのデバイスを１つのデバイスとして認識させるための仮想管理情報を作成する仮想管理情報作成部と、前記第１〜第ｎのデバイスが前記仮想管理情報に基づいて１つのデバイスとして認識され、前記１つのデバイスの論理アドレスを指定してリード又はライトのアクセスが要求された場合に、前記仮想管理情報及び前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかを指定するデバイス指定情報と前記論理アドレスに対応する物理アドレスを算出して、デバイスに対するアクセス制御を行うデバイス制御部と、を含むデータ制御システムに関する。
【０００８】
本発明によれば、複数のデバイスを外部機器等に単一のデバイスとして認識させることができるので、複雑な処理を必要としないで外部機器等からの複数のデバイスに対するアクセスを可能にする。
【０００９】
また、本発明では、前記仮想管理情報作成部は、前記第１〜第ｎのデバイスのいずれかの管理情報のブート情報を、前記仮想管理情報のブート情報にコピーして前記仮想管理情報を作成するようにしてもよい。
【００１０】
また、本発明では、前記仮想管理情報作成部は、前記第１〜第ｎのデバイスのうちの前記第１のデバイスのパーティション管理情報を、前記仮想管理情報の第１パーティション情報にコピーして前記仮想管理情報を作成するようにしてもよい。
【００１１】
これにより、第１のデバイスに対してアクセス制御する場合には、外部機器等からの論理アドレスをそのまま第１のデバイスの物理アドレスとして用いることができる。
【００１２】
また、本発明では、前記仮想管理情報作成部は、前記第１〜第ｎのデバイスのうちの前記第２〜第ｎのデバイスのパーティション管理情報に対して、パーティションのスタートアドレスをオフセットする処理を施し、その結果を、前記仮想管理情報の第２〜第ｎパーティション情報に用いるようにしてもよい。
【００１３】
これにより、複数のデバイスを１つのデバイスとして認識させるための仮想管理情報を作成することができる。
【００１４】
また、本発明では、前記デバイス制御部は、指定された前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかに特定する処理と、前記物理アドレスを算出する処理とを行い、前記論理アドレスに対応するデバイスが第ｋ（ｋは２以上ｎ以下）のデバイスである場合には、前記論理アドレスから第１〜第ｋ―１のデバイスのパーティションのサイズの合計に相当する値を減算することで、前記物理アドレスを算出するようにしてもよい。
【００１５】
これにより、外部機器は仮想管理情報１００における仮想アドレスを指定することによって、複数のデバイスのうちの任意のデバイスの物理アドレスにアクセスすることができる。
【００１６】
また、本発明では、前記デバイス制御部は、前記論理アドレスに対応するデバイスが第１のデバイスである場合には、前記論理アドレスを前記物理アドレスとして用いるようにしてもよい。
【００１７】
これにより、デバイス制御部の処理を単純化することができる。また、デバイス制御部の処理を軽減することができ、デバイス制御部の処理を行う処理部の負荷を軽減することができる。
【００１８】
また、本発明は、バスを介したデータ転送の対象となる第１〜第ｎ（ｎは２以上の整数）のデバイスのパーティション管理情報から、前記第１〜第ｎのデバイスを１つのデバイスとして認識させるための仮想管理情報を作成する仮想管理情報作成部と、前記第１〜第ｎのデバイスが前記仮想管理情報に基づいて１つのデバイスとして認識され、前記１つのデバイスの論理アドレスを指定してリード又はライトのアクセスが要求された場合に、前記仮想管理情報及び前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかを指定するデバイス指定情報と前記論理アドレスに対応する物理アドレスを算出して、デバイスに対するアクセス制御を行うデバイス制御部と、を含むプログラムに関する。
【００１９】
また、本発明では、前記仮想管理情報作成部は、前記第１〜第ｎのデバイスのいずれかの管理情報のブート情報を、前記仮想管理情報のブート情報にコピーして前記仮想管理情報を作成するようにしてもよい。
【００２０】
また、本発明では、前記仮想管理情報作成部は、前記第１〜第ｎのデバイスのうちの前記第１のデバイスのパーティション管理情報を、前記仮想管理情報の第１パーティション情報にコピーすることで前記仮想管理情報を作成するようにしてもよい。
【００２１】
また、本発明では、前記仮想管理情報作成部は、前記第１〜第ｎのデバイスのうちの前記第２〜第ｎのデバイスのパーティション管理情報に対して、パーティションのスタートアドレスをオフセットする処理を施し、その結果を、前記仮想管理情報の第２〜第ｎパーティション情報に用いるようにしてもよい。
【００２２】
また、本発明では、前記デバイス制御部は、指定された前記論理アドレスに基づいて、前記第１〜第ｎのデバイスのいずれかに特定する処理と、前記物理アドレスを算出する処理とを行い、前記論理アドレスに対応するデバイスが第ｋ（ｋは２以上ｎ以下）のデバイスである場合には、前記論理アドレスから第１〜第ｋ―１のデバイスのパーティションのサイズの合計に相当する値を減算することで、前記物理アドレスを算出するようにしてもよい。
【００２３】
また、本発明では、前記デバイス制御部は、前記論理アドレスに対応するデバイスが第１のデバイスである場合には、前記論理アドレスを前記物理アドレスとして用いるようにしてもよい。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の一実施形態について、図面を参照して説明する。なお、以下に説明する実施の形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また以下で説明される構成のすべてが本発明の必須構成要件であるとは限らない。なお、以下の図において同符号のものは同様の意味を表す。
【００２５】
１．構成
図１に本実施形態の情報処理システム及びこの情報処理システムが組み込まれる電子機器の構成例を示す。
【００２６】
パーソナルコンピュータＰＣと電子機器１０は、バス７０（例えばＵＳＢ（ＵＳＢ１．１、ＵＳＢ２．０等）などのシリアルバス等）を介して接続される。なお、電子機器１０としては、例えば携帯電話、携帯型オーディオ機器、携帯型映像機器、デジタルカメラ、デジタルビデオカメラ、携帯型情報端末、ＩＣレコーダ、或いは電子手帳などの種々の機器が考えられる。またシリアルバスを介して電子機器１０に接続されるデバイスは、パーソナルコンピュータＰＣに限定されず、ホスト機能を有する電子機器（プリンタ、ストレージデバイス等）であってもよい。また、シリアルバスは、ＵＳＢ以外のシリアルバス（例えばＩＥＥＥ１３９４）であってもよいし、多チャンネルのシリアルバスであってもよい。またシリアルバスの少なくとも一部が無線バスであってもよい。また、バス７０はシリアルバスでなくてもよく、パラレルバスでも良い
電子機器１０は、入力デバイス２０、表示デバイス３０、サウンドデバイス４０、メモリ５０、処理部６０、ストレージドライブ８０、シリアルインターフェース９０を含む。なお電子機器１０はこれらの一部を省略した構成であってもよい。例えばアプリケーションデバイスである入力デバイス２０、表示デバイス３０、サウンドデバイス４０のうちの一部を省略したり、他のアプリケーションデバイス（例えばＣＣＤなどの画像取り込みデバイス）を設けたりするようにしてもよい。またストレージ８２がメモリカードなどの取り外し可能な外部メディアである場合には電子機器１０はストレージ８２を含まない構成となる。
【００２７】
入力デバイス２０は、ユーザが種々の情報を入力するためのデバイスである。この入力デバイス２０としては例えば操作ボタン、操作キー、スイッチ、キーボード、或いはマウスなどがある。
【００２８】
表示デバイス３０は、ユーザに情報を表示するためのデバイスである。この表示デバイス３０としては、例えばＬＣＤ（液晶ディスプレイ）、或いは有機ＥＬディスプレイなどがある。
【００２９】
サウンドデバイス４０は、ユーザにサウンド（音声、音楽）を出力したり、サウンドを入力（録音）するためのデバイスである。このサウンドデバイス３０としは、例えばスピーカ、マイクなどがある。
【００３０】
メモリ５０は、プログラムを記憶したり、データを一時的に記憶するものであり、ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭ（電気的にデータの書き換えが可能な不揮発性メモリ）などである。また、本実施形態では、メモリ５０上にＲＡＭＤＩＳＫを構築してＲＡＭ上に仮想のファイルシステムを構築することができる。
【００３１】
処理部６０は、本実施形態の情報処理システムとして機能するものであり、電子機器１０の全体や各部の制御を行う。処理部６０による処理は、ＣＰＵ（プロセッサ）などのハードウェア回路とＣＰＵ上で動作するプログラム（ファームウェア）により実現でき、このプログラム（処理モジュール）は、例えばメモリ５０（ＲＯＭ、ＥＥＰＲＯＭ）に格納される。但し処理部６０が含むこれらの各部の一部又は全部を、専用のハードウェア回路（ＡＳＩＣ）により実現してもよい。
【００３２】
ストレージドライブ８０（ストレージインターフェース）は、ストレージ８２へのアクセス制御を行うものであり、ストレージ８２にアクセスして、ストレージ８２からデータを読み出したり、ストレージ８２にデータを書き込んだりするなどの制御を行う。ストレージ８２は、各種データ（画像データ、音データ）のファイルシステム８４（ＦＡＴ１２、ＦＡＴ１６、ＦＡＴ３２、ＮＴＦＳなどのファイルシステム）を記憶（記録）する。ストレージ８２としては、メモリカード（マルチメディアカード、メモリーカード）などの外部メディアや、ハードディスクなどの内蔵メディアがある。
【００３３】
また、図１にはストレージドライブ８０は１つしか図示されていないが、これに限定されない。複数のストレージドライブ８０が設けられても良い。
【００３４】
シリアルインターフェース９０は、シリアルバスを介したシリアル転送のためのインターフェースである。このシリアルインターフェース９０は、物理層回路であるトランシーバや、データ転送（パケット転送）を制御する転送コントローラや、転送データを一時的に記憶するバッファ（パケットバッファ）や、バッファへのアクセス制御を行うバッファコントローラなどを含むことができる。なお、パーソナルコンピュータＰＣと電子機器１０の接続はシリアルバス７０に限定されず、パラレルのバスでも良い。
【００３５】
処理部６０の仮想管理情報作成部６２は、図２に示すように例えばメモリ５０に構築されたＲＡＭディスクのＭＢＲ情報（Ｍａｓｔｅｒ  Ｂｏｏｔ  Ｒｅｃｏｒｄ、広義にはパーティション管理情報）と、ストレージドライブ８０に接続されたストレージ８２（例えば不揮発性メモリーカード等）のＭＢＲ情報から、複数のデバイスを１つのデバイスとして認識させるための仮想管理情報１００を作成する。これにより、メモリ５０に構築されたＲＡＭディスクとストレージ８２を１つのデバイスとしてパーソナルコンピュータＰＣ等に認識させることができる。即ち、複数デバイスをパーソナルコンピュータＰＣ等に認識させるために必要とした複雑な処理を省略することができる。
【００３６】
処理部６０のデバイス制御部６４は、仮想管理情報１００と外部機器等から指定される論理セクタ又は論理アドレス等に基づいて複数のデバイスから対応するデバイスを選択するためのデバイス指定情報を算出する。さらにデバイス制御部６４は、その対応するデバイスの物理セクタ又は物理アドレスを算出し、デバイス指定情報に対応するデバイスに対して、該物理セクタ又は物理アドレスを用いてアクセス制御を行う。
【００３７】
また、処理部６０では、図３に示す処理が実行される。メイン６０−１は複数のタスクの調停処理等を行い、その複数のタスクに、例えばＵＳＢ制御６０−２、ファイルシステム制御６０−３、表示制御６０−４、入力制御６０−５等があるが、これに限定されない。例えば表示の制御を行うタスクである表示制御６０−４や入力制御を行うタスクである入力制御６０−５が省略されても良い。ＵＳＢ制御６０−２は、ＵＳＢに対する制御を行うタスクである。
【００３８】
また、ファイルシステム制御６０−３は図４に示すように、メモリ５０やストレージドライブ８０に設定されたファイルシステムに対するアクセスを制御するタスクである。
【００３９】
２．仮想管理情報
図５は、仮想管理情報１００の論理アドレス空間を示す図である。仮想管理情報１００によって、パーソナルコンピュータＰＣ等の外部機器は複数のデバイス（例えばデバイス０としてＲＡＭディスク、デバイス１としてメモリーカード）を一つのデバイスとして認識する。従って、外部機器からは仮想管理情報１００による論理アドレスを指定することで、ＲＡＭディスク５０（以下、メモリ５０を説明の簡略化のためにＲＡＭディスク５０と呼ぶ）とメモリーカード８２（以下、ストレージ８２を説明の簡略化のためにメモリーカード８２と呼ぶ）のいずれかにアクセスする。
【００４０】
ここで、例えば、図５に示すように論理アドレス１０〜論理アドレス９９までがＲＡＭディスク５０に割り当てられ、論理アドレス１００以降がメモリーカード８２に割り当てられているとする。このとき、外部機器から例えば論理アドレス１００を指定する要求があった場合、処理部６０のファイルシステム制御６０−３は、仮想管理情報１００を参照して、論理アドレス１００がメモリーカード８２の物理アドレス１に対応するという情報を取得し、メモリーカード８２のファイルシステムにアクセスする制御を行う。
【００４１】
また、外部機器が論理アドレス１０を指定する要求があった場合、ファイルシステム制御６０−３は、仮想管理情報１００からＲＡＭディスク５０の物理アドレス１０を取得し、ＲＡＭディスクのファイルシステムにアクセスする制御を行う。
【００４２】
このように、複数のデバイスの物理アドレスを仮想管理情報１００に割り当てることで、外部機器は複数のデバイスに対して、１つのデバイスの論理アドレスを指定することでアクセスすることが可能である。
【００４３】
図６は、具体的な仮想管理情報１００の構成例を示す図である。図６は、例えば第１〜第４のデバイス（広義には第１〜第ｎのデバイス、ｎは２以上の整数）の４つのデバイスを１つのデバイスとして認識させるための仮想管理情報１００である。論理アドレス０００ｈから所定のサイズ（図６では４４６バイト）の領域にはＢｏｏｔＳｔｒａｐＬｏａｄｅｒ（広義にはブート情報）が設定される。この情報は、管理情報作成部６２によって、新たに設定するようにしても良いし、例えば４つのデバイスのいずれかのＭＢＲ情報のＢｏｏｔＳｔｒａｐＬｏａｄｅｒからコピーして設定されるようにしても良い。
【００４４】
論理アドレス１ＢＥｈから所定のサイズ（図６では１６バイト）の領域には、第１のパーティションテーブル（広義には管理情報）として、デバイス０（例えばＲＡＭディスク５０）の管理情報１０２が設定される。この管理情報１０２は、管理情報作成部６２によって、デバイス０のＭＢＲ情報からコピーして設定される。
【００４５】
論理アドレス１ＣＥｈから所定のサイズ（図６では１６バイト）の領域には、第２のパーティションテーブル（広義には管理情報）として、デバイス１（例えばメモリーカード８２）の管理情報１０４が設定される。この管理情報１０４は、管理情報作成部６２によって、デバイス１のＭＢＲ情報にオフセットが施されて設定される。
【００４６】
第３、第４のパーティションテーブル（広義には管理情報）においても、第２パーティションテーブルと同様に、対応するデバイスのＭＢＲ情報（例えば管理情報１０６及び１０８）に所定のオフセットが施されて設定される。
【００４７】
図７は、各管理情報１０２〜１０８の詳細を示す図である。各管理情報１０２〜１０８は例えば１６バイトで構成され、先頭から順に、ブートフラグＢＦ（例えば１バイト）、スタートアドレスＣＨＳ１（例えば３バイト）、パーティションタイプ（例えば１バイト）、エンドアドレスＣＨＳ２（例えば３バイト）、スタートアドレスＬＢＡ１（例えば４バイト）、エリアサイズＬＢＡ２（例えば４バイト）を含む。
【００４８】
ブートフラグＢＦはそのパーティション（管理情報に対応するデバイス）のブートのアクティブ、ノンアクティブを設定する情報である。スタートアドレスＣＨＳ１及びエンドアドレスＣＨＳ２はＣＨＳ（ＣｙｌｉｎｄｅｒＨｅａｄＳｅｃｔｏｒ）方式でのパーティション（管理情報に対応するデバイス）の仮想管理情報１００におけるスタートアドレス又はエンドアドレスを示す情報である。
【００４９】
スタートアドレスＬＢＡ１はパーティション（管理情報に対応するデバイス）の仮想管理情報１００における論理ブロックの開始アドレスを示す情報であり、エリアサイズＬＢＡ２はパーティション（管理情報に対応するデバイス）の仮想管理情報１００における論理ブロックのサイズを示す情報である。
【００５０】
なお、本実施形態では、ＣＨＳ方式及びＬＢＡ方式の両方に対応すべく、各管理情報１０２〜１０８が構成されている。
【００５１】
３．仮想管理情報作成部
図８は仮想管理情報１００の作成フローを示す図である。仮想管理情報作成部６２では、ステップＳ１に示すようにまずＲＡＭディスク５０（広義には第１のデバイス）のＭＢＲ情報（広義には管理情報）が取得される。そして、ステップＳ２に示すようにメモリーカード８２（広義には第２のデバイス）のＭＢＲ情報（広義には管理情報）が取得される。そして、ステップＳ３ではステップＳ１及びステップＳ２で取得されたＭＢＲ情報に基づいて仮想管理情報１００を作成する。
【００５２】
なお、ステップＳ１、ステップＳ２の順番は逆でも良い。
【００５３】
図９は、例えば、仮想管理情報作成部６２によって取得されたＭＢＲ情報のうち、ＬＢＡ方式のパーティション情報に基づいて仮想管理情報１００を作成した場合の仮想管理情報１００の一例を示す図である。図９に示すように、ＲＡＭディスク５０の物理セクタは、例えば１〜（ＲＡＭディスク５０のセクタ数−１）であり、メモリーカード８２の物理セクタは例えば１〜（メモリーカード８２のセクタ数−１）である。
【００５４】
なお、ＲＡＭディスク５０のセクタ数及びメモリーカード８２のセクタ数は、各ＭＢＲ情報から取得される数である。
【００５５】
仮想管理情報作成部６２は、ＲＡＭディスク５０及びメモリーカード８２のＭＢＲ情報を用いて仮想管理情報１００を作成する。仮想管理情報１００によって外部機器に単一のデバイスとして認識させるときの単一のデバイスを仮想デバイス１１０とする。仮想管理情報１００は仮想デバイス１１０のＭＢＲ情報に相当する。そして、仮想管理情報１００は仮想デバイス１１０の仮想セクタ０に対応する。
【００５６】
また、仮想管理情報作成部６２は、ＲＡＭディスク５０のＭＢＲ情報をコピーして仮想管理情報１００の第１のパーティションテーブル（広義には管理情報）として用いる。具体的には、仮想セクタ１がＲＡＭディスク５０の物理セクタ１に対応し、仮想セクタ（ＲＡＭディスク５０のセクタ数−１）がＲＡＭディスク５０の物理セクタ（ＲＡＭディスク５０のセクタ数−１）に対応する。
【００５７】
また、仮想管理情報作成部６２はメモリーカード８２のＭＢＲ情報にオフセットを施す処理を行い、その結果を用いて仮想管理情報１００の第２のパーティションテーブル（広義には管理情報）を作成する。具体的には、仮想セクタ（ＲＡＭディスク５０のセクタ数）がメモリーカード８２の物理セクタ１に対応し、仮想セクタ（ＲＡＭディスク５０のセクタ数＋メモリーカード８２のセクタ数−２）がメモリーカード８２の物理セクタ（メモリーカード８２のセクタ数−１）に対応する。ここで、仮想セクタ（ＲＡＭディスク５０のセクタ数）は、メモリーカード８２の物理セクタ１にオフセット（ＲＡＭディスク５０のセクタ数−１）が施されたものである。同様に、仮想セクタ（ＲＡＭディスク５０のセクタ数＋メモリーカード８２のセクタ数−２）は、メモリーカード８２の物理セクタ（メモリーカード８２のセクタ数−１）にオフセット（ＲＡＭディスク５０のセクタ数−１）が施されたものである。
【００５８】
４．アクセス制御
図１０は、外部機器から例えば図９に示すように設定された仮想デバイス１１０の論理セクタｘ（仮想セクタｘ）を指定する要求が送られた場合の各デバイスに対するアクセス制御のフローを示す図である。
【００５９】
まずステップＳ１１では、その論理セクタｘが０であるかどうかの判断が行われる。このとき、論理セクタｘが０である場合には、ステップ１２に示す処理が行われる。ステップ１２では、仮想管理情報１００として格納されているデータにアクセスする処理である。これにより、外部機器等は仮想管理情報１００の例えば第１〜第４のパーティションテーブル等の情報を取得することができる。また、外部機器等から仮想管理情報１００を書き換えることができるようにしても良い。
【００６０】
一方、論理セクタｘが０でない場合には、ステップ１３の処理が行われる。ステップ１３では、論理セクタｘとＲＡＭディスク５０のセクタ数との大小比較が行われる。そして、論理セクタｘがＲＡＭディスク５０のセクタ数よりも小さい場合には、ステップ１４に示すようにＲＡＭディスク５０上の物理セクタｘにアクセスする処理が行われる。この場合、論理セクタｘの値がそのまま物理セクタｘとして用いられる。
【００６１】
また、ステップ１３において論理セクタｘがＲＡＭディスク５０のセクタ数よりも大きい場合は、ステップ１５に示すように論理セクタｘとＲＡＭディスク５０のセクタ数からメモリーカード８２上の物理セクタを算出する処理と、メモリーカード８２上の算出された物理セクタにアクセスする処理が行われる。具体的には、ステップ１５では、論理セクタｘ−（ＲＡＭディスク５０のセクタ数）＋１が、メモリーカード８２上の物理セクタとして算出され、メモリーカード８２上の物理セクタ（論理セクタｘ−（ＲＡＭディスク５０のセクタ数）＋１）にアクセスする処理が行われる。
【００６２】
上記のような処理によってＲＡＭディスク５０やメモリーカード８２にアクセスすることができる。なお、図１０に示すアクセス制御の処理は、処理部６０のデバイス制御部６４で行われる。デバイス制御部６４は、例えば図３のファイルシステム制御６０−３に組み込まれても良いし、別途アクセス制御を行うモジュールとして設けても良い。
【００６３】
５．比較例との対比と効果
図１１は、複数のデバイスを複数のデバイスとして外部機器（例えばパーソナルコンピュータＰＣ）に認識させる比較例の電子機器１１を示す図である。
【００６４】
比較例の場合、複数のデバイスを外部機器に認識させるために、複雑な処理を伴うファームウェア及びそれを処理する処理装置（例えばＣＰＵ等）が必要である。そのため、電子機器１１の回路規模も大きくなり、例えば携帯電子機器などの小型電子機器に搭載することが難しい。
【００６５】
さらに、図１１のように例えば２つのデバイスを外部機器に認識させるため、外部機器からどちらのデバイスにアクセスがあるか等の調停処理も複雑になり、さらに外部機器とのインターフェースの転送速度が高速になれば、電子機器１１での処理装置の処理速度も高速なものが要求される。例えば、パーソナルコンピュータＰＣに接続させるようなカードリーダー等ならば、電子機器１１のコストを多少犠牲にしても高機能な電子機器１１として製品化することが可能である。
【００６６】
しかしながら、小型電子機器に電子機器１１を搭載させることは、回路規模の大きさ、高速な処理による消費電力等の課題があり、事実上困難である。その場合には、電子機器１１のファームウェアを簡素化して、２つのデバイスのうち、どちらか一方を選択して外部機器に認識させる方法が考えられる。これならば電子機器１１の処理装置の能力を下げることも可能であり、小型電子機器に搭載することも可能となる。但し、この方法では、認識させたいデバイスを何らかの方法で切り替える必要があり、不便である。
【００６７】
これらに対して、本願では、例えば図１に示すように仮想管理情報１００を用いることによって、複数デバイスを単一のデバイスとして外部機器に認識させることができるため、結果として複数のデバイスを外部機器に認識させることができる。
【００６８】
本願の実施形態では、仮想管理情報１００を作成する仮想管理情報作成部６２（例えばファームウェア）を電子機器１０に実装するだけで、上記のような複数のデバイスの認識を可能にする。仮想管理情報作成部６２の処理は、ファームウェア的にみても非常に軽い処理であるため、比較例の電子機器１１に比べて、格段に軽いファームウェアを電子機器１０に適用できる。このため、処理部６０に必要な処理装置に要求される能力も低減され、回路規模縮小及び消費電力の低減が可能となる。
【００６９】
さらに、一度仮想管理情報１００を作成すれば、ストレージ８２の変更（記憶メディアの交換等）があるまで仮想管理情報作成部６２は仮想管理情報１００を作成しなくても良い。この点においても、電子機器１１に比べて、実施形態の電子機器１０は低消費電力化に有利である。
【００７０】
また、本実施形態では、電子機器１０に複数のデバイスが実装された場合、仮想管理情報１００のパーティションをデバイスの数だけ作成することで、容易に複数のデバイスを外部機器に認識させることができる。即ち、制御上のファームウェアの設計が簡単になり、設計コストの削減も可能である。
【００７１】
また、デバイスの数が増えれば、比較例のような構成では、さらにファームウェアが複雑化する。ファームウェアが複雑化すれば、処理装置に要求される処理能力も増大し、小型電子機器に搭載する点においても非常に不利である。
【００７２】
しかしながら、本願では容易にデバイスの数に対応できるため、デバイスの数が増えても、ファームウェアは比較例に比べて非常に軽いため、処理装置に要求される処理能力もそれほど増大しない。即ち、デバイスの数が増える場合においても、本実施形態は処理装置による回路規模増大及び消費電力増大を低減できるので、比較例よりも小型電子機器に搭載する点において有利である。
【００７３】
上記のように、本発明の実施例について詳細に説明したが、本発明の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。したがって、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書または図面において、少なくとも一度、より広義又は同義な異なる用語と共に記載された用語は、明細書または図面のいかなる箇所においても、その異なる用語に置き換えることができる。
【図面の簡単な説明】
【００７４】
【図１】本実施形態に係る電子機器の構成例。
【図２】本実施形態に係る電子機器と外部機器との接続を示す図。
【図３】本実施形態に係る処理部で処理されるタスクの構成例。
【図４】ファイルシステム制御の構成例。
【図５】本実施形態に係る仮想管理情報による論理アドレスの構成例。
【図６】本実施形態に係る仮想管理情報の構成例。
【図７】本実施形態に係る仮想管理情報の一部の詳細の一例を示す図。
【図８】本実施形態に係る仮想管理情報の作成フローの一例を示す図。
【図９】本実施形態に係る仮想管理情報と各デバイスとの対応例を示す図。
【図１０】本実施形態に係るデバイス制御部の処理の一例を示す図。
【図１１】本実施形態に係る比較例の電子機器を示す図。
【符号の説明】
【００７５】
１０  電子機器、５０  ＲＡＭディスク、６２  仮想管理情報作成部、
６４  デバイス制御部、８２  メモリーカード、１００  仮想管理情報
【図１】
2006338350.tif 000003
【図２】
2006338350.tif 000004
【図３】
2006338350.tif 000005
【図４】
2006338350.tif 000006
【図５】
2006338350.tif 000007
【図６】
2006338350.tif 000008
【図７】
2006338350.tif 000009
【図８】
2006338350.tif 000010
【図９】
2006338350.tif 000011
【図１０】
2006338350.tif 000012
【図１１】
2006338350.tif 000013