(57)【要約】【課題】デバイスの初期化の際に生じる光学ドライブの認識エラーを回避しつつ、ホストＰＣに対して所定のプログラムを供給するプログラム供給装置を実現する。【解決手段】光学ドライブ装置１００におけるブート制御部１２０は、ＯＳをロードするためのプログラムを有する記録メディアを搭載するデバイスの固有情報を問い合わせるコマンドに対して、所定のダミー値を用いた仮想固有情報を出力する応答部１２２と、ＯＳをロードするためのプログラムを格納するセクタを読み出す第２のコマンドをホストＰＣ２００から受信したとき、所定のダミープログラムを出力するプログラム出力部１２３と、を備えている。【選択図】図１
2010140299.tif 000002
【特許請求の範囲】
【請求項１】
光学ドライブからオペレーティングシステムをロードするホストコンピュータに対して所定のプログラムを供給するプログラム供給装置であって、
オペレーティングシステムをロードするためのプログラムを有する記録メディアを搭載するデバイスの持つ固有情報を問い合わせる第１のコマンドを上記ホストコンピュータから受信したとき、当該記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力する固有情報出力手段と、
上記プログラムを格納するセクタを読み出す第２のコマンドを上記ホストコンピュータから受信したとき、所定のダミープログラムを出力するプログラム出力手段と、
を備えていることを特徴とするプログラム供給装置。
【請求項２】
上記プログラム出力手段から出力されるダミープログラムは、上記光学ドライブから、当該光学ドライブに搭載されている記録メディアの記録容量情報の取得処理が完了したか否かを、当該プログラム供給装置に対して一定時間毎に問い合わせるように上記ホストコンピュータを制御するプログラムであることを特徴とする請求項１に記載のプログラム供給装置。
【請求項３】
上記光学ドライブから、当該光学ドライブの搭載している記録メディアの記録容量値を取得する取得手段と、
上記取得手段における記録容量値の取得処理の完了を上記ホストコンピュータに対して通知する通知手段と、をさらに備えており、
上記固有情報出力手段は、上記通知手段からの通知を受けてリセットされた上記ホストコンピュータから上記第１のコマンドを受信したとき、上記記録メディアの記録容量を上記取得手段において取得した記録容量値とした固有情報を出力することを特徴とする請求項２に記載のプログラム供給装置。
【請求項４】
上記取得手段において取得した記録容量値を記憶する記憶部をさらに備えており、
上記固有情報出力手段は、上記記憶部に上記取得手段において取得した記録容量値が記憶されている場合には、上記記録メディアの記録容量を当該記録容量値とした固有情報を出力し、上記記憶部に上記取得手段において取得した記録容量値が記憶されていない場合には、上記記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力することを特徴とする請求項３に記載のプログラム供給装置。
【請求項５】
上記プログラム出力手段から出力されるダミープログラムは、上記光学ドライブの診断プログラムであることを特徴とする請求項１に記載のプログラム供給装置。
【請求項６】
上記プログラム出力手段から出力される所定のダミープログラムを切り替えるためのスイッチをさらに備えていることを特徴とする請求項１から５のいずれか１項に記載のプログラム供給装置。
【請求項７】
請求項１から６のいずれか１項の記載のプログラム供給装置を備えていることを特徴とする光学ドライブ。
【請求項８】
搭載されている記録メディアが取り出されたことを検知すると共に、記録メディアが取り出されたことを検知した時点で、記録メディアの記録容量値を記憶する記憶部から、取り出された記録メディアの記録容量値を消去する検知手段をさらに備えていることを特徴とする請求項７に記載の光学ドライブ。
【請求項９】
光学ドライブからオペレーティングシステムをロードするホストコンピュータに対して所定のプログラムを供給するプログラム供給装置におけるプログラム供給方法であって、
オペレーティングシステムをロードするためのプログラムを有する記録メディアを搭載するデバイスの持つ固有情報を問い合わせる第１のコマンドを上記ホストコンピュータから受信したとき、当該記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力する固有情報出力ステップと、
上記プログラムを格納するセクタを読み出す第２のコマンドを上記ホストコンピュータから受信したとき、所定のダミープログラムを出力するプログラム出力ステップと、
を含むことを特徴とするプログラム供給方法。
【請求項１０】
請求項１から６のいずれか１項に記載のプログラム供給装置を動作させるプログラムであって、コンピュータを上記の各手段として機能させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムを記録しているコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホストコンピュータと光学ドライブとを仲立ちし、ブート時にホストコンピューターに対して所定のプログラムに基づいた処理を実行させるプログラム供給装置、および当該プログラム供給装置を備えた光学ドライブに関する。
【背景技術】
【０００２】
近年、光ディスクの記録容量の大容量化が進むと共に、コンピュータのオペレーティングシステム（ＯＳ：Operating System）環境を異なるコンピュータ間で共有するために、光学ドライブを用いてＯＳを起動させる機会も多くなっている。
【０００３】
しかし、記録媒体として光ディスクを用いる光学ドライブと、記録媒体として磁気ディスクを用いるハードディスクドライブとでは異なる点も多く、光学ドライブを用いたＯＳ起動処理にはいくつかの問題点が存在する。
【０００４】
このような問題点のうちのいくつかを解決するための技術として、例えば、特許文献１〜３が知られている。
【０００５】
特許文献１に記載の技術は、光ディスク装置を計算機に接続するために新たなハードウェアまたはソフトウェアが必要となる問題点を始めとして、ハードディスク装置と比して光ディスク装置のスループットが低いという問題点、およびハードディスク装置と比して光ディスク装置のライト動作時における処理速度が著しく低下する問題点を解決する技術である。また、特許文献２に記載の技術は、光ディスクドライブをあたかもハードディスクドライブに見せかけるためエミュレーションの形態を、ホストコンピュータのＯＳで準備されているハードディスク用の入出力処理に合わせて固定せず、エミュレーション機能の自由度を向上する技術である。
【特許文献１】特開平５−１９９７５号公報（平成５年１月２９日公開）
【特許文献２】特開平８−３２８７６１号公報（平成８年１２月１３日公開）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、ＯＳを光学ドライブを用いて起動させるためには、特許文献１および２において解決した問題以外にも問題点が存在する。以下に、特許文献１および２に記載の技術を用いても解決することができない問題点について説明する。
【０００７】
ＯＳを起動する際、すなわちホストコンピュータ（以下、単にホストＰＣと称する）の電源をオンにした際、ホストＰＣは、まず自身に接続されている各デバイスの初期化を実行する。通常、ＯＳはハードディスクドライブに記録されているため、ホストＰＣは、ＡＴＡを介して、ハードディスクドライブに対して自身の記録容量情報などを含む固有情報を問い合わせるコマンド（IDENTIFY DEVICEコマンド）を送信する。そして、送信したIDENTIFY DEVICEコマンドに対するハードディスクドライブからの応答を受けて、初期化を実行する。ハードディスクドライブの初期化が完了すると、ホストＰＣは、そのハードディスクドライブから読み出したＭＢＲ（Mater Boot Record）に収められているプログラム（ブートストラップローダー）を実行することにより、記録メディアからＯＳをロードする。
【０００８】
このとき、ハードディスクドライブは、ホストＰＣから送信されるIDENTIFY DEVICEコマンドに対する応答を数秒以内（一般的には１〜２秒以内）に通知する（送信する）必要がある。通常、円盤状の記録メディアでは、記録メディアの回転が安定した後にしか情報を読み出すことができない。しかし、ハードディスクドライブでは、搭載されている記録メディアの取り出しが不可能であるため、自身の記録容量情報として予め定められている固定値を用いてIDENTIFY DEVICEコマンドに応答することにより、この問題をクリアしている。
【０００９】
しかし、光学ドライブでは、ハードディスクドライブと異なり、搭載されている記録メディア（すなわち、光ディスク）を取り替える（取り出す）ことが可能である。そのため、搭載されている光ディスクの記録容量情報（以下、メディア情報とも称する）を毎回確認する必要があり、ハードディスクドライブのように、予め定められた固定値を用いて応答することができない。すなわち、光学ドライブの場合は、光ディスクの回転が安定するまで、搭載されている光ディスクのメディア情報を取得することができない。
【００１０】
このように、光学ドライブの場合は、所定の時間内にIDENTIFY DEVICEコマンドに対する応答ができないため、ホストＰＣでは、デバイスの認識エラーとして処理される。すなわち、ホストＰＣにおいて不良デバイスとして判定されてしまうことになる。当然のことながら、光学ドライブを用いたＯＳ起動処理は、この時点で中止されてしまう。
【００１１】
以上説明したように、光学ドライブでは、ハードディスクドライブと異なり、電源がオンになってから数秒以内に搭載されている光ディスクのメディア情報をホストＰＣに対して通知することができないという問題を有している。
【００１２】
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、ブートデバイスの初期化の際に生じる光学ドライブの認識エラーを回避しつつ、ホストＰＣに対して所定のプログラムを供給するプログラム供給装置を実現することにある。
【課題を解決するための手段】
【００１３】
本発明に係るプログラム供給装置は、上記課題を解決するために、
光学ドライブからオペレーティングシステムをロードするホストコンピュータに対して所定のプログラムを供給するプログラム供給装置であって、オペレーティングシステムをロードするためのプログラムを有する記録メディアを搭載するデバイスの持つ固有情報を問い合わせる第１のコマンドを上記ホストコンピュータから受信したとき、当該記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力する固有情報出力手段と、上記プログラムを格納するセクタを読み出す第２のコマンドを、上記ホストコンピュータから受信したとき、所定のダミープログラムを出力するプログラム出力手段と、を備えていることを特徴としている。
【００１４】
本発明に係るプログラム供給装置は、ＯＳをロードするためのプログラムを有する記録メディアを搭載するデバイスの持つ固有情報を問い合わせる第１のコマンドに対して、記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力し、仮想固有情報を持つデバイスに搭載されている仮想記録メディアからＯＳをロードするためのプログラムを格納しているセクタ（以下、ブートセクタとも称する）を読み出す第２のコマンドに対して、所定のダミープログラムを供給する。
【００１５】
本発明に係るプログラム供給装置では、ホストＰＣから送信される第１のコマンドを受信したときに、記録メディアの記録容量を所定のダミー値として応答するため、第１のコマンドに対する応答を所定の時間内に返すことができる。
【００１６】
また、本発明に係るプログラム供給装置では、仮想固有情報を持つデバイスの搭載する仮想記録メディアからの情報読み出し要求のコマンド（第２のコマンド）を受信したとき、所定のダミープログラムを出力するため、仮想固有情報を持つデバイスであっても、情報の読み出しの際に問題が生じることを避けることができる。また、第２のコマンドに対して出力されるダミープログラムに応じた処理をホストＰＣに実行させることができる。
【００１７】
したがって、本発明に係るプログラム供給装置は、ホストＰＣに接続されているデバイスを初期化する際に生じる光学ドライブの認識エラーを回避しつつ、ホストＰＣに対して所定のプログラムを供給することができる効果を奏する。
【００１８】
本発明に係るプログラム供給装置では、さらに、上記プログラム出力手段から出力されるダミープログラムは、上記光学ドライブから、当該光学ドライブに搭載されている記録メディアの記録容量情報の取得処理が完了したか否かを、当該プログラム供給装置に対して一定時間毎に問い合わせるように上記ホストコンピュータを制御するプログラムであることが好ましい。
【００１９】
上記の構成によれば、光学ドライブに搭載されている記録メディアの記録容量情報を取得するための時間（Ｗａｉｔ時間）を作り出すことができる効果を奏する。
【００２０】
本発明に係るプログラム供給装置では、さらに、上記光学ドライブから、当該光学ドライブの搭載する記録メディアの記録容量情報を取得する取得手段と、上記取得手段における記録容量情報の取得処理の完了を上記ホストコンピュータに対して通知する通知手段と、をさらに備えており、上記固有情報出力手段は、上記通知手段からの通知を受けてリセットされた上記ホストコンピュータから上記第１のコマンドを受信したとき、上記記録メディアの記録容量を上記取得手段において取得した記録容量情報とした固有情報を出力することが好ましい。
【００２１】
上記の構成によれば、ホストＰＣは、光学ドライブに搭載されている記録メディアの記録容量情報を取得したことを示す通知の受信をトリガとして、仮想的な固有情報を持つデバイスに関する情報をリセットする。すなわち、ダミーデバイスに関する情報をリセットする。これによって、ホストＰＣでは、接続されているデバイスの初期化処理が再度実行されることになる。
【００２２】
このとき、ホストＰＣから受信する第１のコマンドに対して、光学ドライブに搭載されている記録メディアの記録容量情報を用いて応答することができる。すなわち、ホストＰＣは、光学ドライブの搭載する記録メディアの記録容量を有するデバイスを認識することができる。
【００２３】
これによって、上記の構成を用いて光学ドライブに搭載されてい記録メディア（すなわち、光ディスク）からＯＳを起動させる場合には、ブートセクタ上の情報を書き換えるなどの特別な操作を必要とすることなく、光ディスクからＯＳを起動させることができる。そのため、コンピュータの操作に不慣れなユーザーであっても、容易に光ディスクからのＯＳの起動を実行することができる効果を奏する。
【００２４】
本発明に係るプログラム供給装置では、さらに、上記取得手段において取得した記録容量情報を記憶する記憶部をさらに備えており、上記固有情報出力手段は、上記記憶部に上記取得手段において取得した記録容量情報が記憶されている場合には、当該記録容量情報を用いた固有情報を出力し、上記記憶部に上記取得手段において取得した記録容量情報が記憶されていない場合には、所定のダミー値を用いた仮想的な固有情報を出力することが好ましい。
【００２５】
上記の構成によれば、取得した記録メディアの記録容量情報を、記憶部に記憶させておくことができる。そのため、記録メディアの記録容量情報が記憶部に記憶されている場合、ホストＰＣからの第１のコマンドに対して、記憶部に記憶されている記録容量情報を用いて応答することができる。
【００２６】
これによって、例えば、光ディスクからＯＳを起動させる場合、所定時間内にホストＰＣからの第１のコマンドに応答することができるため、ホストＰＣにおいてダミープログラムを処理させる間に、光ディスクの記録容量情報を取得する処理をスキップすることができる。すなわち、ＯＳのロードに要する時間を短縮することができる効果を奏する。
【００２７】
本発明に係るプログラム供給装置では、さらに、上記プログラム出力手段において出力される所定のプログラムは、上記光学ドライブの診断プログラムであることが好ましい。
【００２８】
上記の構成によれば、ホストＰＣに対して、光ディスクドライブの自己診断処理を実行させることができる効果を奏する。
【００２９】
本発明に係るプログラム供給装置では、さらに、上記プログラム出力手段において出力する所定のプログラムを切り替えるためのスイッチをさらに備えていることが好ましい。
【００３０】
上記の構成によれば、スイッチに応じてプログラム出力手段から出力する所定のプログラムを適宜変更することができる。これによって、ブート時においてホストＰＣに対して様々な種類のプログラムに応じた処理を実行させることができる効果を奏する。
【００３１】
本発明に係るプログラム供給装置を備えた光学ドライブも本発明の範疇に含まれる。
【００３２】
本発明に係る光学ドライブでは、さらに、搭載されている記録メディアが取り出されたことを検知すると共に、記録メディアが取り出されたことを検知した時点で、記録メディアの記録容量情報を記憶する記憶部から、取り出された記録メディアの記録容量情報を消去する検知手段をさらに備えていることが好ましい。
【００３３】
上記の構成によれば、光学ドライブに搭載されている記録メディアが取り出された場合には、取り出された記録メディアの記録容量情報を消去する。
【００３４】
これによって、誤った記録メディアの記録容量情報をホストＰＣに対して送信してしまうことを防止することができる効果を奏する。
【００３５】
本発明に係るプログラム供給装置におけるプログラム供給方法は、上記課題を解決するために、
光学ドライブからオペレーティングシステムをロードするホストコンピュータに対して所定のプログラムを供給するプログラム供給装置におけるプログラム供給方法であって、記録メディアを搭載するデバイスの持つ固有情報を問い合わせる第１のコマンドを上記ホストコンピュータから受信したとき、当該記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力する固有情報出力ステップと、上記仮想固有情報を持つデバイスの搭載する仮想記録メディアにおいてオペレーティングシステムをロードするための情報を格納するセクタを読み出す第２のコマンドを上記ホストコンピュータから受信したとき、所定のダミープログラムを出力するプログラム出力ステップと、を含むことを特徴としている。
【００３６】
上記の構成によれば、本発明に係るプログラム供給装置と同様の作用効果を奏する。
【００３７】
また、本発明に係るプログラム供給装置を動作させるためのプログラムであって、コンピュータを上記の各手段として駆動させることを特徴とするプログラムおよび該プログラムを記録したコンピュータ読み取り可能な記録媒体も本発明の範疇に含まれる。
【発明の効果】
【００３８】
本発明に係るプログラム供給装置は、以上のように、オペレーティングシステムをロードするためのプログラムを有する記録メディアを搭載するデバイスの持つ固有情報を問い合わせる第１のコマンドに対して、記録メディアの記録容量を所定のダミー値とした仮想固有情報を出力する固有情報出力手段と、オペレーティングシステムをロードするためのプログラムを格納するセクタを読み出す第２のコマンドに対して、所定のダミープログラムを供給する。
【００３９】
これによって、本発明に係るプログラム供給装置は、デバイスを初期化する際に生じる光学ドライブの認識エラーを回避しつつ、ホストＰＣに対して所定のプログラムに基づいた処理を実行させることができる効果を奏する。
【発明を実施するための最良の形態】
【００４０】
本発明に係るプログラム供給装置を備えた光学ドライブの一実施形態について、図１〜３を参照しつつ以下に説明する。
【００４１】
（光学ドライブ装置１００の構成）
本発明に係るプログラム供給装置を備えた光学ドライブの構成について、図１を参照しつつ以下に説明する。図１は、ブート制御部１２０（プログラム供給装置）を備えた光学ドライブ装置１００の要部構成を示すブロック図である。
【００４２】
光学ドライブ装置１００は、図１に示すように、インターフェース１１０、ブート制御部１２０、ディスク取出検知部１３０、ＡＴＡ／ＡＴＡＰＩ変換部１４０、および光学ドライブ部１５０を備えている。これらの部材について、以下に説明する。
【００４３】
なお、図１に示すホストコンピュータ２００（以下、ホストＰＣ２００と称する）および光学ドライブ１５０に搭載されている光ディスク１５１は、光学ドライブ装置１００を構成する部材ではないが、本発明の理解を容易にするために、便宜上図１に示している。
【００４４】
（インターフェース１１０）
インターフェース１１０は、ホストＰＣ２００と光学ドライブ装置１００との間で情報の送受信を行うものである。インターフェース１１０から伸びるバス（データライン）は、ブート制御部１２０を介して、またはブート制御部１２０からＡＴＡ／ＡＴＡＰＩ変換部１４０を介して、光学ドライブ部１５０に接続されている。
【００４５】
インターフェース１１０の規格としては、例えば、ＡＴＡ（AT attachment）を挙げることができる。なお、ＡＴＡは、転送方式がシリアルのＡＴＡであるＳＡＴＡ（Serial AT attachment）を用いてもよいし、転送方式がパラレルのＡＴＡを用いてもよい。
【００４６】
（ブート制御部１２０）
ブート制御部１２０は、ＯＳ起動前において、すなわちブート時におけるホストＰＣ２００からの光学ドライブ部１５０におけるデータの読み出しを仲立ちする。ブート制御部１２０は、図１に示すように、制御部１２１、応答部１２２、プログラム出力部１２３、プログラム格納部１２４、メディア情報取得部１２５、通知部１２６、記憶部１２７およびスイッチ１２８を備えている。ブート制御部１２０に備えられているこれらの各部材について、以下に説明する。
【００４７】
（制御部１２１）
制御部１２１は、ブート制御部１２０における処理全般を制御する。すなわち、ＯＳ起動前においてホストＰＣ２００からインターフェース１１０を介して光学ドライブ装置１００に入力される各種コマンドは、まず制御部１２１に入力されることになる。制御部１２１では、入力された各種コマンドに応じて、それぞれの部材に処理を割り振る。
【００４８】
（応答部１２２）
応答部１２２は、ホストＰＣ２００からのハードディスクの有する固有情報を問い合わせるコマンド（以下、IDENTIFY DEVICEコマンドと称する）を受けたとき、搭載されている記録メディアの記録容量情報の値に記憶部１２７に記憶されている値を用いて応答する。
【００４９】
応答部１２２は、ホストＰＣ２００からのIDENTIFY DEVICEコマンドに対して、記憶部１２７に光ディスク１５１の記録容量情報の真値が記録されている場合には真値を用いて応答し、記録されていない場合には、予め記録されているダミー値を用いて応答する。
【００５０】
（プログラム出力部１２３、プログラム格納部１２４）
プログラム出力部１２３は、応答部１２２から出力される値に従って認識される記録メディアに対するホストＰＣ２００からのプログラム読み出し要求に対して、プログラム格納部１２４に格納されているプログラムを出力する。
【００５１】
プログラム格納部１２４は、プログラム出力部１２３において出力するプログラムを格納しているメモリである。プログラム格納部１２４に複数のプログラムが格納されている場合、出力されるプログラムはブート制御部１２０に備えられているスイッチ１２８に応じて決定される。
【００５２】
（メディア情報取得部１２５）
メディア情報取得部１２５は、光学ドライブ部１５０に搭載されている光ディスク１５１から、光ディスク１５１の記録容量の値を含むメディア情報を取得する。
【００５３】
（通知部１２６）
通知部１２６は、メディア情報取得部１２５におけるメディア情報の読み出し処理が完了したことを示す完了情報を、インターフェース１１０を介してホストＰＣ２００に出力する。
【００５４】
（記憶部１２７）
記憶部１２７は、光学ドライブ部１５０に搭載されている光ディスク１５１の記録容量の値を記憶するメモリである。記憶部１２７は、２つの記憶領域に仮想的に区切られており、一方の記憶領域には、ダミー値を記憶しており、もう一方の記憶領域には、真値を記憶するように構成されていればよい。このとき、ダミー値の記憶されている記憶領域は、データの書き換えが不可能に設定されており、真値の記憶されている記憶領域は、データの書き換えが可能に設定されていることが好ましい。
【００５５】
なお、本実施形態では、１つの記憶部にダミー値および真値を記憶する場合を例に挙げて説明しているが、これに限定されるものではなく、ダミー値を記憶する記憶部と真値を記憶する記憶部とをそれぞれ備えていてもよい。この場合、真値を記憶する記憶部は、揮発性メモリであってもよい。
【００５６】
（スイッチ１２８）
スイッチ１２８は、プログラム出力部１２３から出力するプログラムを決定するためのものである。すなわち、スイッチ１２８を適宜切り替えることにより、プログラム格納部１２４から読み出すプログラムは適宜変更される。スイッチ１２８は、ホストＰＣ２００において実行するモードを切り替えるスイッチと言い換えることもできる。
【００５７】
なお、図１ではスイッチ１２８がブート制御部１２０に備えられている場合を例示しているが、これに限定されるものではなく、光学ドライブ装置１００に備えられていてもよい。
【００５８】
（ディスク取出検知部１３０）
ディスク取出検知部１３０は、光学ドライブ部１５０に搭載された光ディスクが取り出されたことを検知する。光ディスクの取り出しは、光学ドライブ部１５０に備えられた光ディスクを取り出すスイッチ（いわゆる、イジェクトボタン）の押下により検知される。
【００５９】
（ＡＴＡ／ＡＴＡＰＩ変換部１４０）
ＡＴＡ／ＡＴＡＰＩ変換部１４０は、ホストＰＣ２００から出力され、インターフェース１１０およびブート制御部１２０を介して入力されるＡＴＡコマンドをＡＴＡＰＩコマンドに変換する。
【００６０】
このとき、ＡＴＡコマンドにより指定される１セクタ当たりの容量と、ＡＴＡＰＩコマンドにより指定される１セクタ当たりの容量とは異なるため、ＡＴＡ／ＡＴＡＰＩ変換部１４０では、ＡＴＡＰＩコマンドに基づいて指定される領域から読み出した情報から、ＡＴＡコマンドにより指定される領域に対応する領域に記録されている情報を抽出する。
【００６１】
（光学ドライブ部１５０）
光学ドライブ部１５０は、搭載されている光ディスク１５１からのデータの読み出しおよび光ディスク１５１へのデータの書き込みを実行する。
【００６２】
（光学ドライブ装置１００におけるプログラム実行処理）
次に、光学ドライブ装置１００におけるプログラム実行処理を図２および３を参照しつつ以下に説明する。本実施形態では、光学ドライブ装置１００におけるプログラム実行処理の一例として、光ディスク１５１からのＯＳの起動処理を例に挙げて説明する。したがえって、図２および３は、光学ドライブ装置１００におけるＯＳ起動処理動作を示すフローチャートである。
【００６３】
ここで、光学ドライブ装置１００における光ディスク１５１からのＯＳ起動処理は、大別して、ダミー値を用いた固有情報の送信処理、真値の取得処理、および真値を用いた固有情報の送信処理の３つの処理に分類することができる。本実施形態では、ＯＳ起動処理における３つの処理それぞれについて、以下に詳細に説明する。
【００６４】
（ダミー値を用いた固有情報の送信処理）
まず、ダミー値を用いた固有情報の送信処理について説明する。ダミー値を用いた固有情報の送信処理は、ホストＰＣ２００におけるＢＩＯＳ（basic input/output system）の実行に基づいてなされる処理である。
【００６５】
ホストＰＣ２００に備えられた電源（図示しない）をオンにすると、ホストＰＣ２００に電力が供給されると共に（ステップＳ１）、光学ドライブ装置１００に対しても電力が供給される（ステップＳ２）。すなわち、ホストＰＣ２００および光学ドライブ装置１００の双方の電源がオンとなる。
【００６６】
電源がオンになると共に、ホストＰＣ２００は自装置に接続されているデバイスを初期化する。このとき、ホストＰＣ２００は、インターフェース１１０を介して、自装置に接続されているデバイスの持つ固有情報を問い合わせるコマンドを送信する（ステップＳ３）。なお、本実施形態では、光学ドライブ装置１００をＡＴＡを介してホストＰＣ２００に接続しているため、ここで送信されるコマンドは、ＡＴＡコマンドにおける「IDENTIFY DEVICE」コマンドである。
【００６７】
ホストＰＣ２００からIDENTIFY DEVICEコマンドを受信した光学ドライブ装置１００における制御部１２１は、応答部１２２に受信したIDENTIFY DEVICEコマンドに対する応答を指示する。指示を受けた応答部１２２は、記憶部１２７に光ディスク１５１の記録容量情報の真値が記憶されているか否かを判定する（ステップＳ４）。記憶部１２７に光ディスク１５１の記録容量情報の真値が記憶されている場合（ステップＳ４においてＹｅｓ）、応答部１２２は、記憶部１２７から真値を読み出し、搭載されている記録メディアの記録容量情報として読み出した真値を用いて応答する（図３におけるステップＳ１７）。
【００６８】
一方で、記憶部１２７に光ディスク１５１の記録容量情報の真値が記憶されていない場合（ステップＳ４においてＮｏ）、応答部１２２は、搭載されている記録メディアの記録容量情報として記憶部１２７に記憶されている所定のダミー値を用いて応答する（ステップＳ５）。応答部１２２がダミー値を用いてIDENTIFY DEVICEコマンドに対して応答すると、制御部１２１は、メディア情報取得部１２５に対して光ディスク１５１から記録容量情報を含むメディア情報を取得するように指示する。メディア情報取得部１２５は、制御部１２１からの指示を受けて、光ディスク１５１からメディア情報の取得を開始する（ステップＳ６）。より具体的には、メディア情報取得部１２５は、光学ドライブ部１５０に対して搭載されている光ディスク１５１のメディア情報の読み出しを指示し、指示を受けた光学ドライブ部１５０が光ディスク１５１からメディア情報を読み出す。
【００６９】
ダミー値を受信したホストＰＣ２００は、光学ドライブ装置１００のことを、ダミー値に従った記録容量を有する記録メディアを搭載しているデバイスであると認識する（ステップＳ７）。例えば、光学ドライブ装置１００は、IDENTIFY DEVICEコマンドに対して、自身が、１０ＧＢの記録容量を有するハードディスクドライブであると応答した場合、ホストＰＣ２００は、光学ドライブ装置１００に搭載されている記録メディアが１０ＧＢであり、かつ、光学ドライブ装置１００がハードディスクであると認識することになる。続いて、ホストＰＣ２００は、認識したダミーデバイスからＭＢＲを読み出すために、光学ドライブ装置１００に対してＭＢＲの読出コマンドを送信する（ステップＳ８）。
【００７０】
ここで、ＭＢＲとは、通常、ハードディスクドライブにおける記録メディアの０〜５１２バイトまでの領域に記録されている情報である。したがって、ＭＢＲを読み出すための読出コマンドは、記録メディアの０〜５１２バイトまでの領域に記録されている情報を読み出すためのコマンドと同義である。
【００７１】
ＭＢＲを読み出す読出コマンドを受信した光学ドライブ装置１００における制御部１２１は、プログラム出力部１２３に対して所定のダミープログラムをホストＰＣ２００に対して送信するように指示する。制御部１２１からの指示を受けたプログラム出力部１２３は、プログラム格納部１２４からダミープログラムを読み出し（ステップＳ９）、読み出したダミープログラムをインターフェース１１０を介してホストＰＣ２００に送信する（ステップＳ１０）。
【００７２】
ここで、光ディスク１５１からのＯＳ起動処理においてプログラム格納部１２４から読み出されるダミープログラムは、光学ドライブ装置１００に対して、一定時間毎に、光ディスク１５１のメディア情報の真値の取得処理が完了したか否かを問い合わせる問合せコマンドを送信するプログラムである。言い換えれば、ステップＳ６におけるメディア情報の取得処理の完了を問い合わせるようにホストＰＣ２００を制御するプログラムである。
【００７３】
以上説明したステップＳ１からＳ１０までが、ホストＰＣ２００におけるＢＩＯＳの実行に基づいてなされる処理であり、ダミー値を用いた固有情報の送信処理に分類される。すなわち、ダミー値を用いた固有情報の送信処理は、主として、デバイスの認識エラーを回避するために、ホストＰＣ２００に対してダミーデバイスを認識させる処理である。
【００７４】
（真値の取得処理）
次に、真値の取得処理について説明する。光学ドライブ装置１００から送信された問合せプログラム（ダミープログラム）を受信したホストＰＣ２００は、受信した問合せプログラムを実行し、実行したプログラムに従って、一定時間毎に光学ドライブ装置１００に対してメディア情報の取得処理の完了を問い合わせる問合せコマンドを送信する（ステップＳ１１）。
【００７５】
一方で、光学ドライブ装置１００は、メディア情報取得部１２５における光ディスク１５１のメディア情報の取得処理が完了したか否かを判定する（ステップＳ１２）。メディア情報取得部１２５における光ディスク１５１のメディア情報の取得処理が完了していない場合（ステップＳ１２においてＮｏ）、メディア情報取得部１２５は、光ディスク１５１のメディア情報の取得処理を継続する。この場合、ホストＰＣ２００からの問合せコマンドに対しては、「Ｆａｌｓｅ」を返す。ホストＰＣ２００は、光学ドライブ２００からの応答がＦａｌｓｅである場合、一定時間経過後に再度問合せコマンドを送信する。
【００７６】
メディア情報取得部１２５における光ディスク１５１のメディア情報の取得処理が完了した場合（ステップＳ１２においてＹｅｓ）、通知部１２６は、ホストＰＣ２００からの問合せコマンドに対して、メディア情報の取得処理が完了したことを表す完了情報（すなわち、「Ｔｒｕｅ」）を送信する（ステップＳ１３）。なお、このとき、メディア情報取得部１２５は、光ディスク１５１のメディア情報に含まれる記録容量情報の真値を記憶部１２７に記憶する（ステップＳ１４）。
【００７７】
以上説明したステップＳ１１からＳ１４までが、ダミープログラムの実行に基づいてなされる真値の取得処理に分類される。すなわち、真値の取得処理は、主として、光ディスク１５１のメディア情報の読み出し処理が完了するまでの間、ホストＰＣ２００に対して所定の処理を実行させておく処理である。
【００７８】
（真値を用いた固有情報の送信処理）
次に、真値を用いた固有情報の送信処理について説明する。現時点において光学ドライブ装置１００（ホストＰＣ２００はダミーデバイスとして認識している）の記録メディアは、ダミー値に従ったものであるため、これを真値に従って認識される記録メディアに変更しなければならない。
【００７９】
ホストＰＣ２００は、光学ドライブ装置１００からの完了情報を受信すると、リセット処理を実行する（ステップＳ１５）。続いて、ホストＰＣ２００は、ステップＳ３と同様に、ホストＰＣ２００に接続されている光学ドライブ装置１００を初期化するために、インターフェース１１０を介して、IDENTIFY DEVICEコマンドを送信する（ステップＳ１６）。
【００８０】
ホストＰＣ２００からIDENTIFY DEVICEコマンドを受信した光学ドライブ装置１００における制御部１２１は、応答部１２２にIDENTIFY DEVICEコマンドに対する応答を指示する。応答部１２２は、搭載されている記録メディアの記録容量情報にメディア情報取得部１２５において取得した記録容量情報の真値（記憶部１２７に記憶されている真値）を用いて応答する（ステップＳ１７）。なお、ステップＳ４において既に記憶部１２７に記録容量情報の真値が記憶されている場合には（ステップＳ４においてＹｅｓ）、ステップＳ１７における処理を実行する。
【００８１】
光ディスク１５１の記録容量情報の真値を受信したホストＰＣ２００は、受信した真値に従って記録メディアを認識する（ステップＳ１８）。続いて、ホストＰＣ２００は、記録メディアからＭＢＲを読み出すために、光学ドライブ装置１００に対してＭＢＲの読出コマンドを送信する（ステップＳ１９）。
【００８２】
このとき、光学ドライブ装置１００は、自身の記録容量は真値を用いて応答するが、自身がハードディスクドライブであるとしてホストＰＣ２００に認識させる。すなわち、ホストＰＣ２００からはＡＴＡコマンドにより指示が送信され、光学ドライブ装置１００は、受信したＡＴＡコマンドをＡＴＡ／ＡＴＡＰＩ変換部１４０においてＡＴＡＰＩコマンドに変換して処理することになる。また、光学ドライブ装置１００は、光ディスク１５１の記録容量情報の真値を用いて応答しているため、ステップＳ９およびＳ１０における処理のように、ダミープログラムを出力しない。すなわち、ホストＰＣ２００から送信されるＭＢＲの読出しコマンドは、インターフェース１１０およびブート制御部１２０を経由して、ＡＴＡ／ＡＴＡＰＩ変換部１４０に入力される。
【００８３】
なお、光学ドライブ装置１００は。ホストＰＣ２００においてはハードディスクドライブとして認識されているが、本実施形態では、一貫して光学ドライブ装置１００と表示する。
【００８４】
ＡＴＡ／ＡＴＡＰＩ変換部１４０は、ＡＴＡコマンドとして入力されたＭＢＲの読み出しコマンドを、光ディスク１５１においてＭＢＲに相当するセクタ（すなわち、ハードディスクドライブにおける記録メディアの０〜５１２バイトまでの領域に相当するセクタ；以下、ブートセクタとも称する）から情報を読み出すというＡＴＡＰＩコマンドに変換する。ＡＴＡ／ＡＴＡＰＩ変換部１４０は、ＡＴＡコマンドをＡＴＡＰＩコマンドに変換した後、変換したＡＴＡＰＩコマンドに基づいて、光学ドライブ１５０に対して光学ディスク１５１からの情報の読み出しを指示する。
【００８５】
ＡＴＡ／ＡＴＡＰＩ変換部１４０からの指示を受けた光学ドライブ部１５０は、光ディスク１５１からブートセクタを読み出す（ステップＳ２０）。読み出されたブートセクタに収められている情報（すなわち、ブートセクタ上の情報）は、ブート制御部１２０およびインターフェース１１０を介して、ホストＰＣ２００に送信される（ステップＳ２１）。このとき、ブートセクタ上の情報は、ブート制御部１２０を素通りして、インターフェース１１０からホストＰＣ２００へと送信される。
【００８６】
ブートセクタを読み込んだホストＰＣ２００は、ブートセクタ上の情報の１つであるブートストラップローダーを実行する（ステップＳ２２）。そして、ホストＰＣ２００は、実行したブートストラップローダーに基づいて、光ディスク１５１からＯＳをロードする（ステップＳ２３）。以下、ホストＰＣ２００は、従来と同様のアルゴリズムによりＯＳを起動するため、本実施形態ではＯＳ起動処理におけるこれ以降の説明を省略する。
【００８７】
以上説明したステップＳ１５からＳ２３までが光学ドライブの再設定処理に分類される。なお、光学ドライブの再設定処理も、ダミー値の送信処理と同様に、ホストＰＣ２００におけるＢＩＯＳの実行に基づいてなされる処理である。
【００８８】
なお、本明細書等における「ブートセクタ」とは、記録メディアにおいてブートプログラムなどのコードを格納する部分を指すものであり、ＰＣ／ＡＴ互換機におけるブートセクタに限定されるものではない、また、記録メディアは、磁気ディスクに限定されるものではなく、光学ディスクである場合も含む。
【００８９】
（光学ドライブ装置１００の利点）
以上説明したように、光学ドライブ装置１００に備えられたブート制御部１２０は、ＯＳをロードするためのプログラムを有する記録メディアを搭載するデバイスの持つ固有情報を問い合わせるIDENTIFY DEVICEコマンドに対して、所定のダミー値を用いて応答し、応答の結果ホストＰＣ２００において認識されるダミーデバイス（ダミー値により認識される仮想デバイス）に搭載されている記録メディアからのＯＳをロードするためのプログラムを格納するブートセクタの読み出し要求に対して、所定のダミープログラムを供給する。
【００９０】
光学ドライブ装置１００では、ホストＰＣ２００から送信されるIDENTIFY DEVICEコマンドに対する応答を所定の時間内に返すことができる。また、光学ドライブ装置１００では、応答の結果ホストＰＣ２００において認識される仮想デバイスに搭載されている記録メディアからのブートセクタの読み出し要求に対して、所定のダミープログラムを供給するため、ダミーデバイスであっても、プログラムの読み出しの際に問題が生じることを避けることができる。また、出力されるダミープログラムに応じた処理をホストＰＣ２００に実行させることができる。
【００９１】
これによって、光学ドライブ装置１００は、ホストＰＣ２００に接続されているデバイスを初期化する際に生じる光学ドライブの認識エラーを回避しつつ、ホストＰＣ２００に対して所定のプログラムに基づいた処理を実行させることができる。
【００９２】
また、ホストＰＣ２００は、光ディスク１５１の記録容量情報の真値を取得したことを示す通知の受信をトリガとして、ホストＰＣ２００において認識されているダミーデバイスに関する情報をリセットする。これによって、ホストＰＣ２００では、接続されているデバイスの初期化が再度実行されることになる。
【００９３】
このとき、ブート制御部１２０は、ホストＰＣ２００からの２度目のIDENTIFY DEVICEコマンドに対して、光ディスク１５１の記録容量情報の真値を用いて応答することができる。すなわち、ホストＰＣ２００に対して、光学ドライブ装置１００に搭載されている光ディスク１５１の正しい記録容量を認識させることができる。
【００９４】
これによって、ブートセクタ上の情報を書き換えるなどの特別な操作を必要とすることなく、光ディスク１５１からＯＳを起動させることができる。そのため、コンピュータの操作に不慣れなユーザーであっても、容易に光ディスク１５１からＯＳを起動させることができる。また、光ディスクドライブ装置１００からのＯＳを起動に際して、ホストＰＣ２００を改造する必要もない。
【００９５】
また、光学ドライブ装置１００に備えられたブート制御部１２０の記憶部１２７には、取得した光ディスクの記録容量情報の真値を記憶することができる。
【００９６】
これによって、記憶部１２７に真値が記憶されている光ディスクであれば、ダミー値を用いることなく、記憶部１２７に記憶されている真値を用いて、ホストＰＣ２００からのIDENTIFY DEVICEコマンドに対して応答することができる。すなわち、記憶部１２７に真値が記憶されている場合には、ＯＳの起動に要する時間を短縮することができる。
【００９７】
（記憶部１２７における記録容量情報の消去）
記憶部１２７において記憶されている光ディスク１５１の記録容量情報の真値は、光ディスク１５１が光学ドライブ装置１００から取り出された際に消去されることが好ましい。記憶部１２７に記憶されている記録容量情報の真値の消去処理について、以下に説明する。
【００９８】
光学ドライブ装置１００に備えられた光ディスクの取り出しボタンが押下されると、ディスク取出検知部１３０は、光ディスク１５１が光学ドライブ装置１００から取り出されたと判定する。ディスク取出検知部１３０は、光ディスク１５１が取り出されたことを検知すると、記憶部１２７に記憶されている光ディスク１５１の記録容量情報の値を消去する。
【００９９】
このように、光ディスクの取り出しを検知する毎に、記憶部１２７に記憶されている記録容量情報の値を消去することによって、光ディスク１５１とは異なる新たな光ディスクを搭載している場合に、ホストＰＣ２００から送信されるIDENTIFY DEVICEコマンドに対して、光ディスク１５１の記録容量情報の値を用いて応答してしまうことを防止することができる。
【０１００】
なお、光ディスクの取り出しが実行されない場合には、光ディスクの記録容量情報の値は、記憶部１２７に記憶され続ける。その場合には、図２および３を参照して説明したように、ダミー値を用いた応答処理をスキップすることができるため、ＯＳの起動処理に要する時間を短縮することができる。
【０１０１】
また、光ディスクの取り出しの検知は、光ディスクの取り出しボタンの押下による検知に限定されるものではなく、他の手法により検知するようにしてもよい。
【０１０２】
（光ディスクが搭載されていない場合の処理）
光学ドライブ装置１００に光ディスクが搭載されていない場合、当然のことながら、メディア情報取得部１２５は光ディスクのメディア情報を取得することができない。この場合、ステップＳ１１における処理においてループが発生し、ホストＰＣ２００からの問合せコマンドに対して「Ｔｒｕｅ」を応答することができない。
【０１０３】
したがって、ホストＰＣ２００は、一定時間経ってもメディア情報取得部１２５におけるメディア情報の取得が完了しない場合は、光学ドライブ装置１００に光ディスクが搭載されていないと判定するようにすることが好ましい。すなわち、メディア情報取得に関する問合せコマンドに対する応答において「Ｆａｌｓｅ」を返した数が所定数以上となった場合、ホストＰＣ２００は、光学ドライブ装置１００に光ディスクが搭載されていないと判断する。
【０１０４】
この場合、ホストＰＣ２００は、ユーザーに対して光学ドライブ装置１００に光ディスクが搭載されていないことを通知すると共に、光ディスクの搭載を要求する。光ディスクが搭載されていない旨の通知および光ディスクの搭載の要求は、例えばホストＰＣ２００に備えられた表示モニターに文字または画像により表示するようにしてもよいし、ホストＰＣ２００に備えられたスピーカーから音声により通知するようにしてもよい。また、所定のＬＥＤなどを点灯（または点滅）させるなどしてユーザーに通知するようにしてもよい。
【０１０５】
また、光学ドライブ装置１００は、電源がオンになった時点で、光ディスクが搭載されているか否かを判定するようにしてもよい。そして、光学ドライブ装置１００において光ディスクが搭載されている状態であると判定された場合に、ホストＰＣ２００からのIDENTIFY DEVICEコマンドに対して応答するようにしてもよい。
【０１０６】
なお、電源がオンになった時点で、搭載されている光ディスクにＯＳプログラムが格納されているか否かを判定し、格納されていない場合には、その旨ユーザーに対して通知するようにしてもよい。
【０１０７】
（ホストＰＣ２００において実行させるプログラムの変形例）
ホストＰＣ２００に実行させることができるダミープログラムは、上述した動作処理において例示した問合せプログラムに限定されるものではない。
【０１０８】
ホストＰＣ２００に実行させることができるダミープログラムの他の例としては、光ディスクドライブ装置１００の診断プログラムを挙げることができる。
【０１０９】
この場合、図２におけるステップＳ９およびＳ１０における処理の代わりに、プログラム出力部１２３は、プログラム格納部１２４から診断プログラムを読み出し、読み出した診断プログラムをホストＰＣ２００に対して送信する。
【０１１０】
そして、診断プログラムを受信したホストＰＣ２００は、図２におけるステップＳ９およびＳ１０における処理の代わりに、受信した診断プログラムを実行し、光学ドライブ装置１００の診断を開始する。この場合にはＯＳの起動処理は実行せず、光学ドライブ装置１００の自己診断処理のみを実行することになる。
【０１１１】
（ホストＰＣ２００において実行させるプログラムの決定）
上述したように、プログラム格納部１２４に複数のプログラムが格納されている場合、プログラム格納部１２４からいずれのプログラムを読み出すのかは、ブート制御部１２０に備えられたスイッチ１２８により決定する。
【０１１２】
すなわち、スイッチ１２８がＯＳ起動モード側にセットされている場合には、図２におけるステップＳ９において説明したように、プログラム出力部１２３は、ダミープログラムとしてプログラム格納部１２４から問合せプログラムを読み出し、ホストＰＣ２００に対して送信する。一方、スイッチ１２８が自己診断モード側にセットされている場合には、図２におけるステップＳ９およびＳ１０の代わりに、プログラム出力部１２３は、ダミープログラムとしてプログラム格納部１２４から診断プロフラムを読み出し、ホストＰＣ２００に対して送信する。
【０１１３】
なお、スイッチ１２８は、ユーザーにより適宜切り替えることができるようなものであれば、どのような形状のものであってもよい。例えば、ボタンによって各モードが切り替わるようなものであってもよい。
【０１１４】
また、上記の説明では、スイッチ１２８がＯＳ起動モードと自己診断モードとの２つのモードを切り替え可能な場合について説明したが、３つ以上のモードに切り替えることが可能なスイッチであってもよい。
【０１１５】
（付記事項）
本実施形態では、ブート制御部１２０が光学ドライブ装置１００に備えられている場合を例に挙げて説明したが、もちろんこれに限定されるものではない。ブート制御部１２０は、光学ドライブ装置１００とは独立した装置であってもよい。
【０１１６】
この場合、プログラム供給装置は、ホストＰＣと光学ドライブ装置とを仲立ちする位置に配置される。したがって、上述したダミー値の送信処理では、ホストＰＣとプログラム供給装置との間でのみ情報の送受信が行われる。そして、上述した真値の取得処理では、プログラム供給装置と光学ドライブ装置との間でのみ情報の送受信が行われる。最後に、上述した光学ドライブ装置の再設定処理では、ホストＰＣと光学ドライブ装置との間でのみ情報の送受信が行われることになる。
【０１１７】
（プログラムおよび記録媒体）
最後に、ブート制御部１２０に含まれる制御部１２１、応答部１２２、プログラム出力部１２３、メディア情報取得部１２５、通知部１２６は、ハードウェアロジックによって構成すればよい。または、次のように、ＭＰＵなどのＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０１１８】
すなわち、ブート制御部１２０に含まれる制御部１２１、応答部１２２、プログラム出力部１２３、メディア情報取得部１２５、通知部１２６は、各機能を実現するプログラムの命令を実行するＭＰＵなどのＣＰＵ、このプログラムを格納したＲＯＭ（Read Only Memory）、上記プログラムを実行可能な形式に展開するＲＡＭ（Random Access Memory）、および、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）を備えている。
【０１１９】
そして、本発明の目的は、上記プログラムが制御部１２１、応答部１２２、プログラム出力部１２３、メディア情報取得部１２５、通知部１２６のプログラムメモリに固定的に担持されている場合に限らず、上記プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、または、ソースプログラム）を記録した記録媒体をブート制御部１２０に供給し、ブート制御部１２０が上記記録媒体に記録されている上記プログラムコードを読み出して実行することによっても、達成可能である。
【０１２０】
上記記録媒体は、特定の構造または種類のものに限定されない。すなわちこの記録媒体は、たとえば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などとすることができる。
【０１２１】
また、ブート制御部１２０（または光学ドライブ装置１００）を通信ネットワークと接続可能に構成しても、本発明の目的を達成できる。この場合、上記のプログラムコードを、通信ネットワークを介してブート制御部１２０に供給する。この通信ネットワークはブート制御部１２０にプログラムコードを供給できるものであればよく、特定の種類または形態に限定されない。たとえばインターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（Virtual Private Network）、電話回線網、移動体通信網、衛星通信網等であればよい。
【０１２２】
この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な任意の媒体であればよく、特定の構成または種類のものに限定されない。たとえばＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ（Asymmetric Digital Subscriber Line）回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１２３】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１２４】
本発明に係るブート制御部を備えた光学ドライブ装置は、ＣＤドライブ、ＤＶＤドライブおよびＢＤドライブなどの光学ドライブ全般として好適に利用することができる。
【図面の簡単な説明】
【０１２５】
【図１】ブート制御部を備えた光学ドライブ装置の要部構成を示すブロック図である。
【図２】ブート制御部を備えた光学ドライブ装置におけるＯＳの起動処理を示すフローチャートである。
【図３】ブート制御部を備えた光学ドライブ装置におけるＯＳの起動処理を示すフローチャートである。
【符号の説明】
【０１２６】
１００      光学ドライブ装置（光学ドライブ）
１１０      インターフェース
１２０      ブート制御部（プログラム供給装置）
１２１      制御部
１２２      応答部（固有情報出力手段）
１２３      プログラム出力部
１２４      プログラム格納部
１２５      メディア情報取得部（取得手段）
１２６      通知部
１２７      記憶部
１２８      スイッチ
１３０      ディスク取出検知部（検知手段）
１４０      ＡＴＡ／ＡＴＡＰＩ変換部
１５０      光学ドライブ部
１５１      光ディスク
２００      ホストコンピュータ
【図１】
2010140299.tif 000003
【図２】
2010140299.tif 000004
【図３】
2010140299.tif 000005