(57)【要約】【課題】コンピュータが省電力状態から短時間で復帰する方法を提供する【解決手段】ＯＤＤは省電力状態に移行する前に、ディスク１１１の装着状態を示す状態フラグ１２９を不揮発性メモリ１２７に設定する。省電力状態からレジュームする際に、ＢＩＯＳはＯＤＤにレディ通知を要求する。ＯＤＤは、状態フラグがディスクの未装着を示すと判断したときに、リード／ライト回路１１５およびスピンドル・モータ１１７などのサーボ機構の初期化を伴うディスク１１１の検出処理をしないで、ＢＩＯＳにディスクの未装着を示すレディ通知を送る。レディ通知を受け取ることでＢＩＯＳはレジューム処理を進めることができる。【選択図】図２
2014099125.tif 000002
【特許請求の範囲】
【請求項１】
リムーバル・メディアの装着が可能な再生装置が接続されたコンピュータを省電力状態から復帰させる方法であって、
前記省電力状態に移行する前に前記再生装置が前記リムーバル・メディアの装着状態を示す識別情報を設定するステップと、
前記省電力状態からレジュームする際に、ファームウェアが前記再生装置からのレディ通知を待つ機能を前記コンピュータに発揮させるステップと、
前記識別情報が前記リムーバル・メディアの未装着を示すと判断したときに前記再生装置が前記ファームウェアに前記リムーバル・メディアの未装着を示すレディ通知を送るステップと
を有する方法。
【請求項２】
前記再生装置がブート・ディスクの装着が可能な光学ディスク・ドライブである請求項１に記載の方法。
【請求項３】
前記再生装置は前記レジュームを開始してから所定の時間以内にイジェクト・ボタンが操作されたときに前記識別情報が前記リムーバル・メディアの装着を示すように設定する請求項２に記載の方法。
【請求項４】
前記省電力状態がハイバネーション状態で、前記再生装置から前記リムーバル・メディアの未装着を示すレディ通知を受け取った後に前記ファームウェアは前記ハイバネーション・データをメイン・メモリに復帰する機能を前記コンピュータに発揮させる請求項１から請求項３のいずれかに記載の方法。
【請求項５】
前記識別情報が前記リムーバル・メディアの装着を示すと判断したときに前記再生装置は前記リムーバル・メディアの装着状態を検査して前記ファームウェアに前記リムーバル・メディアの装着を示すレディ通知を送るステップを有する請求項１から請求項４のいずれかに記載の方法。
【請求項６】
前記リムーバル・メディアの未装着を示すレディ通知を送ったあとに、前記再生装置は前記リムーバル・メディアの装着状態を検査するステップを有する請求項１から請求項５のいずれかに記載の方法。
【請求項７】
省電力状態に遷移することが可能なコンピュータであって、
リムーバル・メディアの装着が可能で前記リムーバル・メディアの装着状態を示す識別情報を記憶する第１の不揮発性メモリを有する再生装置と、
ファームウェアを格納する第２の不揮発性メモリとを有し、
前記省電力状態からレジュームする際に、前記識別情報が前記リムーバル・メディアの未装着を示すと判断したときに前記再生装置が前記ファームウェアに前記リムーバル・メディアの未装着を示すレディ通知を送るコンピュータ。
【請求項８】
前記省電力状態からレジュームする際に、前記識別情報が前記リムーバル・メディアの装着を示すと判断したときに前記再生装置が前記リムーバル・メディアの装着状態を検査してから前記ファームウェアに前記リムーバル・メディアの装着を示すレディ通知を送る請求項７に記載のコンピュータ。
【請求項９】
前記再生装置が、ブート・ディスクを装着するトレイを備える光学ディスク・ドライブである請求項７または請求項８に記載のコンピュータ。
【請求項１０】
前記トレイが所定の時間オープン位置にあるときに前記ファームウェアは前記トレイに前記ディスクが未装着であるとみなして処理を継続する請求項９に記載のコンピュータ。
【請求項１１】
前記省電力状態からレジュームする際に、前記再生装置に電源が供給されてから一定の時間以内にイジェクト・ボタンが操作されたときに前記トレイをオープン位置に移動させる請求項９または請求項１０に記載のコンピュータ。
【請求項１２】
前記省電力状態がハイバネーション状態で、ハイバネーション・データを格納するソリッド・ステート・ドライブを有する請求項７から請求項１１のいずれかに記載のコンピュータ。
【請求項１３】
省電力状態に移行することが可能なコンピュータに接続される光学ディスク・ドライブがシステムにレディ通知を送る方法であって、
パワー・オン状態の間にディスクの装着状態を示す識別情報を不揮発性メモリに設定するステップと、
前記省電力状態からレジュームする際に前記不揮発性メモリの識別情報を確認するステップと、
前記識別情報が前記ディスクの未装着を示すときに、前記ディスクの装着状態を検査しないでシステムに前記ディスクの未装着を示すレディ通知を送るステップと
を有する方法。
【請求項１４】
省電力状態に移行することが可能なコンピュータに接続される光学ディスク・ドライブであって、
ディスクと、
サーボ機構と、
前記ディスクの装着状態を示す識別情報を記憶する不揮発性メモリと、
前記コンピュータが前記省電力状態に移行する前に前記不揮発性メモリに前記識別情報を設定し、前記省電力状態からレジュームする際に前記識別情報が前記ディスクの未装着を示すと判断したときに前記ディスクの装着状態を検査しないでシステムに前記ディスクの未装着を示すレディ通知を送るコントローラと
を有する光学ディスク・ドライブ。
【請求項１５】
リムーバル・メディアの装着が可能な再生装置が接続されたコンピュータを省電力状態から復帰させる方法であって、
前記省電力状態に移行する前にファームウェアが前記再生装置から前記リムーバル・メディアの装着状態を示す情報を受け取って識別情報を設定する機能を前記コンピュータに発揮させるステップと、
前記省電力状態からレジュームする際に、前記ファームウェアが前記再生装置からのレディ通知を待つ機能を前記コンピュータに発揮させるステップと、
前記識別情報が前記リムーバル・メディアの未装着を示すと判断したときに前記ファームウェアは前記レディ通知を受け取ったとみなしてレジューム処理をする機能を前記コンピュータに発揮させるステップと
を有する方法。
【請求項１６】
前記識別情報が前記リムーバル・メディアの装着を示すと判断したときに前記ファームウェアが前記レディ通知を受け取ってから前記レジューム処理をする機能を前記コンピュータに発揮させるステップを有する請求項１５に記載の方法。
【請求項１７】
レジュームの際に、前記再生装置は前記リムーバル・メディアの装着状態を検出して前記ファームウェアに前記リムーバル・メディアの装着または未装着を示す情報を送るステップを有する請求項１５または請求項１６に記載の方法。
【請求項１８】
省電力状態に遷移することが可能なコンピュータであって、
リムーバル・メディアの装着が可能な再生装置と、
前記リムーバル・メディアの装着状態を示す識別情報を記憶する第１の不揮発性メモリと、
省電力状態から復帰する際にレジューム処理をするファームウェアを格納する第２の不揮発性メモリとを有し、
前記省電力状態からレジュームする際に、前記識別情報が前記リムーバル・メディアの未装着を示すと判断したときに前記ファームウェアが前記再生装置からのレディ通知を受け取ったとみなして前記レジューム処理を行う機能を前記コンピュータに発揮させるコンピュータ。
【請求項１９】
前記省電力状態からレジュームする際に、前記識別情報が前記リムーバル・メディアの装着を示すと判断したときに前記ファームウェアが前記再生装置からのレディ通知を受け取ってから前記レジューム処理を行う機能を前記コンピュータに発揮させる請求項１８に記載のコンピュータ。
【請求項２０】
リムーバル・メディアの装着が可能な再生装置が接続されたコンピュータに、
省電力状態に移行する前に前記再生装置から前記リムーバル・メディアの装着状態を示す情報を受け取って識別情報を設定するステップと、
前記省電力状態からレジュームする際に前記再生装置からのレディ通知を待つステップと、
前記識別情報が前記リムーバル・メディアの未装着を示すと判断したときに前記レディ通知を受け取ったとみなしてレジューム処理をするステップと
を含む処理を実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、省電力状態のコンピュータが復帰するまでの時間を短縮する技術に関し、さらに詳細にはリムーバル・メディアの装着が可能な再生装置が接続されたコンピュータが復帰するまでの時間を短縮する技術に関する。
【背景技術】
【０００２】
ノートブック型パーソナル・コンピュータ（ノートＰＣ）またはタブレット端末などの携帯式コンピュータでは、バッテリィによる動作時間を確保するために、パワー・オン状態からサスペンド状態またはハイバネーション状態などの省電力状態に遷移する。ハイバネーション状態では、パワー・オン状態での各デバイスのシステム・コンテキストおよびメイン・メモリの記憶内容（ハイバネーション・データ）をハードディスク・ドライブ（ＨＤＤ）やソリッド・ステート・ドライブ（ＳＳＤ）などのディスク・ドライブに格納してからほとんどのデバイスの電力を停止する。パワー・オン状態に復帰（レジューム）する時はディスク・ドライブからハイバネーション・データを元の位置にリストアすることでパワー・オフ状態から起動するよりも復帰時間を短縮することができる。
【０００３】
レジュームする際には、すべてのデバイスに電源が投入される。最初にＢＩＯＳはそれまで電源が停止していたデバイスの検出、検査およびパラメータの設定などの初期化を行う。デバイスは必要に応じて自らの検査も行い、システムによる利用が可能な状態になるとＢＩＯＳにレディ通知を送る。すべてのデバイスからレディ通知を受け取ってハードウェア上の復帰処理が完了するとＢＩＯＳは復帰処理の制御をＯＳに移す。ＢＩＯＳは所定の時間が経過してもレディ通知をうけ取っていないデバイスがある場合は、当該デバイスの初期化をスキップしてＯＳに制御を渡すためレジューム時間が遅延する。また、ＢＩＯＳはレディ通知を受け取っていないデバイスにアクセスすることができない。
【０００４】
特許文献１は、書き込みを禁止する光磁気ディスクを収納するＯＤＤを搭載したノートＰＣの起動時間を短縮する発明を開示する。この発明では、ＢＩＯＳが電源オフ前にＯＤＤに実装された不揮発性メモリに、光磁気ディスクに対する書き込みを禁止するための動作設定を行うことを示す情報を書き込む。ＯＤＤは電源オン時に、この不揮発性メモリを参照して光磁気ディスクに対する書き込みを禁止する設定を自主的に行う。ＢＩＯＳは電源オン時にＯＤＤに光磁気ディスクに対する書き込みを禁止するためのコマンドを送る必要がないため、ノートＰＣの起動時間が短くなる。
【０００５】
特許文献２は、ディスク装置を搭載するノートＰＣの起動時間の短縮を図る発明を開示する。この発明では、電源を切断する際にＨＤＤに記憶されている起動情報を不揮発性メモリに書き込んで、不揮発性メモリにＨＤＤと同じ起動情報が記憶されていることを示すフラグを設定する。電源を投入した際には、不揮発性メモリにフラグが設定されているときは不揮発性メモリから起動情報を読み出してノートＰＣを起動する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１０−９４５３号公報
【特許文献２】特開２００８−４０９４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ＨＤＤ、ＳＳＤ、光学ディスク・ドライブ（ＯＤＤ）、ＵＳＢ接続の記憶装置、またはフロッピー（登録商標）・ディスク・ドライブ（ＦＤＤ）などはブート・ドライブ（起動ドライブ）の候補としてシステムに登録されている。これらの複数のブート・ドライブ候補には優先順位が割り当てられている。レジューム処理の際にＢＩＯＳは、優先順位にしたがって順番に各ブート・ドライブ候補にマスター・ブート・レコード（ＭＢＲ）またはブート・セクタが存在するか否かを検索する。
【０００８】
上位に設定されたブート・ドライブ候補からブート・セクタを検出したときは、ＢＩＯＳは当該ブート・ドライブ候補をブート・ドライブと認定して、そこからＯＳやデバイス・ドライバなどのブート・ファイルのロードを開始する。通常の状態でノートＰＣを利用する間は、ブート・ドライブがＨＤＤまたはＳＳＤになるが、ブート・セクタが破損したときのリカバリのためにＵＳＢ接続の記憶装置やＯＤＤには高い順位が設定されている。
【０００９】
したがってＯＤＤにブート・セクタを備えるＣＤ−ＲＯＭやＤＶＤなどのブート・ディスクが装着されている場合は、ＢＩＯＳはＯＤＤからブートするようにレジューム処理を行う。省電力状態またはパワー・オフ状態からノートＰＣが起動する際に、ＯＤＤにはブート・ディスクまたはそれ以外の通常のディスクのいずれかが装着されるかいずれのディスクも装着されない。なお、以後、ブート・ディスクおよび通常のディスクを含めて称する場合は単にディスクということにする。
【００１０】
ＯＤＤはブート・ディスクと通常のディスクの違いを認識することはできないが、ディスクの装着状態を検査することはできる。レジュームの際に、ＯＤＤはディスクが装着されているか否かを検査してＢＩＯＳにディスクの装着を示すレディ通知またはディスクの未装着を示すレディ通知を送る。ディスクの装着を示すレディ通知を受け取ったＢＩＯＳは、ＯＤＤにリード・コマンドを送ってブート・ディスクであるか否かを検査する。
【００１１】
ＢＩＯＳはブート・ディスクが装着されていると判断した場合はＯＤＤからブートし、通常のディスクが装着されていると判断した場合は下位のブート・ドライブ候補のいずれかからブートする。またＢＩＯＳは、ディスクの未装着を示すレディ通知を受け取った場合は、ＯＤＤがブート・ドライブでないと判断してレジューム処理を進める。これまでは、ディスクが装着されているか否かにかかわらず、ＯＤＤはレジュームする際に必ずディスクの装着状態を検査してからＢＩＯＳにその結果を含むレディ通知を送っていた。そしてディスクの装着状態を検査するためにＯＤＤはサーボ機構を動作させさらにディスクを回転させる必要があるためＢＩＯＳにレディ通知を送るまで一定の時間を費やしていた。
【００１２】
ＢＩＯＳはレディ通知を受け取ってＯＤＤを含む主要なデバイスが利用可能な状態になったことを確認しないとＯＳに制御を移すことができない。それらのデバイスのなかでレディ通知を送るまでの時間は機械的なサーボ機構を備えるＯＤＤがボトル・ネックになっていた。ところでレジューム時の多くの場合において、ＯＤＤにはディスクが装着されない。ＯＤＤにディスクが装着されていないときは、ＯＤＤがブート・ドライブになることはあり得ないので、ＢＩＯＳにディスクの未装着を示すレディ通知を送るために時間をかけてディスクの装着状態を検査する必要はない。
【００１３】
そこで本発明の目的は、コンピュータが省電力状態から短時間で復帰する方法を提供することにある。さらに本発明の目的は、そのような方法を実現するコンピュータ・プログラム、コンピュータおよび光学ディスク・ドライブを提供することにある。
【課題を解決するための手段】
【００１４】
本発明は、リムーバル・メディアの装着が可能な再生装置が接続されたコンピュータを省電力状態から復帰させる方法を提供する。本発明における再生装置は少なくともリムーバル・メディアの再生が可能な装置を意味しており、再生機能に加えて記録ができるものであってもよい。第１の態様では、省電力状態に移行する前に再生装置がリムーバル・メディアの装着状態を示す識別情報を設定する。識別情報は、再生装置がアクセスできる場所に配置された不揮発性メモリとすることができ、たとえば再生装置の内部に収納されたフラッシュ・メモリとすることができる。省電力状態からレジュームする際に、ファームウェアは再生装置からのレディ通知を待つ。
【００１５】
レディ通知を受け取らない場合にファームウェアはレジューム処理を少なくとも短時間は中断する必要がある。再生装置は最初にリムーバル・メディアの装着状態を識別情報で判断する。再生装置は識別情報がリムーバル・メディアの未装着を示すと判断したときにファームウェアにリムーバル・メディアの未装着を示すレディ通知を送る。再生装置はレディ通知を送る際には、サーボ機構を動作させてディスクの装着状態を検査しないため、短時間でリムーバル・メディアの未装着を示すレディ通知を送ることができる。よって、ファームウェアはレディ通知を受け取るまでの時間を短縮することができる。再生装置は、コンピュータが省電力状態に移行する前にサーボ機構を動作させてリムーバル・メディアの装着状態を検査するが、ここで費やす時間はレジューム処理の時間に影響を与えることはない。
【００１６】
再生装置を光学ディスク・ドライブとし、リムーバル・メディアをＭＢＲまたはブート・セクタなどを含むブート・ディスクとすることができる。ブート・ディスクが装着されて再生装置がブート・ドライブになる場合は、ファームウェアがＯＳにレジューム処理の制御を渡す前の段階で光学ディスク・ドライブにアクセスしてそこからブートする必要がある。ファームウェアはブート・ドライブになる可能性がある光学ディスク・ドライブからディスクが装着されている通知を受けた場合は、リード・コマンドを発行してディスクがブート・ディスクであるか否かを判断する必要がある。
【００１７】
そのためにこれまでは光学ディスク・ドライブはディスクが装着されていない場合でもディスクの装着状態を示すレディ通知をファームウェアに送っていたため、レジューム時間の遅延をもたらしていた。本発明によれば、光学ディスク・ドライブがブート・ディスクを装着することがある場合でも、レジュームの際に識別情報がリムーバル・メディアの未装着を示すと判断したときには光学ディスク・ドライブはサーボ機構の初期化およびディスクの装着状態の検査をしないで短時間でレディ通知を送ることができる。
【００１８】
光学ディスク・ドライブは、レジュームを開始してから所定の時間以内にイジェクト・ボタンが操作されたときに識別情報がリムーバル・メディアの未装着を示すように設定する。その結果、レジュームの開始直後にイジェクト・ボタンを操作してブート・ディスクを装着したような場合に、当該レジュームにおいて光学ディスク・ドライブはディスクの装着状態を検査してディスクの装着を示すレディ通知をファームウェアに送り、ファームウェアは光学ディスク・ドライブからブートすることができる。省電力状態がハイバネーション状態の場合は、再生装置からリムーバル・メディアの未装着を示すレディ通知を受け取った後にファームウェアはハイバネーション・データをメイン・メモリに復帰することができる。
【００１９】
識別情報がリムーバル・メディアの装着を示すと判断したときには、再生装置はリムーバル・メディアの装着状態を検査してファームウェアにリムーバル・メディアの装着を示すレディ通知を送ることができる。したがってリムーバル・メディアがブート・セクタを含んでいる場合に再生装置からブートすることができる。リムーバル・メディアの未装着を示すレディ通知を送ったあとに、再生装置がリムーバル・メディアの装着状態を検査すれば、リムーバル・メディアの装着状態と識別情報の設定に不一致が生じてもＯＳには正しい情報を知らせることができる。また、識別情報がリムーバル・メディアの未装着を示すように修正したあとにレジュームすれば、再生装置からブートすることができる。
【００２０】
本発明の他の態様では、省電力状態に移行する前にファームウェアが再生装置からリムーバル・メディアの装着状態を示す情報を受け取って識別情報を設定する。つぎに、省電力状態からレジュームする際に、ファームウェアは再生装置からのレディ通知を待つ。識別情報がリムーバル・メディアの未装着を示すと判断したときにファームウェアはレディ通知を受け取ったとみなしてレジューム処理をする。
【００２１】
識別情報がリムーバル・メディアの装着を示すと判断したときにファームウェアはレディ通知を受け取ってから復帰処理をすることができる。ファームウェアは省電力状態に移行する前に識別情報を設定するため、識別情報の設定がブート処理に遅延をもたらすことはない。識別情報がリムーバル・メディアの装着を示していた場合は、ファームウェアはこのレディ通知を受け取ってから復帰処理を進めることができる。識別情報がリムーバル・メディアの未装着を示している場合は、ファームウェアのレジューム処理と並行して再生装置はリムーバル・メディアの装着状態を検出してファームウェアにリムーバル・メディアの装着または未装着を示す情報を送るようにすれば、識別情報の設定状態とリムーバル・メディアの実際の装着状態に不一致があっても、ＯＳには正しく通知し、また、再度のレジュームによる再生装置からのブートを確保することができる。
【発明の効果】
【００２２】
本発明により、コンピュータが省電力状態から短時間で復帰する方法を提供することができた。さらに本発明により、そのような方法を実現するコンピュータ・プログラム、コンピュータおよび光学ディスク・ドライブを提供することができた。
【図面の簡単な説明】
【００２３】
【図１】ノートＰＣのハードウェア構成の一例を説明するための機能ブロック図である。
【図２】ＯＤＤのハードウェア構成の一例を説明するための機能ブロック図である。
【図３】ハイバネーション状態のノートＰＣがレジュームするときのＢＩＯＳの実行手順を示すフローチャートである。
【図４】ＯＤＤが内部のフラッシュ・メモリに状態フラグを設定するときの動作手順を示すフローチャートである。
【図５】ハイバネーション状態のノートＰＣがレジュームするときのＯＤＤの動作手順を示すフローチャートである。
【図６】ハイバネーション状態のノートＰＣがレジュームするときのＢＩＯＳの実行手順を示す図３に対応するフローチャートである。
【図７】ＯＤＤから情報を受け取ったＢＩＯＳがＮＶＲＡＭに状態フラグを設定するときの実行手順を示す図４に対応するフローチャートである。
【図８】ハイバネーション状態のノートＰＣがレジュームするときのＯＤＤの動作手順を示す図５に対応するフローチャートである。
【発明を実施するための形態】
【００２４】
［ノートＰＣの構成］
図１は、ノートＰＣ１０のハードウェア構成の一例を説明するための機能ブロック図である。多くのハードウェアの構成は周知であるため、ここでは本発明の理解に必要な範囲で説明する。最初にノートＰＣ１０のパワー・ステートについて説明する。ノートＰＣ１０は、ＡＣＰＩ（Advanced Configuration and Power Interface）の省電力機能に対応している。ＡＣＰＩでは、Ｓ１ステートからＳ４ステートまでの４つのスリーピング・ステート（省電力状態）、Ｓ０ステート（パワー・オン状態）、およびＳ５ステート（パワー・オフ状態）を定義している。
【００２５】
ＡＣＰＩのスリーピング・ステートのなかでノートＰＣ１０は、一例としてＳ３ステートとＳ４ステートだけを定義しているが他のスリーピング・ステートを定義してもよい。スリーピング・ステートのときはＣＰＵ１１の電源は停止する。Ｓ３ステート（サスペンド状態）は、メイン・メモリ１３の記憶を保持し、メイン・メモリ１３の記憶保持に必要のないデバイスの電源を停止する状態である。サスペンド状態に入る際にオペレーティング・システム（ＯＳ）は、電源が停止するデバイスが保持していたシステム・コンテキストをメイン・メモリ１３に退避し、パワー・オン状態に戻ったときにそれを各デバイスにリストアする。
【００２６】
Ｓ４ステート（ハイバネーション状態）は、ＡＣＰＩでサポートされるスリーピング・ステートの中で最も起動までの時間が長く、かつ消費電力が少ない状態である。ノートＰＣ１０がパワー・オン状態からハイバネーション状態に遷移する際には、ＯＳがＳＳＤ１９にメイン・メモリ１３が記憶するハイバネーション・データを格納してからパワー・コントローラ６１などの電源の起動に必要なデバイス以外のデバイスに対する電源を停止する。
【００２７】
Ｓ５ステートはいわゆるソフト・オフともいわれ、ＯＳがハイバネーション・データをＳＳＤ１９に格納しない点を除いては基本的に電力を供給するデバイスの範囲はハイバネーション状態と同じである。なお、本発明におけるハイバネーション状態には、ＯＳがＳ３ステートに遷移させてから所定の時間が経過したときにＢＩＯＳが自動的にハイバネーション状態に遷移させる状態も含む。この場合は、ＯＳはシステムがサスペンド状態に遷移していると認識するが、実際の電力状態はハイバネーション状態となる。
【００２８】
チップ・セット１７にはＣＰＵ１１、ＳＳＤ１９、ＵＳＢポート２１、ＢＩＯＳ＿ＲＯＭ３３、ＯＤＤ３５、およびエンベデッド・コントローラ（ＥＣ）４１接続されている。ＣＰＵ１１にはメイン・メモリ１３およびＬＣＤ１５が接続されている。チップ・セット１７は、さまざまな規格のインターフェース機能を備えており、図１では代表的にＳＡＴＡコントローラ２３、２９にＳＳＤ１９、ＯＤＤ３５が接続され、ＵＳＢコントローラ２５にＵＳＢポート２１が接続され、ＳＰＩ２７にＢＩＯＳ＿ＲＯＭ３３が接続され、ＬＰＣ３０にＥＣ４１が接続されている。チップ・セット１７は、パワー・ステートを制御するためのＡＣＰＩレジスタ３１を含んでいる。
【００２９】
ＡＣＰＩレジスタ３１には、パワー・オン状態からいずれかの省電力状態に遷移する際にＯＳが遷移先のパワー・ステートを示すフラグを設定する。ＳＳＤ１９はＯＳ、デバイス・ドライバ、アプリケーション・プログラム、およびユーザ・データなどを記憶する大容量の記憶装置（ディスク・ドライブ）である。ＳＳＤ１９はＭＢＲまたはブート・セクタを有し、通常はブート・ドライブとして動作する。ＵＳＢポート２１には、半導体メモリ、ハードディスク・ドライブ、またはＦＤＤなどの外付けのＵＳＢデバイスが接続される。
【００３０】
ＢＩＯＳ＿ＲＯＭ３３はパワー・オフ状態または省電力状態からパワー・オン状態に移行する際のＰＯＳＴ（Power On Self Test）を実行するコードを含むシステムＢＩＯＳを格納する。システムＢＩＯＳに代えてＥＦＩ（Extensible Firmware Interface）またはＵＥＦＩ（Unified EFI）を採用することもできる。本明細書においては、ＢＩＯＳ＿ＲＯＭ３３のような不揮発性メモリに格納されてＰＯＳＴなどのレジューム処理を実行するこれらのファームウェアを単にＢＩＯＳということにする。ＯＤＤ３５の構成は図２を参照して説明する。
【００３１】
ＥＣ４１には、電池コントローラ４３およびパワー・コントローラ６１が接続されている。ＥＣ４１は、ＭＰＵ、ＭＰＵが実行するファームウェアを格納するＲＯＭ、ＭＰＵの作業領域を提供するＲＡＭ、およびＥＥＰＲＯＭなどで構成されたマイクロ・コンピュータである。電池コントローラ４３には、リチウムイオン型の電池セルおよび保護回路などを含む電池ユニット４５が接続されている。電池コントローラ４５は電池セルの残容量を計算したり充放電時の安全を管理したりするマイクロ・コントローラである。電池コントローラ４３と電池ユニット４５は、スマート・バッテリィ・システム（ＳＢＳ）の規格に適合する電池パックとして構成することもできる。
【００３２】
パワー・コントローラ６１には、パワー・ボタン６３、リッド・センサ６５およびＤＣ／ＤＣコンバータ４９が接続されている。リッド・センサ６５は、ＬＣＤ筐体の開閉に応じて動作するスイッチである。パワー・コントローラ６１は、ＥＣ４１からの指示、パワー・ボタン６３の押下またはリッド・センサ６５の動作などに基づいてＤＣ／ＤＣコンバータ４９の動作を制御するワイヤード・ロジックのディジタル制御回路（ＡＳＩＣ）である。
【００３３】
ＤＣ／ＤＣコンバータ４９は、ＡＣ／ＤＣアダプタ４７または電池ユニット４５から供給される直流電圧を、ノートＰＣ１０を動作させるために必要な複数の電圧に変換し、さらにパワー・ステートに応じて定義された電力供給区分に基づいて各々のデバイスに電力を供給する。ＡＣ／ＤＣアダプタ４７は、電池ユニット４５を充電するとともにＤＣ／ＤＣコンバータ４９に電力を供給する。ＡＣ／ＤＣアダプタ４７が接続されていないときは、電池ユニット４５がＤＣ／ＤＣコンバータ４９に電力を供給する。
【００３４】
図２は、ＯＤＤ３５のハードウェアの構成の一例を説明するためのブロック図である。ＯＤＤ３５は、一例としてノートＰＣ１０の筐体に実装されている。ＯＤＤ３５は、信号端子１２２でコントローラ２９に接続され電源端子１２１でＤＣ／ＤＣコンバータ４９に接続される。ＯＤＤ３５は、トレイ・ローディング方式を採用し、ディスク１１１を着脱可能に収納するトレイ１１３を備えている。ただし本発明は、ハウジングの内部に直接ディスクを押し込むスロット・ローディング方式のＯＤＤに適用することも可能である。排出機構１１９は、矢印Ａで示すようにトレイ１１３をＯＤＤ３５のハウジングから外に排出してオープン位置に移動させたり、ハウジングの内部に収納してクローズ位置に移動させたりするモータ駆動機構を備えている。排出機構１１９は、トレイ１１３の位置を検出してコントローラ１２５にオープン位置またはクローズ位置を示す信号を送る。
【００３５】
トレイ１１３がクローズ位置に移動したときは、コントローラ１２５はリード／リライト回路１１５およびスピンドル・モータ１１７を動作させてディスク１１１にアクセスすることができる。スピンドル・モータ１１７は、ディスク１１１を収納するトレイ１１３がクローズ位置に移動したときに、ＣＰＵ１１からのリード／ライト・コマンドに応じてディスク１１１を回転させる。
【００３６】
リード／ライト回路１１５は、レーザ発射部、光学機構、フォーカス機構、トラッキング機構およびデータ信号処理回路を含む。リード／ライト回路１１５はさらに、トレイ１１３にディスク１１１が収納されたことを検出するディスク検出回路を備え、ディスク１１１が装着されていないときは、コントローラ１２５を通じてＣＰＵ１１にディスク未装着を示す信号を送る。電源回路１２３は、ＤＣ／ＤＣコンバータ４９から供給される電力をＯＤＤ３５の各デバイスに供給する。コントローラ１２５はチップ・セット１７を通じてＣＰＵ１１との間でデータ転送を行うためのＳＡＴＡのインターフェース回路、ＯＤＤ３５内のデバイスを制御する制御回路、プロセッサ、ファームエア、およびメモリなどを備えている。
【００３７】
コントローラ１２５には、フラッシュ・メモリ１２７が接続される。コントローラ１２５は、トレイ１１３がオープン位置からクローズ位置に移動するたびにリード／ライト回路１１５を通じてディスク１１１の装着状態を検査して、ディスク１１１が装着されている場合にフラッシュ・メモリ１２７に状態フラグ１２９をセットする。コントローラ１２５は、トレイ１１３がオープン位置に移動するたびに状態フラグ１２９をリセットする。コントローラ１２５は、排出機構１１９からトレイ１１３のオープン位置を示す信号を受け取ると、システムに通知する。
【００３８】
イジェクト・ボタン１３３は、ＯＤＤ３５のハウジングに設けられている。ＯＤＤ３５に電力が供給されているときにユーザがイジェクト・ボタン１３３を操作するとコントローラ１２５のイジェクト端子にイジェクト信号が供給される。コントローラ１２５はイジェクト信号を認識すると、ＯＳから排出を禁止されていない限り排出機構１１９を制御してトレイ１１３をオープン位置に移動させる。オープン位置のトレイ１１３をユーザが軽く手で押し込むと排出機構１１９がトレイ１１１をクローズ位置に戻す。
【００３９】
［レジュームの手順］
図３〜図５は、状態フラグ１２９を利用してレジューム時間を短縮する手順を説明するフローチャートである。図３は、ハイバネーション状態のノートＰＣ１０がレジュームするときのＢＩＯＳの実行手順を示すフローチャートである。ブロック２０１で、ノートＰＣ１０はハイバネーション状態に遷移しており、ＡＣＰＩレジスタ３１には現在のパワー・ステートがハイバネーション状態であることを示すフラグが設定されている。ＯＤＤ３５には、ＭＢＲ（Master Boot Recode）またはブート・セクタを含むブート・ディスクまたはそれらを含まない通常のディスクのいずれかが装着されている場合と、いずれのディスクも装着されてない場合がある。ハイバネーション状態やサスペンド状態などの省電力状態では少なくともＣＰＵ１１およびＯＤＤ３５の電力は停止する。
【００４０】
パワー・オン状態のときにチップ・セット１７の各コントローラやＯＤＤ３５などの周辺デバイスに設定されていたパラメータは、ハイバネーション状態に遷移する際にいずれかの不揮発性メモリに格納される。また、パワー・オン状態のときのシステム・コンテキストを含むメイン・メモリ１３のデータはハイバネーション・データとしてＳＳＤ１９に退避している。
【００４１】
ブロック２０３でパワー・ボタン６３が押下されるかまたはリッド・センサ６５が動作するとパワー・コントローラ６１はＤＣ／ＤＣコンバータ４９を動作させて動作が停止していたデバイスに電力を供給する。ブロック２０５で電力が供給されたＣＰＵ１１はリセットされる。ＣＰＵ１１は、あらかじめ定められたＢＩＯＳ＿ＲＯＭ３３のリセット・ベクタにアクセスしてインストラクションをフェッチする。ＣＰＵ１１によって基本的なデバイスの初期化が終わってメイン・メモリ１３が使用できるようになると、ＣＰＵ１１はＢＩＯＳ＿ＲＯＭ３３からＢＩＯＳを、不揮発性メモリからパラメータをそれぞれメイン・メモリ１３にロードする。
【００４２】
ＢＩＯＳは、ＡＣＰＩレジスタ３１を参照して今回のレジュームの遷移元がハイバネーション状態であることを理解するとＰＯＳＴの実行パスを決定する。ＰＯＳＴの実行パスは遷移元により異なる。遷移元がパワー・オフ状態のときは、最適なパラメータの選択を含む完全なＰＯＳＴが行われるが、サスペンド状態またはハイバネーション状態などの省電力状態のときは、レジューム時間を短縮するためにそれぞれに応じて簡略化したＰＯＳＴが行われる。ただし、以下に述べる状態フラグ１２９を利用したＯＤＤのＰＯＳＴは遷移元がいずれの省電力状態であっても適用することができる。
【００４３】
ブロック２０７でＢＩＯＳは、搭載されているデバイスの検出、検査、およびパラメータの設定などの初期化を行う。パワー・オフ状態からパワー・オン状態に遷移するときは、デバイスから取得した情報とコントローラの性能から判断した最適なパラメータを選択するが、省電力状態からレジュームするときは不揮発性メモリから読み出したパラメータを各デバイスにリストアしたり、検査を簡略化したりして短時間で完了できるようにすることができる。
【００４４】
ＯＤＤ３５に対してＢＩＯＳは、コントローラ１２５のＳＡＴＡインターフェースを初期化してＯＳに制御が移った後にシステムがＯＤＤ３５を認識できるようにする。ＢＩＯＳにより初期化が行われた各デバイスは、システムによる利用を可能にするためにそれぞれ自主的な検査を開始する。ＯＤＤ３５はコントローラ１２５が、リード／ライト回路１１５およびスピンドル・モータ１１７などのサーボ機構を初期化してからそれらを動作させて、トレイ１１３にディスク１１１が装着されているか否かを検査する。ただし、ＯＤＤ３５はディスク１１１がブート用のディスクかそれ以外のディスクかといったようなディスクの種類は識別しない。
【００４５】
ブロック２０９でＢＩＯＳは各デバイスに対して、使用可能状態になったことを示すレディ通知を要求するかまたは各デバイスからのレディ通知を待つ。各デバイスは相互に並行して自主的な検査を行い、システムによる利用が可能になるとＢＩＯＳにレディ通知を送る。ＯＤＤ３５はディスク１１１の装着状態の検査にサーボ機構の初期化および動作が必要となるため他のデバイスよりもレディ通知をするまでに長い時間を費やす。通常の手順ではブロック２１１でＯＤＤ３５以外のすべてのデバイスがＢＩＯＳにレディ通知を送る。ブロック２１３でＢＩＯＳがＯＤＤ３５からレディ通知を受け取らないときはブロック２１５に移行し、レディ通知を受け取ったときはブロック２３１に移行する。
【００４６】
ＢＩＯＳは、ＯＤＤ３５を含むすべてのデバイスからレディ通知を受け取らないと、それ以上レジューム処理を進めることができない。これまでのＯＤＤ３５は、実際のディスク１１１の装着状態にかかわらずディスク１１１の装着状態を検査し、装着を示すレディ通知または未装着を示すレディ通知のいずれかをＢＩＯＳに送っていた。本実施の形態では図４、図５を参照して説明するように、この時点ではディスク１１１の装着状態を検査しないでＯＤＤ３５は未装着を示すレディ通知を短時間で送ることができる。
【００４７】
ブロック２３１でＢＩＯＳが、ＯＤＤ３５からディスク１１１の装着を示すレディ通知を受け取った場合にブロック２３３に移行する。ブロック２３３でＢＩＯＳはＯＤＤ３５にリード・コマンドを送ってディスク１１１がブート・ディスクであるか否かを検査する。ディスク１１１がブート・ディスクで、ブート・ドライブ候補のデバイスの中でＯＤＤ３５の優先順位が高い場合は、ＢＩＯＳはハイバネーション・データの復帰をしないでＯＤＤ３５からブートを開始する。
【００４８】
その結果ノートＰＣ１０は、リカバリ用のブート・ディスクを装着したＯＤＤ３５からブートすることができる。ＢＩＯＳはディスク１１１がブート・ディスクでない判断した場合はブロック２３３からブロック２３５に移行する。ブロック２３１でＢＩＯＳがＯＤＤ３５から、ディスク１１１の未装着を示すレディ通知を受け取った場合にはブロック２３３をスキップしてブロックブロック２３５に移行する。
【００４９】
図５で説明するようにディスク１１１の未装着を示すレディ通知を受け取るまでの時間は、ディスク１１１の装着を示すレディ通知を受け取るまでの時間より短い。ブロック２３５でＢＩＯＳはＳＳＤ１９にアクセスしてハイバネーション・データをメイン・メモリ１３に復帰するとブロック２３７でＯＳに制御が移る。ＯＳがハイバネーション状態に遷移する前のシステム・コンテキストを各デバイスにリストアすると、ハイバネーション状態に遷移する前の動作環境に移行する。
【００５０】
レジュームの際にＯＤＤ３５に電力が供給されるとユーザはイジェクト・ボタン１３３を操作してトレイ１１３をオープン位置に移動させることができる。トレイ１１３がオープン位置にある間はディスクの装着状態が定まらないため、ＯＤＤ３５はディスクの装着または未装着のいずれのレディ通知も送ることができない。ＯＤＤ３５はトレイ１１３がオープン位置にあるときにＢＩＯＳにオープン通知を送る。
【００５１】
ブロック２１５、２１７でＢＩＯＳは、ＯＤＤ３５からオープン通知を受け取ってからの経過時間を監視する。トレイ１１３がクローズ位置にあるときはやがてＯＤＤ３５からいずれかのレディ通知が送られてくるのでブロック２１３に移行する。ＢＩＯＳはオープン通知を受け取ってから一定の時間以上経過したと判断したときはディスク１１１が未装着であるとみなして、ブロック２３５でＳＳＤ１９に格納されていたハイバネーション・データをメイン・メモリ１３に復帰させる。図３の手順は、ＢＩＯＳがＯＤＤ３５からレディ通知を受け取るまでの時間が全体のレジューム時間のボトル・ネックになっていることをも示している。
【００５２】
［状態フラグの設定］
図４は、ＯＤＤ３５がフラッシュ・メモリ１２７に状態フラグ１２９を設定するときの動作手順を示すフローチャートである。状態フラグ１２９は、コントローラ１２５のファームウェアが設定する。ブロック３０１でノートＰＣ１０はパワー・オン状態でＯＤＤ３５には電源が投入されている。トレイ１１３はクローズ位置にありディスク１１１は装着または未装着の状態である。状態フラグ１２９は、それまでの履歴においてセットされてディスク１１１が装着されていない状態を示すかまたはリセットされてディスク１１１が装着されている状態を示している。
【００５３】
ブロック３０３でユーザはディスク１１１を装着するか取り出すためにイジェクト・ボタン１３３を操作してトレイ１１３をオープン位置に移動させる。トレイ１１３がオープン位置に移動すると、コントローラ１２５はＢＩＯＳまたはＯＳにオープン通知をする。トレイ１１３がクローズ位置を維持するときは状態フラグ１２９を変更しないでブロック３１７に移行する。トレイ１１３がオープン位置に移動したときは、ディスク１１１の装着状態が不定になるためコントローラ１２５はブロック３０５で状態フラグ１２９を一旦リセットする。
【００５４】
ブロック３０７で、ユーザはトレイ１１３を押し込んでクローズ位置に戻すかオープン位置を維持する。トレイ１１３がオープン位置を維持する場合はブロック３１７に移行する。トレイ１１３がクローズ位置まで移動したことを検出するとブロック３０９でコントローラ１２５はリード／ライト回路１１５およびスピンドル・モータ１１７を動作させてディスク１１１の装着状態を検出する。ブロック３１１でコントローラ１２５はディスク１１１が装着されていると判断するとブロック３１５に移行して状態フラグ１２９をリセットしてからブロック３１７に移行する。
【００５５】
ブロック３１１でコントローラ１２５はディスク１１１が装着されていると判断するとブロック３１３に移行する。ブロック３１３でコントローラ１２５は、状態フラグ１２９をセットしてからブロック３１７に移行する。ブロック３１７で、パワー・ボタン６３の押下、リッド・センサ６５の動作、またはＧＵＩのアイコンを通じた操作などによりハイバネーション状態に移行するトリガが生成される。
【００５６】
トリガを検出したＯＳは、動作中のアプリケーション・プログラムにハイバネーション状態に移行する通知をする。各アプリケーション・プログラムからハイバネーション状態への移行準備が完了した通知を受け取ると、システム・コンテキストをメイン・メモリ１３に書き込んだあとで、メイン・メモリ１３のハイバネーション・データをＳＳＤ１９に退避させる。
【００５７】
その後、ＡＣＰＩレジスタ３１にハイバネーション状態への遷移をイネーブルにする設定をすると、チップ・セット１７はＥＣ４１を通じて電源をハイバネーション状態に制御する。上記の手順ではハイバネーション状態に移行するトリガが発生する前に状態フラグ１２９のセットまたはリセットをしている。他の方法では、トリガが発生した時点でディスクの検出処理をして状態フラグ１２９をセットまたはリセットするようにしてもよいが省電力状態へ遷移するまでの時間が遅延する。
【００５８】
ここまでの手順では、トレイ１１３をオープン位置に移動させるためにはイジェクト・ボタン１３３を操作して電気的な排出機構１１９の動作を利用している。したがって、ハイバネーション状態において、ディスク１１１の装着状態と状態フラグ１２９の設定状態は一致している。ＯＤＤ３５には、排出機構１１９や電源回路１２３の故障などの非常時の際に強制的にディスク１１１を取り出すための機械的な非常ボタンも用意されている。省電力状態の間に非常ボタンが操作されてトレイ１１３が移動したことをコントローラ１２５は検出することができないため、状態フラグ１２９の状態と実際のディスク１１１の装着状態が一致しない場合がある。以下の手順では、このような状態も考慮したレジュームの際のＯＤＤの動作手順を説明する。
【００５９】
［レジューム時のＯＤＤの動作手順］
図５は、ハイバネーション状態のノートＰＣ１０がレジュームするときのＯＤＤ３５の動作手順を示すフローチャートである。ブロック４０１は、図３のブロック２０７、２０９に対応し、システムのパワー・オン状態への移行開始にともないＯＤＤ３５にも電源が投入されコントローラ１２５はリセットされる。コントローラ１２５は、ＢＩＯＳによるＳＡＴＡインターフェースの初期化が終了するとＢＩＯＳからレディ通知を送るように要求される。ブロック４０３でコントローラ１２５は、リード／ライド回路１１５およびスピンドル・モータ１１７などのサーボ機構の初期化を行って、システムがＯＤＤ３５にアクセスできる状態にする。
【００６０】
ＯＤＤ３５からブートする場合は、システムの電源が起動したときにトレイ１１３にブート・ディスクが装着されている必要がある。しかしハイバネーション状態のときに必ずしもトレイにブート・ディスクが装着されているとは限らない。この場合一旦パワー・オン状態まで遷移させてからイジェクト・ボタン１３３を操作してディスク１１１を装着し、再び省電力状態に遷移させることは面倒なため、ユーザは起動ボタン６３を押下してＯＤＤ３５に電力が供給された直後にイジェクト・ボタン１３３を操作してトレイ１１３をオープン位置に移動させる場合がある。
【００６１】
ブロック４０５でコントローラ１２５は、ＢＩＯＳにレディ通知をする前に一定の時間を確保してユーザにこのような操作の機会を与える。一定の時間が経過するまでの間にブロック４５１でイジェクト・ボタン１３３が操作されるとコントローラ１２５はトレイ１１３をオープン位置に移動させる。トレイ１１３がオープン位置に移動するとコントローラ１２５はブロック４５３で状態フラグ１２９をリセットしてブロック４０５に戻る。
【００６２】
ブロック４０５で所定の時間が経過するとブロック４０７でコントローラ１２５はトレイ１１３の位置を判断する。トレイ１１３がオープン位置にあるときはブロック４２３に移行し、クローズ位置にあるときはブロック４０９に移行する。ブロック４２３でコントローラ１２５は、ＢＩＯＳにトレイ１１３がオープン位置にあることを示すオープン通知を送る。ＢＩＯＳはオープン通知を図３のブロック２１５で処理する。
【００６３】
ブロック４０９でコントローラ１２５は状態フラグ１２９を確認する。状態フラグ１２９がセットされてディスク１１１の未装着を示すときはブロック４３３に移行し、リセットされてディスク１１１の装着を示すときはブロック４１１に移行する。ブロック４３３でコントローラ１２５は、ディスク１１１の装着状態を検査しないでＢＩＯＳにディスク１１１の未装着を示すレディ通知を送る。ＢＩＯＳは図３のブロック２３１でこのレディ通知を処理する。ディスク１１１の装着状態を検査するためには、リード／ライト回路１１５およびスピンドル・モータ１１７などのサーボ機構を初期化してから動作させる必要があり所定の時間を費やすが、ブロック４０９、４３３の処理はディスク１１１の装着状態を検査する前であるため短時間で終了する。
【００６４】
ハイバネーション状態のときに非常ボタンを操作しトレイ１１３をオープン位置に移動させてからディスク１１１を装着したときは、コントローラ１２７はオープン位置への移動を認識しないため状態フラグ１２９をリセットしない。したがって、ディスク１１１が装着されたにもかかわらずコントローラ１２５はディスク１１１の未装着を示すレディ通知をＢＩＯＳに送る。ＢＩＯＳはこれを図３のブロック２３１から２３５へのパスで処理するため、ＯＤＤ３５にブート・ディスクが装着されていても、この時点ではＯＤＤ３５からブートすることはできない。
【００６５】
コントローラ１２５はブロック４３３でディスク１１１の未装着を示すレディ通知をしたあとにブロック４３５でディスク１１１の検出処理をする。ブロック４３３ですでにレディ通知を送っているため、この時点でディスク１１１の検出処理をしてもレジューム時間の遅延をもたらすことはない。状態フラグ１２９がセットされているにもかかわらず非常ボタンでトレイ１１３をオープン位置に移動させてディスク１１１を装着したときは、ブロック４３７でコントローラ１２５がディスク１１１の装着を検出することができる。ディスク１１１の装着を検出したコントローラ１２５はブロック４３９で状態フラグ１２９をリセットする。
【００６６】
この時点でＢＩＯＳは図３のブロック２１１、２１３でＯＤＤ３５を含むすべてのデバイスからレディ通知を受け取ってブロック２３７でＯＳに制御を渡している。また、ＢＩＯＳはＯＳに制御を渡す際に、ＯＤＤ３５にはディスクが未装着であると知らせている。ＯＳは、ＯＤＤ３５のアイコンにディスクが未装着であることを表示する。ブロック４４１でコントローラ１２５はＯＳにディスク１１１が装着されていることを通知する。通知を受け取ったＯＳは、ＯＤＤ３５のアイコンにディスク１１１が装着されていることを表示する。
【００６７】
よって、非常ボタンを利用したディスク１１１の装着では、ＯＤＤ３５からブートすることができなくなる。しかしこの場合は、ブロック４３９で状態フラグ１２９をリセットしたあとに再度ハイバネーション状態またはパワー・オフ状態から起動するとブロック４１１、４１３の手順に移行して、ＯＤＤ３５からブートできるようになる。ブロック７４０９でディスク１１１が装着されていると判断したコントローラ１２５はブロック４１１で、ディスク１１１の検出処理をする。ブロック４１３でコントローラ１２５はＢＩＯＳにディスク１１１の装着を示すレディ通知を送る。ＢＩＯＳは、図３のブロック２３１、２３３でこのレディ通知を処理する。
【００６８】
ハイバネーション状態の間の非常ボタンの操作によりディスク１１１が取り出されることもある。ブロック４１１でコントローラ１２５は、ディスク１１１の装着状態を検査して実際にディスク１１１が装着さていないと判断したときはブロック４１３でディスク１１１の未装着を示すレディ通知を送ることができるが、ブロック４１１でディスク１１１の検出処理をして図３のブロック２３１からブロック２３３のパスを経由するためレジューム時間の短縮を図ることはできない。ただし、非常ボタンの操作は頻度が少ないので、多くの場合のレジューム時間の短縮に支障をきたすことはない。
【００６９】
図５の手順では、状態フラグ１２９がセットされている場合は、ディスク１１１の検出処理を省いてＢＩＯＳにディスク１１１の未装着を示すレディ通知をするため、トレイ１１３にディスク１１１が装着されない多くの場合のレジュームを短時間で終了できる。また、ＯＤＤ３５にブート・ディスクが装着された場合は、ＯＤＤからブートすることができる。
【００７０】
［状態フラグをＢＩＯＳが不揮発性メモリに記憶する方法］
これまで、状態フラグ１２９をＯＤＤ３５のフラッシュ・メモリ１２７にセットする例を説明したが、状態フラグはＢＩＯＳがＢＩＯＳ＿ＲＯＭ３３またはレジューム中にＢＩＯＳがアクセスできるその他の不揮発性メモリ（ＮＶＲＡＭ）にセットすることもできる。状態フラグを設定するＮＶＲＡＭは、ＬＰＣのインターフェースで図１に示したチップ・セット１７に接続することができる。その場合の動作手順を図６〜図８を参照して説明する。図６〜図８の手順は、図３〜図５の手順と多くの点で共通するので同一の手順には同一の参照番号を記載して説明を省略する。
【００７１】
図６はハイバネーション状態のノートＰＣ１０がレジュームするときのＢＩＯＳの実行手順を示す図３に対応するフローチャートである。ブロック５０１でＢＩＯＳは、ＮＶＲＡＭの状態フラグを確認する。ＢＩＯＳは状態フラグがセットされていることを確認するとディスク１１１が未装着であると判断してまたはディスク１１１の未装着を示すレディ通知を受け取ったとみなしてブロック２３５に移行する。ブロック５０１でＢＩＯＳは状態フラグがリセットされていることを確認するとブロック２１３に移行する。図６の手順で状態フラグがセットされているときは、ＢＩＯＳはＯＤＤ３５からのレディ通知を待たないでブロック２３５の処理を行うことができる。
【００７２】
図７はＯＤＤ３５から情報を受け取ったＢＩＯＳがＮＶＲＡＭに状態フラグをセットするときの実行手順を示す図４に対応するフローチャートである。ブロック６０１では、コントローラ１２５からトレイ１１３がオープン位置に移動したことの通知を受け取ったＯＳまたはＢＩＯＳはＮＶＲＡＭの状態フラグをリセットする。ブロック６０３でＯＳまたはＢＩＯＳがＯＤＤ３５からディスク装着またはディスク未装着を示す情報を受け取る。ブロック６０５でＯＤＤ３５からディスク１１１の未装着を示す情報を受け取ったＯＳまたはＢＩＯＳはブロック６０７でＮＶＲＡＭの状態フラグをセットする。ブロック６０５でＯＤＤ３５からディスク１１１の装着を示す情報を受け取ったＯＳまたはＢＩＯＳはブロック６０９でＮＶＲＡＭの状態フラグをリセットする。
【００７３】
図８は、ハイバネーション状態のノートＰＣ１０がレジュームするときのＯＤＤ３５の動作手順を示す図５に対応するフローチャートである。ブロック７０１でコントローラ１２５はディスク１１１の検出処理をしてブロック７０３に移行する。このとき、図６のブロック５０１でＢＩＯＳがＮＶＲＡＭの状態フラグがセットされていること確認したときは、ブロック２３５でＯＤＤ３５からのレディ通知を待たないで処理を進め、リセットされていることを確認したときはブロック２１３でＯＤＤ３５からのレディ通知を待っている。
【００７４】
ブロック７０３でコントローラ１２５は、ディスク１１１が未装着であると判断したときはブロック７０５に移行して、ＯＳにディスク１１１の未装着を示すレディ通知を送る。このとき状態フラグがセットされていればレディ通知を待たないで図６のブロック５０１、２３７によりレジュームの制御はＯＳに渡っている。状態フラグがリセットされているときは、ＯＳは図７のブロック６０７の手順でＮＶＲＡＭに状態フラグをセットする。
【００７５】
ブロック７０３でコントローラ１２５はディスク１１１が装着されていると判断したときはブロック７０７に移行してＢＩＯＳにディスク１１１の装着を示すレディ通知を送る。このとき状態フラグがリセットされていればＢＩＯＳは図６のブロック２１３でこのレディ通知を受け取る。状態フラグがセットされていれば図７のブロック６０９で状態フラグをリセットする。
【００７６】
図６〜図８の手順では、ＯＤＤ３５はこれまでと同じ動作をしてレジューム時にサーボ機構の初期化およびディスク１１１の検出処理をするが、ＢＩＯＳはパワー・オン状態で設定されたＮＶＲＡＭの状態フラグがディスク１１１の未装着を示すときにＯＤＤ３５からのレディ通知を待たないでレジューム処理をすることができる。このときＢＩＯＳはＯＳにディスク１１１の未装着を示す情報を送る。ＢＩＯＳからディスク１１１の未装着を示す情報を受け取ったＯＳは、ディスク未装着のアイコンを表示する。
【００７７】
図６のブロック５０１で状態フラグがセットされていたにもかかわらず非常ボタンの操作によりディスク１１１が装着されていた場合は、ブロック７０７でＯＤＤ３５がレディ通知を送る時点でレジューム処理の制御はブロック２３７でＯＳに移行している。その後ＯＳがディスク１１１の装着を示すレディ通知を受け取ったときにアイコンの表示を変更する。
【００７８】
図６のブロック５０１で状態フラグがリセットされていたにもかかわらず、非常ボタンの操作によりディスク１１１が未装着の場合は、ブロック２１３、２３３の手順でＢＩＯＳがディスク１１１のデータを読み取れないと判断したときにブロック２３５に移行する。この場合、ディスク１１１が未装着であるにもかかわらず、ＯＤＤ３５からのレディ通知を待つことになるが、非常ボタンの操作は頻度が少ないため、多くの場合においてレジューム時間を短縮することができる。
【００７９】
［その他］
これまで、レジューム時間を短縮する際にボトル・ネックになるデバイスとしてＯＤＤを例示して説明したが、本発明はカートリッジ式テープを装着して使用するテープ・ドライブなどの他のリムーバル・メディアを備えるデバイスに適用することもできる。また、ブート・ドライブとなる記憶装置を例にして説明したが、本発明はブート・ドライブ以外の通常のディスク・ドライブに適用することもできる。
【００８０】
本発明が適用できる省電力状態はハイバネーション状態に限定するものではなく、サスペンド状態やＯＳがサスペンド状態に移行させたあとにＢＩＯＳがハイバネーション状態に移行させるタイプの省電力状態に適用することもできる。ＯＤＤ３５は、ＳＡＴＡコントローラ２９に接続するタイプに限定する必要はなく、ＵＳＢコントローラ２５などの他のタイプのコントローラに接続するものであってもよい。
【００８１】
ＯＤＤ３５は、ノートＰＣ１０の筐体に実装されるものに限定する必要はなく、ネットワークを通じて接続するタイプ、またはノートＰＣの筐体に設けたポートに接続するタイプでもよい。本発明はノートＰＣ１０がＯＤＤ３５を搭載していても、Ｗｉｎｄｏｗｓ（登録商標）８が要求するＳＳＤにハイバネーション・データを格納した省電力状態からレジュームする際のレジューム時間の要求を満たすことができる。
【符号の説明】
【００８２】
１０  ノートＰＣ
１７  チップ・セット
１１１  ディスク
１１３  トレイ
１２７  フラッシュ・メモリ
１３３  イジェクト・ボタン
【図１】
2014099125.tif 000003
【図２】
2014099125.tif 000004
【図３】
2014099125.tif 000005
【図４】
2014099125.tif 000006
【図５】
2014099125.tif 000007
【図６】
2014099125.tif 000008
【図７】
2014099125.tif 000009
【図８】
2014099125.tif 000010