(57)【要約】【課題】キャッシュ用の記憶装置の新たな利用用途をＯＳ側に提供する。【解決手段】コンピュータ１００が、自装置を制御するＯＳがキャッシュとして使用可能なターボメモリ１０９を接続する接続Ｉ／Ｆ１０８と、接続されたターボメモリ１０９を、ユーザの操作に従ってデータの読み書き可能な記憶領域として使用するか否かを判定する判定部２１２と、ターボメモリ１０９を、記憶領域として使用すると判定した場合、記憶装置デバイスの記憶領域としてＯＳに認識させるデバイス認識部２１３と、ターボメモリ１０９を記憶領域として使用しないと判定した場合、ターボメモリ１０９をキャッシュとしてＯＳに使用させる制御を行うキャッシュ処理部２１４と、を備える。【選択図】        図２
2010128973.tif 000002
【特許請求の範囲】
【請求項１】
自装置を制御するＯＳがキャッシュとして使用可能な記憶装置を接続する接続手段と、
接続された前記記憶装置を、ユーザの操作に従ってデータの読み書き可能な記憶領域として使用するか否かを判定する判定手段と、
前記記憶装置を、前記記憶領域として使用すると判定した場合、前記記憶領域として前記ＯＳに認識させる認識手段と、
前記記憶装置を前記記憶領域として使用しないと判定した場合、当該記憶装置をキャッシュとして前記ＯＳに使用させる制御を行うキャッシュ制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記キャッシュ制御手段は、前記ＯＳが任意の記憶手段を読み込み先として使用する際に、当該任意の記憶手段より先にアクセスを行うアクセス先として前記記憶装置を設定することで、前記記憶装置をキャッシュとして前記ＯＳに使用させる制御を行うこと、
を特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記憶装置が、ＮＶＲＡＭであることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
自装置上に搭載されたＢＩＯＳ上に、前記判定手段、前記認識手段及び前記キャッシュ処理手段を有していること、を特徴とする請求項１乃至３のいずれか一つに記載の情報処理装置。
【請求項５】
入力デバイスを介して、前記記憶装置を、前記記憶領域として使用するか否かの選択を受け付ける選択受付手段をさらに備え、
前記判定手段は、前記選択受付手段が受け付けた選択に従って判定すること、
を特徴とする請求項１乃至４のいずれか一つに記載の情報処理装置。
【請求項６】
前記判定手段は、自装置に搭載されたＯＳに基づいて判定を行うこと、を特徴とする請求項１乃至４のいずれか一つに記載の情報処理装置。
【請求項７】
情報処理装置で実行される情報処理方法であって、
前記情報処理装置で実行されるＢＩＯＳが、前記情報処理装置に接続された前記記憶装置を、ユーザの操作に従ってデータの読み書き可能な記憶領域として使用するか否かを判定する判定ステップと、
前記ＢＩＯＳが、前記記憶装置を、前記記憶領域として使用すると判定した場合、前記記憶領域として、前記情報処理装置上で起動するＯＳに認識させる認識ステップと、
前記ＢＩＯＳが、前記記憶装置を前記記憶領域として使用しないと判定した場合、当該記憶装置をキャッシュとして前記ＯＳに使用させるよう制御するキャッシュ制御ステップと、
を有することを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、記憶装置を制御する情報処理装置、及び情報処理方法に関するものである。
【背景技術】
【０００２】
従来から、コンピュータ技術の向上に伴い、コンピュータに使用する様々なハードウェアデバイスが提案されている。これらハードウェアデバイスを適用することで、コンピュータの処理速度や利便性を向上させることができる。
【０００３】
例えば、特許文献１には、フラッシュメモリを、データの読み書き可能なディスク的な利用を可能にする技術が提案されている。当該技術を用いた場合には、フラッシュメモリをディスク的に利用することで、高速な読み書きが可能になる。
【０００４】
ところで、近年、ＯＳの処理速度を向上させるために、コンピュータに接続するハードウェアデバイスとしてインテル（登録商標）ターボメモリが提案されている。このインテル（登録商標）ターボメモリは、ＨＤＤより読み込み速度が速いＮＶＲＡＭを搭載し、ＨＤＤから読み込まれたデータを格納するキャッシュとして使用されることで、アクセス速度の向上を図るデバイスである。
【０００５】
このターボメモリは製品化されているにも拘わらず、サポートしていないＯＳも存在する。この場合、ターボメモリをキャッシュ以外の用途であっても利用できない。また、ターボメモリをサポートしているＯＳであっても、キャッシュ以外の目的で利用したいという要求もあると考えられる。
【０００６】
【特許文献１】特開平１０−２７１２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載された技術は、フラッシュメモリをＤ−ＲＡＭと同じメモリボード上に搭載し、既存のモジュール等を用いてディスク的に使用することで、高速な読み書きをした技術に留まっており、キャッシュなどの所定の目的のために接続されたフラッシュメモリを、他の用途で利用するといった機能拡張を行う技術ではない。
【０００８】
本発明は、上記に鑑みてなされたものであって、キャッシュとして使用するために接続された記憶装置を、他の用途で利用可能にする情報処理装置、及び情報処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するために、本発明にかかる情報処理装置は、自装置を制御するＯＳがキャッシュとして使用可能な記憶装置を接続する接続手段と、接続された前記記憶装置を、ユーザの操作に従ってデータの読み書き可能な記憶領域として使用するか否かを判定する判定手段と、前記記憶装置を、前記記憶領域として使用すると判定した場合、前記記憶領域として前記ＯＳに認識させる認識手段と、前記記憶装置を前記記憶領域として使用しないと判定した場合、当該記憶装置をキャッシュとして前記ＯＳに使用させる制御を行うキャッシュ制御手段と、を備えることを特徴とする。
【００１０】
また、本発明にかかる情報処理方法は、情報処理装置で実行される情報処理方法であって、前記情報処理装置で実行されるＢＩＯＳが、前記情報処理装置に接続された前記記憶装置を、ユーザの操作に従ってデータの読み書き可能な記憶領域として使用するか否かを判定する判定ステップと、前記ＢＩＯＳが、前記記憶装置を、前記記憶領域として使用すると判定した場合、前記記憶領域として、前記情報処理装置上で起動するＯＳに認識させる認識ステップと、前記ＢＩＯＳが、前記記憶装置を前記記憶領域として使用しないと判定した場合、当該記憶装置をキャッシュとして前記ＯＳに使用させるよう制御するキャッシュ制御ステップと、を有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、キャッシュとして使用可能な記憶装置の新たな利用用途をＯＳに対して提供できるという効果を奏する。
【発明を実施するための最良の形態】
【００１２】
以下に添付図面を参照して、この発明にかかる情報処理装置、及び情報処理方法の最良な実施の形態を詳細に説明する。
【００１３】
（第１の実施の形態）
図１は、本実施の形態にかかるコンピュータ１００のハードウェア構成を示した図である。図１に示すように、コンピュータ１００は、ＣＰＵ１０１、ノースブリッジ（ＮＢ）１０２、システムメモリ１０３、サウスブリッジ（ＳＢ）１０４、グラフィクスコントローラ（ＧＰＵ）１０５、ハードディスクドライブ（ＨＤＤ）１０６、ＢＩＯＳ−ＲＯＭ１０７を有している。また、コンピュータ１００は、接続Ｉ／Ｆ１０８を介してＰＣＩバスで、ターボメモリ１０９と接続されている。なお、ＣＰＵ１０１、ノースブリッジ１０２を統合してＣＰＵ１０１’として構成しても良い。
【００１４】
ＣＰＵ１０１はコンピュータ１００の動作を制御するプロセッサであり、ＨＤＤ１０６からシステムメモリ１０３にロードされる、オペレーティングシステム（ＯＳ）を実行する。また、ＣＰＵ１０１は、ＢＩＯＳ−ＲＯＭ１０７に格納されたシステムＢＩＯＳ（Basic  Input  Output  System）もシステムメモリ１０３に展開するなどして実行する。システムＢＩＯＳはハードウェア制御のためのプログラムである。
【００１５】
ＮＢ１０２は、ＣＰＵ１０１のローカルバスとＳＢ１０４との間を接続するブリッジデバイスである。ＮＢ１０２には、システムメモリ１０３をアクセス制御するメモリコントローラも内蔵されている。また、ＮＢ１０２は、ＡＧＰ（Accelerated  Graphics  Port）バス、PCI  express規格のシリアルバスなどを介してＧＰＵ１０５との通信を実行する機能も有している。
【００１６】
ＧＰＵ１０５は、コンピュータ１００と接続されたディスプレイモニタ１５０を制御する表示コントローラである。
【００１７】
ＳＢ１０４は、ＬＰＣ（Low  Pin  Count）バス上の各デバイス、ＰＣＩ（Peripheral  Component  Interconnect）バスに接続されている各デバイス（例えばターボメモリ１０９）を制御する。また、ＳＢ１０４は、ＨＤＤ１０６を制御するためのＳＡＴＡ（Serial  Advanced  Technology  Attachement）コントローラを内蔵している。また、ＳＢ１０４が制御するＰＣＩバス上に備えられた接続Ｉ／Ｆ１０８の例としては、ＰＣＩコネクタＩ／Ｆなどがある。
【００１８】
ターボメモリ１０９は、ＰＣＩオプションＲＯＭ１１１と、ＮＶＲＡＭ１１２とを搭載し、コンピュータ１００と接続可能なオプションカードである。ターボメモリの例としては、インテル（登録商標）ターボメモリがある。インテル（登録商標）ターボメモリがサポートされたＯＳでコンピュータ１００が起動する場合に、当該ターボメモリ１０９に搭載されたＮＶＲＡＭ１１２は、ＨＤＤ１０６のキャッシュとして、先読みされたデータを格納する。これにより、ターボメモリ１０９をサポートしているＯＳに限り、ＯＳとＨＤＤ１０６間のアクセスを高速化することができる、また、ＨＤＤ１０６を逐次アクセスする必要がないため省電力化を図ることもできる。
【００１９】
ＰＣＩオプションＲＯＭ１１１は、システムＢＩＯＳによりシステムメモリ１０３上に読み出される。これにより、ＣＰＵ１０１上で実行されたＯＳが、ターボメモリ１０９に搭載されたＮＶＲＡＭ１１２をキャッシュとして使用することができる。
【００２０】
なお、ターボメモリ１０９は、インテル（登録商標）ターボメモリに制限するものではなく、コンピュータ１００と接続された記憶装置であって、ＯＳなどが一時的な読み出しを行う際にキャッシュとして使用される記憶装置であればよい。
【００２１】
図２は、第１の実施の形態にかかるコンピュータ１００で実行されるソフトウェアを含むシステム構成を示すブロック図である。本図に示すように、コンピュータ１００は、ハードウェアデバイス２０３上に、ＢＩＯＳ２０２と、第１ＯＳ２０１と、を備える。
【００２２】
第１ＯＳ２０１は、ＣＰＵ１０１により実行されるオペレーティングシステムとする。第１ＯＳ２０１は、ターボメモリ１０９がサポートされたＯＳであるため、コンピュータ１００にターボメモリ１０９が接続されていれば、当該ターボメモリ１０９をキャッシュとして利用することができる。第１ＯＳ２０１の例としては、Ｗｉｎｄｏｗｓ（登録商標）Ｖｉｓｔａなどがある。
【００２３】
ＢＩＯＳ２０２は、ＢＩＯＳ−ＲＯＭ１０７に格納されており、ＣＰＵ１０１によりシステムメモリ１０３に展開されるなどして実行される。また、ＢＩＯＳ２０２は、コンピュータ１００接続されたターボメモリ１０９の利用手法を切り換えるために、表示部２１５と、選択受付部２１１と、判定部２１２と、デバイス認識部２１３と、キャッシュ処理部２１４と、を備えている。
【００２４】
表示部２１５は、ＢＩＯＳ２０２の設定画面の表示を行う。これにより、ユーザがＢＩＯＳ２０２の様々な設定を行うことができる。このユーザが設定可能なＢＩＯＳ２０２のパラメータとして、ターボメモリ１０９を記憶領域として使用するか否かなどがある。
【００２５】
選択受付部２１１は、表示部２１５が表示したＢＩＯＳ２０２の設定画面が表示された際に、入力デバイスを介して、様々なＢＩＯＳ２０２に対する様々な設定を受け付ける。この設定の例としては、例えば、ターボメモリ１０９を、記憶領域として使用するか否かの選択の受付なども含まれる。
【００２６】
判定部２１２は、接続されたターボメモリ１０９を、ユーザの操作に従ってデータの読み書き可能な記憶領域として使用するか否かを判定する。本実施の形態にかかる判定部２１２は、選択受付部２１１が受け付けた選択に従って、記憶領域として使用するか否かを判定する。
【００２７】
デバイス認識部２１３は、判定部２１２が、ターボメモリ１０９を、記憶領域として使用すると判定した場合、当該ターボメモリ１０９のＮＶＲＡＭ１１２を、記憶領域として第１ＯＳ２０１に認識させる。
【００２８】
本実施の形態においては、デバイス認識部２１３がターボメモリ１０９のＮＶＲＡＭ１１２を、記憶領域として第１ＯＳ２０１に認識させた場合、ＮＶＲＡＭ１１２に対して記憶装置用のデバイスドライバを組み込むことで、通常のＳＳＤやＨＤＤ等と同様、通常の記憶装置の記憶領域として、利用することが可能になる。
【００２９】
キャッシュ処理部２１４は、デバイス認識部２１３がターボメモリ１０９のＮＶＲＡＭ１１２を記憶領域として使用しないと判定した場合、当該ターボメモリ１０９をキャッシュとして第１ＯＳ２０１に使用させるよう制御する。本実施の形態では、通常のブートで用いられているInt19hの実行以前に、オプションＲＯＭ１１１をロードすることでブート対象のデバイスを変更し、キャッシュとしてターボメモリ１０９を使用させるように制御させるものとする。
【００３０】
つまり、キャッシュ処理部２１４は、Int19実行以前にオプションＲＯＭ１１１がロードされた場合、ブート先を第１ＯＳ２０１が格納されたＨＤＤ１０６を指定されると、ＨＤＤ１０６に格納されたデータを先読みしてターボメモリ１０９のＮＶＲＡＭ１１２に格納し、ＨＤＤ１０６より先にアクセスを行うアクセス先としてターボメモリ１０９を設定する。これにより、ターボメモリ１０９をキャッシュとして第１ＯＳ２０１に使用させることができる。
【００３１】
このような構成を備えることで、本実施の形態にかかるＢＩＯＳ２０２は、キャッシュとしてターボメモリ１０９を第１ＯＳ２０１に提供するだけに限らず、ターボメモリ１０９に搭載されたＮＶＲＡＭ１１２をデータの読み書き可能な記憶領域として第１ＯＳ２０１に提供することもできる。
【００３２】
図３は、ＢＩＯＳ２０２が第１ＯＳ２０１に対して提供するターボメモリ１０９の利用用途を示した概念図である。図３に示すように、ＢＩＯＳ２０２が、ターボメモリ１０９を、キャッシュとして第１ＯＳ２０１に提供するか（矢印３０１）、読み書き可能な記憶領域として提供するかを切り換えることができる。但し、ＢＩＯＳ２０２が、ターボメモリ１０９をキャッシュとして提供できるのは、第１ＯＳ２０１がターボメモリ１０９をサポートしているからである。そこで、次にターボメモリ１０９の機能をサポートしていないＯＳの場合について説明する。
【００３３】
図４は、ＢＩＯＳ２０２が第２ＯＳ４０１に対して提供するターボメモリ１０９の利用用途を示した概念図である。図４に示すように、ＢＩＯＳ２０２は、第２ＯＳ４０１に対して、ターボメモリ１０９を、キャッシュ又は記憶領域として提供できる。そして、第２ＯＳ４０１は、ターボメモリ１０９をキャッシュとして提供された場合には、ターボメモリ１０９を利用できないが、記憶領域として提供された場合には、ターボメモリ１０９を有効に利用することができる。
【００３４】
つまり、通常のコンピュータでは、第２ＯＳ４０１は、接続されたターボメモリ１０９をキャッシュとして利用できないため、ターボメモリ１０９を不明なデバイスとして認識し、どのような用途であっても利用できない。
【００３５】
これに対し、本実施の形態にかかるＢＩＯＳ２０２を搭載したコンピュータ１００の場合、ＢＩＯＳ２０２が、第２ＯＳ４０１に対して、ターボメモリ１０９を記憶領域として認識させることができる。これにより、ターボメモリ１０９の機能をサポートしていない第２ＯＳ４０１であっても、ターボメモリ１０９のＮＶＲＡＭ１１２を記憶領域として利用することができる。つまり、本実施の形態にかかるＢＩＯＳ２０２が搭載されることで、ＯＳがターボメモリ１０９の機能をサポートしているか否かに係わらず、ＯＳは、当該ターボメモリ１０９を記憶領域として利用できる。なお、ターボメモリ１０９の機能をサポートしていないＯＳとしては、例えば、Ｗｉｎｄｏｗｓ（登録商標）ＸＰや、Ｌｉｎｕｘ（登録商標）などがある。
【００３６】
ところで、本実施の形態にかかる、ターボメモリ１０９が搭載されたコンピュータ１００では、ＢＩＯＳ２０２によるセットアップで、ターボメモリ１０９を、ＳＳＤのような記憶領域として使用するか否かの選択を、ユーザから受付ける。
【００３７】
そして、記憶領域として使用するとの選択を受け付けた場合、ＢＩＯＳ２０２の制御により、起動したＯＳは、当該ＯＳの種類によらず、ターボメモリ１０９を、記憶装置デバイス（ドライブ）の記憶領域として使用できる。
【００３８】
一方、記憶領域として使用しないとの選択を受け付けた場合、ＢＩＯＳ２０２の制御により、ターボメモリ１０９の機能がサポートされているＯＳ（例えば第１ＯＳ２０１）に限り、ターボメモリ１０９をキャッシュとして使用する。また、ターボメモリ１０９の機能がサポートされていない他のＯＳ（例えば、第２ＯＳ４０１）の場合は、不明なデバイスとして認識され、利用することができない。
【００３９】
このように、本実施の形態にかかるＢＩＯＳ２０２を搭載したコンピュータ１００では、搭載されたＯＳにかかわらず、ターボメモリ１０９を記憶領域として利用することができる。特に、ターボメモリ１０９の機能をサポートしていないＯＳにおいては、従来においては不明のデバイスとして扱われてしまうのに対し、本実施の形態ではターボメモリ１０９内のＮＶＲＡＭ１１２を記憶領域として利用できる点で、特に有効である。
【００４０】
換言すれば、本実施の形態においては、ＢＩＯＳ２０２が、ターボメモリ１０９をサポートするに当たって行う一連の処理を、既存のデバイス（記憶装置デバイス）にアクセスするための処理に置き換えることでターボメモリ１０９をMiniPCI接続されたＳＳＤのようなＮＶストレージとして使用することを可能にする。
【００４１】
次に、図１に示すコンピュータ１００起動時におけるターボメモリ１０９の認識処理手順について説明する。図５は、コンピュータ１００起動時におけるターボメモリ１０９の認識処理手順を示すフローチャートである。
【００４２】
まず、コンピュータ１００のＢＩＯＳ２０２のセットアップ中に、表示部２１５が、セットアップ画面を表示する（ステップＳ５０１）。表示されたセットアップ画面には、
ターボメモリ１０９を記憶装置デバイスとして使用するか否かの設定項目が含まれているものとする。なお、セットアップ画面は、起動する度に表示するものに限らず、ユーザから所定の操作を受け付けた場合に、表示することにしてもよい。
【００４３】
次に、選択受付部２１１が、セットアップ画面の設定項目から、ターボメモリ１０９を記憶装置デバイスとして使用するか否かの選択を受け付ける（ステップＳ５０２）。
【００４４】
その後、選択受付部２１１が受け付けた選択に従って、判定部２１２が、ターボメモリ１０９を記憶装置デバイスとして使用するか否かを判定する（ステップＳ５０３）。記憶装置デバイスとして使用すると判定した場合（ステップＳ５０３：Ｙｅｓ）には、ステップＳ５０８の処理を行う。
【００４５】
一方、判定部２１２が、ターボメモリ１０９を記憶装置デバイスとして使用しないとの判定を受け付けた場合（ステップＳ５０３：Ｎｏ）には、ターボメモリ１０９を前回記憶装置デバイスとして使用していたか否か判定する（ステップＳ５０４）。この前回記憶装置デバイスとして使用していたか否かの判定は、ターボメモリ１０９のＮＶＲＡＭ１１２内に格納されたデータを参照することで判定しても良いし、前回起動した時の設定を予め記憶しておき、当該設定を参照することで判定しても良い。他の例としては、ユーザに前回記憶装置デバイスとして使用したか否か聞くなど、あらゆる手法で当該判定を行ってよい。
【００４６】
そして、判定部２１２が、記憶装置デバイスと使用していないと判定した場合（ステップＳ５０４：Ｎｏ）、ステップＳ５０９の処理を行う。
【００４７】
一方、判定部２１２が記憶装置デバイスとして使用していたと判定した場合（ステップＳ５０４：Ｙｅｓ）、表示部２１５が、表示画面に「ターボメモリに保存していたデータは消去されます。よろしいでしょうか？」という注意メッセージを表示する（ステップＳ５０５）。その後、選択受付部２１１が、当該注意メッセージに対する、応答として[Ｙｅｓ]または[Ｎｏ]の選択操作を受け付ける（ステップＳ５０６）。
【００４８】
その後、判定部２１２は、ステップＳ５０６の受け付けた選択が[Ｙｅｓ]または[Ｎｏ]に従って、ターボメモリ１０９を記憶装置デバイスとして使用するか否かを判定する（ステップＳ５０７）。
【００４９】
そして、判定部２１２は、受け付けた選択が[Ｙｅｓ]の場合（ステップＳ５０７：Ｙｅｓ）、保存されていたデータを消去してターボメモリ１０９をキャッシュとして使用しても良いと判定し、ステップＳ５０９の処理を行う。
【００５０】
一方、判定部２１２は、受け付けた選択が[Ｎｏ]の場合（ステップＳ５０７：Ｎｏ）、保存されていたデータを消去するのを抑止し（換言すればターボメモリ１０９をキャッシュとして使用してはいけないものと判定し）、保存されていたデータを利用できるように、記憶装置デバイスとして使用できるように、ステップＳ５０８の処理を行う。
【００５１】
そして、ステップＳ５０８においては、デバイス認識部２１３が、当該ターボメモリ１０９のＮＶＲＡＭ１１２を、記憶領域として第１ＯＳ２０１に認識させる（ステップＳ５０８）。なお、詳細な処理手順については後述する。
【００５２】
また、ステップＳ５０９においては、キャッシュ処理部２１４が、当該ターボメモリ１０９をキャッシュとして第１ＯＳ２０１に使用させるよう制御処理を行う（ステップＳ５０９）。なお、詳細な処理手順については後述する。
【００５３】
その後、ＢＩＯＳ２０２が、ステップＳ５０８及びＳ５０９の処理結果を、第１ＯＳ２０１に通知する（ステップＳ５１０）。この後、第１ＯＳ２０１は、キャッシュ又は記憶装置デバイスとして、ターボメモリ１０９を有効に利用する。
【００５４】
次に、デバイス認識部２１３が、図５のステップＳ５０８における、当該ターボメモリ１０９のＮＶＲＡＭ１１２を、記憶領域として第１ＯＳ２０１に認識させる処理手順について説明する。図６は、デバイス認識部２１３が、当該ターボメモリ１０９のＮＶＲＡＭ１１２を、記憶領域として第１ＯＳ２０１に認識させる処理手順を示すフローチャートである。
【００５５】
まず、デバイス認識部２１３が、ターボメモリ１０９を、記憶装置デバイスとして認識するための初期化処理を行う（ステップＳ６０１）。デバイス認識部２１３が、当該初期化処理により、ＯＳがターボメモリ１０９を記憶装置デバイスとして認識させることができる。なお、ターボメモリ１０９を記憶装置デバイスとして認識するための初期化処理手順は、従来のＳＳＤ等と同様の処理手順を行えばよいものとして説明を省略する。
【００５６】
次に、デバイス認識部２１３が、Int19hによるブートデバイスを決定する（ステップＳ６０２）。本実施の形態においては、ブートデバイスとしてＨＤＤ１０６が決定され、ＨＤＤ１０６に格納されていた第１ＯＳ２０１の起動処理が行われる。
【００５７】
次に、キャッシュ処理部２１４が、当該ターボメモリ１０９を、キャッシュとして第１ＯＳ２０１に使用させるようにする制御処理の手順について説明する。図７は、キャッシュ処理部２１４が、当該ターボメモリ１０９を、キャッシュとして第１ＯＳ２０１に使用させるようにする制御処理の手順を示すフローチャートである。
【００５８】
まずは、キャッシュ処理部２１４が、ターボメモリ１０９のＰＣＩオプションＲＯＭ１１１の初期化を行う（ステップＳ７０１）。なお、キャッシュ処理部２１４は、ＰＣＩオプションＲＯＭ１１１の初期化として、システムメモリ１０３上にＰＣＩオプションＲＯＭ１１１用の領域を確保し、確保した領域の初期化を行う。
【００５９】
次に、キャッシュ処理部２１４が、ターボメモリ１０９固有の処理として、ＰＣＩオプションＲＯＭのロードによって変更されたブートデバイスを決定する（ステップＳ７０２）。ブートデバイスとして、ＨＤＤ１０６が決定し、ＨＤＤ１０６に格納されていた第１ＯＳ２０１の起動が開始される。また、ＨＤＤ１０６を読み込み先として決定する際に、ターボメモリ１０９に予めＨＤＤ１０６のデータを格納し、ターボメモリ１０９を先にアクセスするようにする制御が行われる。ＨＤＤ１０６よりＮＶＲＡＭ１１２の方が、読み込み速度が速いため、読み込み速度を高速化することができる。
【００６０】
そして、キャッシュ処理部２１４は、決定されたブートデバイスによるＯＳ（第１ＯＳ２０１）の起動が成功したか否か判定する（ステップＳ７０３）。起動が成功したと判定した場合（ステップＳ７０３：Ｙｅｓ）、処理を終了する。
【００６１】
一方、キャッシュ処理部２１４が、起動が成功しなかったと判定した場合（ステップＳ７０３：Ｎｏ）、Int19hによる既存のブートデバイスの決定処理を行うことで、ターボメモリ１０９をキャッシュとして利用する制御を停止する（ステップＳ７０４）。つまり、ＨＤＤ１０６に格納された第１ＯＳ２０１が、通常通りに起動される。これにより、例えば、ターボメモリ１０９の機能をサポートしていないＯＳの場合、ステップＳ７０３で起動が失敗し、通常通りの起動が行われることになる。
【００６２】
本実施の形態にかかるコンピュータ１００では、判定部２１２がターボメモリ１０９をキャッシュとして使用すると判定した場合に、ＯＳが、ターボメモリ１０９をキャッシュとして使用できるので、アクセスの高速化を図ることが可能となる。また、ターボメモリ１０９をキャッシュとして使用する機能は、ＯＳによってはサポートされていない場合もある。このような機能がサポートされていないＯＳでは、通常、ターボメモリ１０９を不明なデバイスとして扱われていたが、本実施の形態においては、記憶装置デバイスの記憶領域として使用することができる。
【００６３】
このように、本実施の形態にかかるコンピュータ１００では、MiniPCIで接続されたターボメモリ１０９の利用手法を拡張し、ユーザの要求に応じて、利用用途を選択することができる。なお、ターボメモリ１０９を記憶装置デバイスとして選択された場合に、ＢＩＯＳ２０２は、当該ターボメモリ１０９をブートデバイスとして決定しても良い。
【００６４】
ターボメモリ１０９が搭載されたコンピュータ１００では、上述したＢＩＯＳ２０２の処理により、ターボメモリ１０９の機能がサポートされていないＯＳが搭載された場合でも、ターボメモリ１０９のＮＶＲＡＭ１１２を高速な記憶ドライブとして使用することができる。これにより、ターボメモリ１０９を有効に利用することができる。これにより、ターボメモリ１０９の新たな価値が付加されることになり、より有用なデバイスとして普及することが見込まれる。
【００６５】
なお、ターボメモリ１０９を記憶デバイスの記憶領域として使用するためには、ＢＩＯＳ２０２による切替が行われた場合に限るため、従来の動作と干渉又は阻害が生じるものではない。
【００６６】
また、ターボメモリ１０９を記憶デバイスの記憶領域として読み書き可能とした場合、ＯＳのインストールやスワップ、テンポラリーファイルの格納など様々な用途に使用可能となる。また、ＮＶＲＡＭ１１２を用いるため、これらの読み書きを従来のＨＤＤ１０６と比べて高速化することができる。
【００６７】
（変形例１）
上述した第１の実施の形態においては、コンピュータ１００が起動する際に、ユーザから受け付けた選択に従って、ターボメモリ１０９の利用用途を切り換える例について説明した。しかしながら、ターボメモリ１０９の利用用途の切替を、ユーザの選択操作に基づくものに制限するものではない。変形例としては、判定部が、コンピュータ１００に搭載されたＯＳがターボメモリ１０９のキャッシュ機能をサポートしている否かを判定し、判定結果に応じてターボメモリ１０９の利用用途を切り換えても良い。例えば、判定部２１２がＯＳがキャッシュ機能をサポートしていないと判定した場合には、記憶装置デバイスとして認識するようにデバイス認識部２１３が処理を行い、キャッシュ機能をサポートしていると判定した場合には、ターボメモリ１０９をキャッシュとして使用するようにキャッシュ処理部２１４が制御するなどが考えられる。このような例に限らず、さまざまな目的に応じて、ターボメモリ１０９の利用用途を切り換えて良い。
【００６８】
なお、本実施形態のコンピュータ１００で実行されるＢＩＯＳ２０２は、ＲＯＭ等に予め組み込まれて提供される。
【００６９】
本実施形態のコンピュータ１００で実行されるＢＩＯＳ２０２は、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録して提供するように構成してもよい。
【００７０】
さらに、本実施形態のコンピュータ１００で実行されるＢＩＯＳ２０２を、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、本実施形態のコンピュータ１００で実行されるＢＩＯＳ２０２をインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００７１】
本実施の形態のコンピュータ１００で実行されるＢＩＯＳ２０２は、上述した各部（選択受付部２１１、判定部２１２、デバイス認識部２１３、キャッシュ処理部２１４、表示部２１５）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記ＲＯＭからＢＩＯＳ２０２を読み出して実行することにより上記各部が主記憶装置上にロードされ、選択受付部２１１、判定部２１２、デバイス認識部２１３、キャッシュ処理部２１４、表示部２１５が主記憶装置上に生成されるようになっている。
【図面の簡単な説明】
【００７２】
【図１】第１の実施の形態にかかるコンピュータのハードウェア構成を示した図である。
【図２】第１の実施の形態にかかるコンピュータで実行されるソフトウェアを含むシステム構成を示すブロック図である。
【図３】ＢＩＯＳが第１ＯＳに対して提供するターボメモリの利用用途を示した概念図である。
【図４】ＢＩＯＳが第２ＯＳに対して提供するターボメモリの利用用途を示した概念図である。
【図５】コンピュータ起動時におけるターボメモリの認識処理手順を示すフローチャートである。
【図６】デバイス認識部が、当該ターボメモリのＮＶＲＡＭを、記憶領域として第１ＯＳに認識させる処理手順を示すフローチャートである。
【図７】キャッシュ処理部が、当該ターボメモリを、キャッシュとして第１ＯＳに使用させるようにする制御処理の手順を示すフローチャートである。
【符号の説明】
【００７３】
１００  コンピュータ
１０１  ＣＰＵ
１０２  ＮＢ
１０３  システムメモリ
１０４  ＳＢ
１０５  ＧＰＵ
１０６  ＨＤＤ
１０７  ＢＩＯＳ―ＲＯＭ
１０８  接続Ｉ／Ｆ１０８
１０９  ターボメモリ
１１１  ＰＣＩオプションＲＯＭ
１１２  ＮＶＲＡＭ
１５０  ディスプレイモニタ
２０１  第１ＯＳ
２０２  ＢＩＯＳ
２０３  ハードウェアデバイス
２１１  選択受付部
２１２  判定部
２１３  デバイス認識部
２１４  キャッシュ処理部
２１５  表示部
【図１】
2010128973.tif 000003
【図２】
2010128973.tif 000004
【図３】
2010128973.tif 000005
【図４】
2010128973.tif 000006
【図５】
2010128973.tif 000007
【図６】
2010128973.tif 000008
【図７】
2010128973.tif 000009