(57)【要約】【課題】特別なファイルシステム等を必要とすることなく、エミュレーション対象の記憶媒体の交換等を簡単に行うことを可能としたエミュレーションシステムを提供する。【解決手段】ＬＢＡ対応表作成部２０３は、ＦＤイメージ領域２７ｂについて、コピー元であるフロッピィディスク（Ｒ）上でのアドレス情報をＳＤメモリカード（Ｒ）上でのアドレス情報に変換するためのＬＢＡ対応表２０７を作成する。ＦＤアクセス制御部２０４は、エミュレートするフロッピィディスク（Ｒ）へのアクセスが要求されると、ＬＢＡ対応表２０７に基づきＳＤメモリカード（Ｒ）へのアクセスを代替実行する。ＦＤ交換エミュレート部２０６は、ＨＤアクセス制御部２０５によってＦＤイメージＳＤ領域２７ｂへの更新・削除を伴うアクセスを監視し、アクセスが行われたら、あたかもフロッピィディスク（Ｒ）が交換されたように見せ掛けるためのエミュレートを実行する。【選択図】      図２
2005182615.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶媒体を収納するスロットを有し、ファイル管理をオペレーティングシステムによって実行する電子機器のエミュレーションシステムであって、
前記スロットに収納された前記第１の記憶媒体のファイルシステムを解析して、前記第１の記憶媒体とは種類の異なる第２の記憶媒体の内容を複製したイメージファイルが前記第１の記憶媒体に記憶されているか否かを判定する判定手段と、
前記イメージファイルが記憶されている場合、このイメージファイル内の前記第１の記憶媒体上でのアドレス情報と前記第２の記憶媒体上でのアドレス情報とを対応づけるアドレス対応表を作成する対応表作成手段と、
前記アドレス対応表に基づき、前記オペレーティングシステムから渡される前記第２の記憶媒体上でのアドレス情報を前記第１の記憶媒体上でのアドレス情報に変換し、前記第２の記憶媒体に対するアクセスを前記イメージファイルに対するアクセスによって代替実行するエミュレート手段と
を具備することを特徴とするエミュレーションシステム。
【請求項２】
前記判定手段は、予め定められた命名規則に従ったファイルが存在するか否かによって前記イメージファイルが前記第１の記憶媒体に記憶されているか否かを判定することを特徴とする請求項１記載のエミュレーションシステム。
【請求項３】
前記対応表作成手段は、ＣＨＳ（Cylinder,Head,Sector）形式からＬＢＡ（Logical Block Address）形式に変換した前記第２の記憶媒体のアドレス情報を、ＬＢＡ形式の前記第１の記憶媒体のアドレス情報と対応づけるためのアドレス対応表を作成することを特徴とする請求項１記載のエミュレーションシステム。
【請求項４】
前記第１の記憶媒体に対するアクセスによって前記イメージファイルが書き換えられた場合、前記対応表作成手段に前記アドレス対応表を再作成させることにより前記第２の記憶媒体が交換された状況を仮想的に作り出すメディア交換エミュレート手段をさらに具備することを特徴とする請求項１記載のエミュレーションシステム。
【請求項５】
前記メディア交換エミュレート手段は、前記第１の記憶媒体に対するアクセスによって前記イメージファイルが削除された場合、前記エミュレート手段にその後の前記第２の記憶媒体に対するアクセスについてメディア未収納のエラーを返答させることにより前記第２の記憶媒体が取り外された状況を仮想的に作り出すことを特徴とする請求項４記載のエミュレーションシステム。
【請求項６】
前記メディア交換エミュレート手段は、前記イメージファイルの削除に伴って前記第２の記憶媒体が取り外された状況を仮想的に作り出した後、前記第１の記憶媒体に対するアクセスによって前記イメージファイルが新たに書き込まれた場合、前記対応表作成手段に前記アドレス対応表を再作成させることにより前記第２の記憶媒体が新たに収納された状況を仮想的に作り出すことを特徴とする請求項４記載のエミュレーションシステム。
【請求項７】
第１の記憶媒体を収納するスロットを有し、ファイル管理をオペレーティングシステムによって実行する電子機器のエミュレーションシステムであって、
前記スロットに格納された前記第１の記憶媒体を、前記第１の記憶媒体とは種類の異なる第２の記憶媒体として前記オペレーティングシステムに認識させる第１のエミュレート手段と、
前記スロットに格納された第１の記憶媒体のファイルシステムを解析して、前記第１の記憶媒体および前記第２の記憶媒体とは種類の異なる第３の記憶媒体の内容を複製したイメージファイルが前記第１の記憶媒体に記憶されているか否かを判定する判定手段と、
前記イメージファイルが記憶されている場合、このイメージファイル内の前記第１の記憶媒体上でのアドレス情報と前記第３の記憶媒体上でのアドレス情報とを対応づけるアドレス対応表を作成する対応表作成手段と、
前記アドレス対応表に基づき、前記オペレーティングシステムから渡される前記第３の記憶媒体上でのアドレス情報を前記第１の記憶媒体上でのアドレス情報に変換し、前記第３の記憶媒体に対するアクセスを前記イメージファイルに対するアクセスによって代替実行する第２のエミュレート手段と
を具備することを特徴とするエミュレーションシステム。
【請求項８】
前記第１のエミュレート手段は、前記第１の記憶媒体を着脱型の前記第２の記憶媒体として前記オペレーティングシステムに認識させることを特徴とする請求項７記載のエミュレーションシステム。
【請求項９】
前記第１のエミュレート手段は、前記オペレーティングシステムで取り扱うことのできない前記第１の記憶媒体を前記オペレーティングシステムで取り扱い可能な前記第２の記憶媒体として前記オペレーティングシステムに認識させることを特徴とする請求項７記載のエミュレーションシステム。
【請求項１０】
前記判定手段は、予め定められた命名規則に従ったファイルが存在するか否かによって前記イメージファイルが前記第１の記憶媒体に記憶されているか否かを判定することを特徴とする請求項７記載のエミュレーションシステム。
【請求項１１】
前記対応表作成手段は、ＣＨＳ形式からＬＢＡ形式に変換した前記第３の記憶媒体のアドレス情報を、ＬＢＡ形式の前記第１の記憶媒体のアドレス情報と対応づけるためのアドレス対応表を作成することを特徴とする請求項７記載のエミュレーションシステム。
【請求項１２】
前記第２の記憶媒体に対するアクセスによって前記イメージファイルが書き換えられた場合、前記対応表作成手段に前記アドレス対応表を再作成させることにより前記第３の記憶媒体が交換された状況を仮想的に作り出すメディア交換エミュレート手段をさらに具備することを特徴とする請求項７記載のエミュレーションシステム。
【請求項１３】
前記メディア交換エミュレート手段は、前記第２の記憶媒体に対するアクセスによって前記イメージファイルが削除された場合、前記エミュレート手段にその後の前記第３の記憶媒体に対するアクセスについてメディア未収納のエラーを返答させることにより前記第３の記憶媒体が取り外された状況を仮想的に作り出すことを特徴とする請求項１２記載のエミュレーションシステム。
【請求項１４】
前記メディア交換エミュレート手段は、前記イメージファイルの削除に伴って前記第３の記憶媒体が取り外された状況を仮想的に作り出した後、前記第２の記憶媒体に対するアクセスにより前記イメージファイルが新たに書き込まれた場合、前記対応表作成手段に前記アドレス対応表を再作成させることにより前記第３の記憶媒体が新たに収納された状況を仮想的に作り出すことを特徴とする請求項１３記載のエミュレーションシステム。
【請求項１５】
第１の記憶媒体を収納するスロットを有し、ファイル管理をオペレーティングシステムによって実行する電子機器のエミュレーション方法であって、
前記スロットに収納された前記第１の記憶媒体のファイルシステムを解析して、前記第１の記憶媒体とは種類の異なる第２の記憶媒体の内容を複製したイメージファイルが前記第１の記憶媒体に記憶されているか否かを判定するステップと、
前記イメージファイルが記憶されている場合、このイメージファイル内の前記第１の記憶媒体上でのアドレス情報と前記第２の記憶媒体上でのアドレス情報とを対応づけるアドレス対応表を作成するステップと、
前記アドレス対応表に基づき、前記オペレーティングシステムから渡される前記第２の記憶媒体上でのアドレス情報を前記第１の記憶媒体上でのアドレス情報に変換し、前記第２の記憶媒体に対するアクセスを前記イメージファイルに対するアクセスによって代替実行するステップと
を具備することを特徴とするエミュレーション方法。
【請求項１６】
前記第１の記憶媒体に対するアクセスによって前記イメージファイルが書き換えられた場合、前記アドレス対応表を再作成することにより前記第２の記憶媒体が交換された状況を仮想的に作り出すステップをさらに具備することを特徴とする請求項１５記載のエミュレーション方法。
【請求項１７】
前記第１の記憶媒体に対するアクセスによって前記イメージファイルが削除された場合、その後の前記第２の記憶媒体に対するアクセスについてメディア未収納のエラーを返答することにより前記第２の記憶媒体が取り外された状況を仮想的に作り出すステップをさらに具備することを特徴とする請求項１６記載のエミュレーション方法。
【請求項１８】
前記イメージファイルの削除に伴って前記第２の記憶媒体が取り外された状況を仮想的に作り出した後、前記第１の記憶媒体に対するアクセスによって前記イメージファイルが新たに書き込まれた場合、前記アドレス対応表を再作成することにより前記第２の記憶媒体が新たに収納された状況を仮想的に作り出すステップをさらに具備することを特徴とする請求項１７記載のエミュレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばＳＤ（Secure Digital）メモリカード（Ｒ）に対するアクセスをフロッピィディスク（Ｒ）に対するアクセス手順で実行可能な環境を仮想的に構築するエミュレーション技術に関する。
【背景技術】
【０００２】
近年の半導体製造技術の向上に伴い、例えばＰＤＡ（Personal Digital Assistant）やデジタルカメラなどに装着される半導体メモリの小型化・大容量化が進んできている。例えばＳＤメモリカード（Ｒ）は、一辺が２〜３ｃｍのサイズで数１０〜数１００Ｍバイトの記憶容量を有している。そのため、最近では、フロッピィディスク（Ｒ）に代えて、このＳＤメモリカード（Ｒ）に代表される半導体メモリを収納するためのスロットを標準装備するパーソナルコンピュータも増加してきている。
【０００３】
その一方で、フロッピィディスク（Ｒ）上に構築済みの動作環境等を継続して利用したいという要望も根強い。このようなことから、ある記憶媒体の記憶領域の一部または全部をそれとは種類の異なる記憶媒体として取り扱い可能とするためのいわゆるエミュレーション機能が種々提案されている（例えば特許文献１、特許文献２参照）。
【０００４】
この種のエミュレーション機能を活用すれば、例えばＳＤメモリカード（Ｒ）内にフロッピィディスク（Ｒ）用の領域を確保し、その領域に所望のフロッピィディスク（Ｒ）の内容を複製することにより、ＳＤメモリカード（Ｒ）用のスロットのみでフロッピィディスク（Ｒ）用のスロットが装備されていなくとも、フロッピィディスク（Ｒ）上に構築済みの動作環境等を継続して利用することが可能となる。
【特許文献１】特開平５−２８９８５４号公報
【特許文献２】特開２００１−２９０６０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、この特許文献１や特許文献２等を含む従前のエミュレーション機能では、いずれもオペレーティングシステム等の上位システムからはアクセス不可能な領域にエミュレーション対象の記憶媒体用の領域を固定的に確保する。これは、エミュレーション対象の記憶媒体の内容が不注意で書き換えられるのを確実に防止する反面、その内容をユーザが意図的に書き換えるのが困難である。従って、例えばＳＤメモリカード（Ｒ）の記憶領域の一部を用いてフロッピィディスク（Ｒ）をエミュレートした場合、そのフロッピィディスク（Ｒ）の交換等を行うのは非常に難しい。
【０００６】
また、例えばＳＤメモリカード（Ｒ）のパーティションテーブルを操作してフロッピィディスク（Ｒ）用の領域を確保する等、ファイルシステムの規格から外れるような特殊な加工を施すので、このＳＤメモリカード（Ｒ）をデジタルカメラや携帯電話機といった組み込み機器での通常利用に供することができなくなるおそれもある。
【０００７】
この発明は、このような事情を考慮してなされたものであり、特別なファイルシステム等を必要とすることなく、エミュレーション対象の記憶媒体の交換等を簡単に行うことを可能としたエミュレーションシステムおよびエミュレーション方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
この目的を達成するために、本発明は、第１の記憶媒体を収納するスロットを有し、ファイル管理をオペレーティングシステムによって実行する電子機器のエミュレーションシステムであって、前記スロットに収納された前記第１の記憶媒体のファイルシステムを解析して、前記第１の記憶媒体とは種類の異なる第２の記憶媒体の内容を複製したイメージファイルが前記第１の記憶媒体に記憶されているか否かを判定する判定手段と、前記イメージファイルが記憶されている場合、このイメージファイル内の前記第１の記憶媒体上でのアドレス情報と前記第２の記憶媒体上でのアドレス情報とを対応づけるアドレス対応表を作成する対応表作成手段と、前記アドレス対応表に基づき、前記オペレーティングシステムから渡される前記第２の記憶媒体上でのアドレス情報を前記第１の記憶媒体上でのアドレス情報に変換し、前記第２の記憶媒体に対するアクセスを前記イメージファイルに対するアクセスによって代替実行するエミュレート手段とを具備することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、特別なファイルシステム等を必要とすることなく、エミュレーション対象の記憶媒体の交換等を簡単に行うことを可能としたエミュレーションシステムおよびエミュレーション方法を提供することができる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照してこの発明の実施形態について説明する。
【００１１】
図１は、本実施形態の電子機器の概略構成を示す図である。この電子機器は、例えばポータブル型のパーソナルコンピュータであり、図１に示すように、ＣＰＵ１１、ノースブリッジ（ＮＢ）１２、システムメモリ１３、ＬＣＤ（Liquid Crystal Display）１４、サウスブリッジ（ＳＢ）１５、ＢＩＯＳ（Basic Input/Output System）−ＲＯＭ１６、キーボードコントローラ（ＫＢＣ）１７、キーボード（ＫＢ）１８、タッチＰＡＤ１９、ハードディスク装置（ＨＤＤ）２０、ＳＤ（Secure Digital）カードコントローラ２１およびＳＤカードスロット２２などを備えている。
【００１２】
ＣＰＵ１１は、この電子機器の中核を担う装置であり、システムメモリ１３に格納されたオペレーティングシステムを含む各種プログラムやＢＩＯＳ−ＲＯＭ１６に格納されたシステムＢＩＯＳを実行して各部を駆動制御する。ＮＢ１２は、ＣＰＵ１１から導出されるＣＰＵローカルバスとＰＣＩバスとを相互に接続するための中継装置である。このＮＢ１２は、いわゆるメモリコントローラ２３やディスプレイコントローラ２４としての機能を併せ持っており、システムメモリ１３に対するデータアクセスを制御するとともに、ＣＰＵ１１が作成した画像データをＬＣＤ１４へ表示制御する。
【００１３】
ＳＢ１５もＮＢ１２と同様の中継機能を有する装置であり、ＢＩＯＳ−ＲＯＭ１６、ＫＢＣ１７、ＨＤＤ２０等をＰＣＩバスに接続する。このＳＢ１５は、いわゆるＵＳＢコントローラ２５としての機能を併せ持っており、ＵＳＢコネクタを介して例えばフロッピィディスク（Ｒ）装置（ＦＤＤ）２６などを必要に応じて接続することができる。
【００１４】
ＢＩＯＳ−ＲＯＭ１６は、例えばＨＤＤ２０などのハードウェアである周辺装置をソフトウェアであるオペレーティングシステム等が駆動するためのシステムＢＩＯＳを格納する記憶媒体であり、バーションアップ等に伴う書き換えが可能なようにＥ２ＰＲＯＭ等で構成される。なお、以下では、このＢＩＯＳ−ＲＯＭ１６に格納されたシステムＢＩＯＳ自体をＢＩＯＳ１６と記する場合がある。
【００１５】
また、ＳＤカードコントローラ２１は、ＳＤカードスロット２２に収納されたＳＤメモリカード２７に対するデータアクセスを制御する。つまり、この電子機器では、主記憶であるシステムメモリ１３と外部記憶であるＨＤＤ２０とを内蔵するほか、このＳＤメモリカード２７や前述のＦＤＤ２６をさらに外部記憶として追加することができる。
【００１６】
なお、ＫＢＣ１７は、ＫＢ１８やタッチＰＡＤ１９の操作を内蔵レジスタを介してＣＰＵ１１に伝達する装置であり、ＨＤＤ２０は、システムメモリ１３の補助装置として各種プログラムおよび各種データを格納する大容量の記憶媒体である。
【００１７】
図２は、この電子機器のエミュレーション制御に関わる機能ブロックを示す図である。
【００１８】
この電子機器上で動作するアプリケーションプログラム１０１は、オペレーティングシステム１００を介してＨＤＤ２０などに対するデータアクセスを実行する。一方、オペレーティングシステム１００は、アプリケーションプログラム１０１からデータアクセスを要求されると、その実処理をＢＩＯＳ１６に依頼し、受け取った結果をアプリケーションプログラム１０１に返却する。ここでは、オペレーティングシステム１００として、例えば米マイクロソフト社のＭＳ−ＤＯＳ（Ｒ）を想定する。
【００１９】
ＭＳ−ＤＯＳ（Ｒ）は、機能は限定的であるものの、文書作成ソフトウェアや表計算ソフトウェアなどを利用するには十分な機能を有するオペレーティングシステムであり、小規模のシステム構成をもつ例えば廉価モデルのポータブルコンピュータ等に好適なオペレーティングシステムである。また、このＭＳ−ＤＯＳ（Ｒ）の動作環境は、フロッピィディスク（Ｒ）上に構築することも可能である。つまり、長年使い慣れた動作環境がフロッピィディスク（Ｒ）上に構築済みである場合も少なくない。そこで、本実施形態の電子機器では、まず、第１に、ＵＳＢコネクタを介して外付けする必要のあるＦＤＤ２６をその都度用いなくとも、取り扱い容易なＳＤメモリカード（Ｒ）上にそのフロッピィディスク（Ｒ）のイメージをコピーして、そのＳＤメモリカード（Ｒ）上のイメージをあたかもフロッピィディスク（Ｒ）のように取り扱い可能とするエミュレーションを実現する。
【００２０】
また、このＭＳ−ＤＯＳ（Ｒ）では、ＳＤメモリカード（Ｒ）の取り扱いがサポートされていない。そこで、本実施形態の電子機器では、第２に、このＳＤメモリカード（Ｒ）全体をあたかも（ＭＳ−ＤＯＳ（Ｒ）で利用可能な）磁気ディスクのように取り扱い可能とするエミュレーションを同時に実現する。
【００２１】
ＦＤイメージ作成ユーティリティプログラム１０２は、フロッピィディスク（Ｒ）のイメージを簡単な操作でＳＤメモリカード（Ｒ）にコピーするために提供されるツールプログラムである。ユーザは、あるフロッピィディスク（Ｒ）のイメージをＳＤメモリカード（Ｒ）にコピーしようとした場合、そのフロッピィディスク（Ｒ）をＵＳＢコネクタを介して外付けされたＦＤＤ２６にセットすると共に、ＳＤメモリカード（Ｒ）をＳＤカードスロット２２にセットし、ＦＤイメージ作成ユーティリティプログラム１０２の画面表示に沿って一連の操作を実施する。そして、この時、ＦＤイメージ作成ユーティリティプログラム１０２は、フロッピィディスク（Ｒ）の内容を複製したイメージファイルを予め定められたネーミングルールに従ったファイル名で（磁気ディスクとみなす）ＳＤメモリカード（Ｒ）上に書き込む。つまり、このイメージファイルは、通常のファイルと同様の形式でＳＤメモリカード（Ｒ）上の正規のデータ記憶領域に格納されることになる。
【００２２】
なお、このイメージファイルの作成は、必ずしもＦＤイメージ作成ユーティリティプログラム１０２を用いなければならないものではなく、予め定められたネーミングルールに従ったファイル名でイメージファイルを作成する知識をもったユーザ等であれば、例えばオペレーティングシステム１００で用意されたコマンドによっても構わない。また、このイメージファイルの作成は、例えばデスクトップＰＣ等のその他の電子機器上で実施しても良い。この場合、ＦＤＤ２６やＦＤイメージ作成ユーティリティプログラム１０２は当該電子機器では不要となる。
【００２３】
前述の２つのエミュレーションは、いずれもＢＩＯＳ１６のＦＤ・ＨＤエミュレート部２００（エミュレーションシステム）によって実現される。その実現のため、ＦＤ・ＨＤエミュレート部２００は、メディア有無チェック部２０１、ＦＤイメージ有無チェック部２０２、ＬＢＡ対応表作成部２０３、ＦＤアクセス制御部２０４、ＨＤアクセス制御部２０５およびＦＤ交換エミュレート部２０６の各処理部と、ＬＢＡ対応表２０７のデータ部とを有している。
【００２４】
電子機器本体の電源オン時、メディア有無チェック部２０１は、ＳＤカードスロット２２にＳＤメモリカード（Ｒ）２７が収納されているかどうかを調べる。このＳＤメモリカード（Ｒ）は、磁気ディスクと同様、いわゆるパーティション情報をもつ不揮発性の記憶媒体であり、かつ、その規格上、ＢＩＯＳ１６で処理可能なＦＡＴ（File Allocation Table）１２またはＦＡＴ１６がファイルシステムとして採用されている。従って、ＳＤメモリカード（Ｒ）２７が収納されている場合、メディア有無チェック部２０１により、このファイルシステムの内容を磁気ディスクのものとしてオペレーティングシステムに転送するだけで、ＳＤメモリカード（Ｒ）２７を磁気ディスクに見せ掛けることができる。ここでは、この磁気ディスクに見せ掛けたＳＤメモリカード（Ｒ）２７上のデータ記憶領域をＨＤエミュレーション領域２７ａと称することにする。
【００２５】
なお、この時、メディア有無チェック部２０１は、ＳＤカードスロット２２のファイルシステムが正規にサポートされたものかどうかを調べ、正規にサポートされたものでなければ、ＳＤメモリカード（Ｒ）２７は収納されていないものとする。
【００２６】
また、ＳＤメモリカード（Ｒ）２７が収納されている場合は、ＦＤイメージ有無チェック部２０２が、そのＳＤメモリカード（Ｒ）２７のファイルシステムを解析して、ＦＤイメージ作成ユーティリティプログラム１０２により書き込まれる（予め定められたネーミングルールに従ったファイル名の）イメージファイルがＳＤメモリカード（Ｒ）２７上に存在するかどうかを調べる。
【００２７】
図３には、ＳＤメモリカード（Ｒ）２７の論理構成が示されている。ＦＤイメージ有無チェック部２０２は、まず、ＭＢＲ（Master Boot Record）内のパーティションテーブルからＤＢＲ（DOS Boot Record）のＬＢＡ（Logical Block Address）を求める。ＦＡＴファイルシステムでは、大きくＤＢＲ、ＦＡＴ、ＤＩＲ（Directory entry）、ＤＡＴＡの４つの領域に分けられており、ＦＡＴには、各ファイルがどのクラスタに格納されているのかを示すリンク情報が格納され、また、ＤＩＲには、各ファイルのファイル名、ファイルサイズ、ファイル属性、先頭クラスタ番号などの情報が格納されている。そこで、ＦＤイメージ有無チェック部２０２は、このＬＢＡを求めた各ＤＢＲに対応するＤＩＲを順次参照していくことにより、（予め定められたネーミングルールに従ったファイル名の）イメージファイルを検索して、その存在有無を判定する。また、ＦＤイメージ有無チェック部２０２は、イメージファイルを検出した場合、ＤＩＲのファイルサイズ情報からこのイメージファイルの元となったフロッピィディスク（Ｒ）の種類（１．４４Ｍバイト：５１２バイト／セクタ、７２０Ｋバイト：５１２バイト／セクタ等）の判定も行う。
【００２８】
もし、イメージファイルがＳＤメモリカード（Ｒ）２７上に存在したら、ＦＤイメージ有無チェック部２０２は、その旨をＬＢＡ対応表作成部２０３に通知すると共に、そのイメージファイル内にコピーされたフロッピィディスク（Ｒ）のファイルシステムの内容をフロッピィディスク（Ｒ）のものとしてオペレーティングシステム１００に転送する。これにより、このフロッピィディスク（Ｒ）があたかも存在するように見せ掛けることができる。ここでは、このイメージファイルが格納されるＳＤメモリカード（Ｒ）２７上のデータ記憶領域をＦＤイメージ領域２７ｂと称することにする。なお、このイメージファイルは、前述したように、オペレーティングシステム１００からはＨＤエミュレーション領域２７ａ内の１ファイルとしても併せて認識されている。
【００２９】
一方、このＦＤイメージ有無チェック部２０２からイメージファイルが存在する旨を通知されたＬＢＡ対応表作成部２０３は、ＦＤイメージ有無チェック部２０２により検出されたイメージファイル内にコピーされたフロッピィディスク（Ｒ）のファイルシステムとＳＤメモリカード（Ｒ）２７のファイルシステムとの両方を参照しながら、フロッピィディスク（Ｒ）のファイルシステムで指し示すＦＤイメージ領域２７ｂ内のアドレス情報をＳＤメモリカード（Ｒ）２７のファイルシステムで指し示すＦＤイメージ領域２７ｂ内のアドレス情報に変換するためのＬＢＡ対応表２０７を作成する。ここでは、フロッピィディスク（Ｒ）に対するアクセスをＳＤメモリカード（Ｒ）に対するアクセスで代替実行するので、ＣＨＳ（Cylinder, Head, Sector）形式で表現されるフロッピィディスク（Ｒ）上でのアドレス情報（ＦＤ−ＣＨＳ）をＬＢＡ形式で表現されるアドレス情報（ＦＤ−ＬＢＡ）に変換した後、この変換後のアドレス情報をＳＤメモリカード（Ｒ）上でのアドレス情報（ＳＤ−ＬＢＡ）に変換する。
【００３０】
ＦＤ−ＣＨＳからＦＤ−ＬＢＡへの変換は、規則的であり、計算によって比較的簡単に行うことができる。一方、ＦＤ−ＬＢＡからＳＤ−ＬＢＡへの変換は、フロッピィディスク（Ｒ）のイメージファイルがＳＤメモリカード（Ｒ）２７上に不連続に配置される場合を考慮して、テーブル（ＬＢＡ対応表２０７）を用いて実行する。換言すれば、このテーブルを用いた変換を行うことにより、フロッピィディスク（Ｒ）のイメージファイルを断片化された状態で配置することが許容される。
【００３１】
図４には、ＬＢＡ対応表２０７の一例が示されている。図４に示すように、このＬＢＡ対応表２０７によって、フロッピィディスク（Ｒ）のアドレス情報（ＦＤ−ＬＢＡ：表の左列）は、ＳＤメモリカード（Ｒ）２７のＦＤイメージ領域２７ｂ内のアドレス情報（ＳＤ−ＬＢＡ：表の右列）に対応づけられる。そして、前述のように、このＬＢＡ対応表２０７による対応づけを行うことによって、ＦＤイメージ領域２７ｂは、必ずしもＳＤメモリカード（Ｒ）２７上の連続したデータ記憶領域上に確保されなくとも、つまり断片化された状態で格納されても構わないことになる。
【００３２】
その後、実際に、オペレーティングシステム１００からフロッピィディスク（Ｒ）に対するアクセスが要求されると、ＦＤアクセス制御部２０４が、所定の計算を行った後にＬＢＡ対応表２０７を参照することにより、アクセス先として指定されたアドレス情報をＳＤメモリカード（Ｒ）２７上のアドレス情報に変換した上で、ＳＤメモリカード（Ｒ）２７に対するアクセスを代替実行し、その結果をオペレーティングシステム１００に返却する。このように、あたかもフロッピィディスク（Ｒ）が存在するように見せ掛けることができるので、例えばＢＩＯＳ１６の環境設定機能によりブートデバイスとしてフロッピィディスク（Ｒ）を選択しておけば、このイメージファイルの元となったフロッピィディスク（Ｒ）上に構築された動作環境を再現することも可能となる。
【００３３】
次に、オペレーティングシステム１００から磁気ディスクに対するアクセスが要求された場合を考える。前述したように、ＦＤイメージ領域２７ｂ上のイメージファイルは、ＨＤエミュレーション領域２７ａ内の１ファイルに過ぎない。従って、このイメージファイルを磁気ディスクに対するアクセスで書き換えたり削除することは至って容易である。そこで、このＨＤアクセス制御部２０５によるイメージファイルの更新・削除を、ＦＤ交換エミュレート部２０６が監視する。
【００３４】
ＦＤイメージ有無チェック部２０２がイメージファイルを検出した時、ＦＤ交換エミュレート部２０６は、その旨の通知を受け取り、この通知の際、そのイメージファイルのファイル名が格納されたＤＩＲのＬＢＡを取得する。通常、ファイルの更新・削除は、ファイルシステムの管理領域の書き換えにより実現されているため、いずれもＬＢＡへの書き込みとしてＢＩＯＳ１６に通知される。従って、ＦＤ交換エミュレート部２０６は、その書き込み要求がイメージファイルのファイル名が格納されたＤＩＲのＬＢＡに対するものかどうかをまず調べる。もし、そうでなければ、この時点で、イメージファイルの更新および削除のいずれでもないことがわかる。
【００３５】
一方、そうであれば、ＦＤ交換エミュレート部２０６は、続いて、イメージファイルが格納されているエントリの更新かどうかを調べる。例えばＦＡＴシステムの場合、各セクタに８ファイル分の情報が格納されるため、イメージファイルのファイル名が格納されたＤＩＲのＬＢＡに対する書き込み要求であっても、他のファイルを対象とするものである可能性もある。そこで、イメージファイルが格納されているエントリの更新かどうかを調べて、イメージファイルが格納されているエントリの更新でなければ、イメージファイルの更新および削除のいずれでもないと判定する。
【００３６】
もし、イメージファイルが格納されているエントリの更新であれば、イメージファイルの更新および削除のいずれかということになる。この場合、ＦＤ交換エミュレート部２０６は、ＤＩＲに格納されたイメージファイルのファイル名情報が変更されているかどうかを調べる。そして、変更されていれば、イメージファイルの削除、そうでなければ、イメージファイルの更新であるとそれぞれ判断する。
【００３７】
なお、ＨＤＤアクセス制御部２０５とＦＤ交換エミュレート部２０６とが協働して、イメージファイルの更新または削除が行われようとしている場合に、イメージファイルを更新または削除しようとしている旨の警告を行い、これに応答して強行の指示がユーザからなされたら、その更新または削除を実施するようにしても良い。
【００３８】
そして、ＦＤ交換エミュレート部２０６は、イメージファイルを対象とする更新や削除であると判定すると、ＦＤアクセス制御部２０４に対して、「イメージファイルが更新された」または「イメージファイルが削除された」旨を通知する。一方、この通知を受けたＦＤアクセス制御部２０４は、各場合について次の処理を実行する。
【００３９】
（１）イメージファイルが更新された
この場合、ＦＤアクセス制御部２０４は、その後、最初にオペレーティングシステム１００からフロッピィディスク（Ｒ）に対するアクセスが要求された際に、ＬＢＡ対応表作成部２０３にＬＢＡ対応表２０７の再作成を指示する。そして、ＬＢＡ対応表２０７が再作成されたら、その新たなＬＢＡ対応表２０７を使って、ＳＤメモリカード（Ｒ）２７に対するアクセスを代替実行する。つまり、これにより、イメージファイルの書き換えをフロッピィディスク（Ｒ）の交換としてエミュレートすることができる。イメージファイルの書き換えは、ＦＤイメージ作成ユーティリティプログラム１０２により行うほか、例えばオペレーティングシステム１００で用意されたコマンド等でも可能である。
【００４０】
（２）イメージファイルが削除された
この場合、ＦＤアクセス制御部２０４は、オペレーティングシステム１００からフロッピィディスク（Ｒ）に対するアクセスが要求された際に、ＦＤイメージ有無チェック部２０２に新たなイメージファイルが存在していないかどうかを調べさせ、新たなイメージファイルが検出されなければ、フロッピィディスク（Ｒ）が収納されていない旨のエラーを返答する。つまり、これにより、イメージファイルの削除をフロッピィディスク（Ｒ）の取り外しとしてエミュレートすることができる。また、検出されれば、ＬＢＡ対応表作成部２０３にＬＢＡ対応表２０７の再作成を指示すると共に、その新たなＬＢＡ対応表２０７を使って、ＳＤメモリカード（Ｒ）２７に対するアクセスを代替実行する。つまり、これにより、イメージファイルの新たな書き込みをフロッピィディスク（Ｒ）の装着としてエミュレートすることができる。
【００４１】
なお、その書き込み要求がイメージファイルのファイル名が格納されたＤＩＲのＬＢＡに対するものかどうかを調べ、そうであった場合に、その時点でイメージファイルの削除であると判定する方法も採用できる。この場合、次のフロッピィディスク（Ｒ）に対するアクセス要求時に、イメージファイルの検索を実施し、検出されれば（元々のイメージファイルである場合を含む）、ディスクの交換、検出されなければ、ディスク未装着として処理すれば良い。
【００４２】
次に、図５乃至図７を参照して、この電子機器のエミュレーション制御に関わる動作手順を説明する。
【００４３】
図５は、電子機器本体の電源オン時のエミュレーション制御に関わる動作手順を示すフローチャートである。
【００４４】
電子機器本体の電源がオンされると、メディア有無チェック部２０１は、ＳＤカードスロット２２にＳＤメモリカード（Ｒ）２７が収納されているかどうかを調べる（ステップＡ１）。また、メディア有無チェック部２０１は、収納されていた場合（ステップＡ２のＹＥＳ）、続いて、そのパーティション構造を解析して、ファイルシステムが正規にサポートされているものかどうかを調べる（ステップＡ３）。
【００４５】
正規にサポートされているものであった場合（ステップＡ４のＹＥＳ）、ＦＤイメージ有無チェック部２０２は、ＦＤイメージ領域２７ｂの有無を調べる（ステップＡ５）。そして、存在すれば（ステップＡ６のＹＥＳ）、ＬＢＡ対応表作成部２０３は、ＬＢＡ対応表２０７の作成を実行する（ステップＡ７）。この際、ＦＤイメージ有無チェック部２０２は、ＦＤイメージ領域２７ｂ内に記録されたフロッピィディスク（Ｒ）のファイルシステムの内容をフロッピィディスク（Ｒ）のものとしてオペレーティングシステム１００に転送する（ステップＡ８）。また、メディア有無チェック部２０１は、ＦＤイメージ領域２７ｂの有無に関わらず、ＳＤメモリカード（Ｒ）２７のファイルシステムの内容を磁気ディスクのものとしてオペレーティングシステムに転送する（ステップＡ９）。
【００４６】
図６は、オペレーティングシステム１００からフロッピィディスク（Ｒ）に対するアクセスが要求された際のエミュレーション制御に関わる動作手順を示すフローチャートである。
【００４７】
フロッピィディスク（Ｒ）に対するアクセスが要求されると、ＦＤアクセス制御部２０４は、フロッピィディスク（Ｒ）の交換エミュレーションがＦＤ交換エミュレート部２０６から通知されているかどうかを調べる（ステップＢ１）。もし、通知されていれば（ステップＢ１のＹＥＳ）、ＦＤアクセス制御部２０４は、その通知が更新および削除のいずれであるのかを調べ（ステップＢ２）、更新であれば（ステップＢ２のＹＥＳ）、ＬＢＡ対応表２０７の再作成をこのタイミングでＬＢＡ対応表作成部２０３に指示する（ステップＢ３）。そして、ＦＤアクセス制御部２０４は、このＬＢＡ対応表２０７に基づき、ＳＤメモリカード（Ｒ）２７に対するアクセスを代替実行する（ステップＢ４）。一方、削除であれば（ステップＢ２のＮＯ）、ＦＤアクセス制御部２０４は、ＦＤイメージ領域２７ｂの有無をＦＤイメージ有無チェック部２０２に調べさせ（ステップＢ５）、存在すれば（ステップＢ６のＹＥＳ）、ＬＢＡ対応表２０７の作成をＬＢＡ対応表作成部２０３に指示し（ステップＢ３）、このＬＢＡ対応表２０７に基づき、ＳＤメモリカード（Ｒ）２７に対するアクセスを代替実行する（ステップＢ４）。
【００４８】
また、ＦＤイメージ領域２７ｂが存在しなければ（ステップＢ６のＮＯ）、ＦＤアクセス制御部２０４は、フロッピィディスク（Ｒ）が格納されていない旨のエラーを返答する（ステップＢ７）。
【００４９】
図７は、オペレーティングシステム１００から磁気ディスクに対するアクセスが要求された際のエミュレーション制御に関わる動作手順を示すフローチャートである。
【００５０】
磁気ディスクに対するアクセスが要求されると、ＨＤアクセス制御部２０５は、その要求されたアクセスをＳＤメモリカード（Ｒ）２７に対して実行する（ステップＣ１）。また、これと並行して、ＦＤ交換エミュレート部２０６は、イメージファイルに対する更新や削除が行われていないかどうかを監視する（ステップＣ２）。そして、もし、イメージファイルに対する更新または削除を検知すると（ステップＣ２のＹＥＳ）、ＦＤ交換エミュレート部２０６は、フロッピィディスク（Ｒ）の交換エミュレーションをＦＤアクセス制御部２０４に通知する（ステップＣ３）。
【００５１】
このように、この電子機器のエミュレーション制御によれば、ＳＤメモリカード２７上のＨＤエミュレーション領域２７ａ内に１つのファイル格納領域として確保されるＦＤイメージ領域２７ｂをフロッピィディスク（Ｒ）に見せ掛けることができる。従って、特別なファイルシステム等を必要とすることなく、このフロッピィディスク（Ｒ）の交換等を簡単に行うことが可能となる。そして、特別なファイルシステム等を必要としない、つまり既存のファイルシステムの規格に沿った処理を行うことにより、ＦＤイメージ領域２７ｂが確保されたＳＤメモリカード２７をデジタルカメラや携帯電話機といった組み込み機器での通常利用に供することにも何ら問題を生じさせることがない。
【００５２】
なお、前述した例では、ＳＤメモリカード（Ｒ）２７をあたかも磁気ディスクのように取り扱い可能とするエミュレーションを説明したが、磁気ディスクに代えて、種々の記憶媒体にエミュレートすることも可能である。図３に示すように、ＭＢＲをもつファイルシステムを採用する記憶媒体であれば、前述した磁気ディスクの場合と同様の手順でエミュレート可能であるし、ＭＢＲをもたないファイルシステムを採用する記憶媒体、例えばSuper Floppy形式でフォーマットされたＭＯ（Magneto Optical Disk）などであれば、その先頭セクタ（ＬＢＡが０）にＤＢＲが存在するので、図３に示す各パーティション内の論理構成と同様となり、前述した磁気ディスクの場合におけるパーティションテーブルからＤＢＲのＬＢＡを求めた後からの手順を行えばよい。また、ＳＤメモリカード（Ｒ）に代えて、その他の半導体メモリ等を利用できることは言うまでもない。
【００５３】
また、前述した例では、エミュレーション制御をＢＩＯＳ１６で実行する場合を説明したが、オペレーティングシステム１００として、例えば米マイクロソフト社のＷＩＮＤＯＷＳ（Ｒ）を想定した場合には、このＢＩＯＳ１６に代えて、図８に示したように、専用のデバイスドライバ３０で実行するようにすれば良い。この場合、ＳＤメモリカード２７を着脱型（リムーバブル）の磁気ディスクに見せ掛けることも可能であり、そのようにエミュレートするのが好ましい。また、オペレーティングシステム１００がＳＤメモリカード２７を取り扱い可能であれば、ＳＤメモリカード２７全体を他の記憶媒体に見せ掛けるエミュレーションは必ずしも必要ではなく、フロッピィディスク（Ｒ）の交換をエミュレートするためのＦＤイメージ領域２７ｂに対する更新・削除を伴うアクセスの監視等のみを行えば良い。
【００５４】
つまり、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００５５】
【図１】この発明の実施形態に係る電子機器の概略構成を示す図
【図２】同実施形態の電子機器におけるエミュレーション制御に関わる機能ブロックを示す図
【図３】ＳＤメモリカード（Ｒ）の論理構成を示す図
【図４】同実施形態の電子機器におけるエミュレーション制御で用いられるＬＢＡ対応表の一例を示す図
【図５】同実施形態の電子機器において電子機器本体の電源オン時のエミュレーション制御に関わる動作手順を示すフローチャート
【図６】同実施形態の電子機器においてオペレーティングシステムからフロッピィディスク（Ｒ）に対するアクセスが要求された際のエミュレーション制御に関わる動作手順を示すフローチャート
【図７】同実施形態の電子機器においてオペレーティングシステムから磁気ディスクに対するアクセスが要求された際のエミュレーション制御に関わる動作手順を示すフローチャート
【図８】同実施形態の電子機器におけるエミュレーション制御をデバイスドライバで実行する場合の機能ブロックを示す図
【符号の説明】
【００５６】
１１…ＣＰＵ、１２…ノースブリッジ（ＮＢ）、１３…システムメモリ、１４…ＬＣＤ
１５…サウスブリッジ（ＳＢ）、１６…ＢＩＯＳ−ＲＯＭ、１７…キーボードコントローラ（ＫＢＣ）、１８…キーボード（ＫＢ）、１９…タッチＰＡＤ、２０…ハードディスク装置（ＨＤＤ）、２１…ＳＤカードコントローラ、２２…ＳＤカードスロット、２３…メモリコントローラ、２４…ディスプレイコントローラ、２５…ＵＳＢコントローラ、２６…フロッピィディスク装置（ＦＤＤ）、２７…ＳＤメモリカード、２７ａ…ＨＤエミュレーション領域、２７ｂ…ＦＤイメージ領域、３０…デバイスドライバ、１００…オペレーティングシステム、１０１…アプリケーションプログラム、１０２…ＦＤイメージ作成ユーティリティプログラム、２００…ＦＤ・ＨＤエミュレート部、２０１…メディア有無チェック部、２０２…ＦＤイメージ有無チェック部、２０３…ＬＢＡ対応表作成部、２０４…ＦＤアクセス制御部、２０５…ＨＤアクセス制御部、２０６…ＦＤ交換エミュレート部、２０７…ＬＢＡ対応表。
【図１】
2005182615.tif 000003
【図２】
2005182615.tif 000004
【図３】
2005182615.tif 000005
【図４】
2005182615.tif 000006
【図５】
2005182615.tif 000007
【図６】
2005182615.tif 000008
【図７】
2005182615.tif 000009
【図８】
2005182615.tif 000010