説明

記憶装置に対するセキュリティの設定方法およびコンピュータ。

【課題】コンピュータに接続された光学ドライブに対する書き込みを禁止にする方法を提供する。
【解決手段】
BIOSが光学ドライブのセキュリティ機能の有無を確認する(311)。光学ドライブがセキュリティ機能を具備する場合には、BIOSが光学ドライブに対して読み取り専用にするコマンドを送る(315)。コマンドを受け取った光学ドライブは、自らを読み取り専用に動作するように設定する(321)。読み取り専用のコマンドやそれを解除するコマンドはBIOSだけが光学ドライブに送るようにしているので、OSに制御が移行したときには、当該OSや他のOS、あるいはアプリケーション・ソフトから読み取り専用の設定を解除することはできない。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶装置に対してセキュリティを設定する技術に関し、さらに詳細には書き込み可能な記憶装置に対してコンピュータからの書き込みを禁止する技術に関する。
【背景技術】
【0002】
光学ディスク(Optical Disc)は、レーザ光を使用してデータの読み書きを行う円盤形の記憶媒体の総称である。光学ディスクの中でも、現在はCD、DVDなどが一般的に使用されているが、ブルーレイ・ディスク(Blu-ray Disc、以後BDという)やHD−DVDなどの次世代規格のディスクも市場への投入が始まっている。これらの光学ディスクは、コンピュータのデータを記憶するデータ用の媒体としてだけでなく、音楽および映像を専用機器で記録および再生できる媒体としても使用される。光学ドライブ(Optical Disk Drive)は、光学ディスクを回転駆動してデータの読み出しおよび書き込みを行う記憶装置である。パーソナル・コンピュータ(以下PCという)においては、デスクトップ型、ノートブック型などのような種別を問わず、大多数の製品には光学ドライブが搭載されている。
【0003】
光学ディスクは外形はそれぞれ類似しているが、さまざまな異なる規格に基づいて製造されており使用に際してユーザの混乱を引き起こすことも少なくない。データ用の媒体に限っても、CD、DVD、BDおよびHD−DVDの各々に、読み出し専用のもの、1回だけ書き込み可能なもの、または複数回の書き換えが可能なものなどの区分がある。これらの多くの規格に対応するために、光学ドライブにも多くの種類が存在している。光学ドライブの種類で代表的なものとして、CDからの読み出しのみが可能なCD−ROMドライブ、CDおよびDVDからの読み出しが可能なDVD−ROMドライブ、CDからの読み出し/書き込みおよびDVDからの読み出しが可能なコンボ・ドライブ、CDおよびDVDのすべてに対する読み出しと書き込みが可能なスーパーマルチ・ドライブなどがある。特に最近は、コンボ・ドライブやスーパーマルチ・ドライブなどのような、データの書き込みが可能な光学ドライブの普及が著しい。これに、BDやHD−DVDなどのような次世代規格を含めると、光学ドライブの種類はさらに多くなる。
【0004】
読み出しおよび書き込みが可能な記憶装置に対してコンピュータから読み出しのみが可能なように動作させる技術として以下のようなものがある。特許文献1は、コンピュータの起動処理の間に管理者が設定した記憶装置の使用許可/不許可をBIOSが確認し、確認された条件に基づいて記憶装置の初期化を禁止することで使用を制限するものである。また、オペレーティング・システム(以後OSという)による制御時にフィルタ・ドライバを使用して記憶装置への書き込みを制限する技術についても記載している。特許文献2は、コンピュータと磁気ディスク装置との間にライト・プロテクト装置を設け、磁気ディスク装置を書き込み禁止にする技術について記載している。特許文献3は、書き込み可能なモードと書き込みができないモードとを外部からのスイッチ操作によって切り替えるディスク装置について記載している。特許文献4は、ファームウェアの処理でフラッシュ・メモリの一部を消去することにより、本来は記録が可能な光ディスク装置の記録機能を抑止し再生専用にする技術について記載している。
【特許文献1】特開2006−309296号公報
【特許文献2】特開2004−47041号公報
【特許文献3】特開2002−251324号公報
【特許文献4】特開2007−12123号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
前述のように、データの読み書きが可能な(以後ライタブルという)光学ドライブが普及した結果、部品や製品の点数を削減してコスト・ダウンを図るために光学ドライブの製造業者はデータの読み出しだけが可能な読み取り専用の(以後リード・オンリーという)光学ドライブの製造を制限する傾向になっている。そのため、市場にはライタブルな光学ドライブだけが投入されるようになり、リード・オンリーの光学ドライブは入手が困難になっている。
【0006】
また、前述のようにさまざまな規格の光学ディスクに対応するために、光学ドライブには多くの種類が存在する。そして、新しい規格の光学ディスクが登場するたびに、さらに光学ドライブの種類は増大する。PCメーカーは、製造用およびメンテナンス用に保有する部品の種類をなるべく少なくして、部品管理の簡素化やコスト削減を図る必要がある。このため、多くのPCメーカーはリード・オンリーの光学ドライブを部品として保有することをやめようとしている。
【0007】
しかしながら、そのようなリード・オンリーの光学ドライブが全く必要ではなくなったということではない。企業および公的機関などのユーザは、業務で取り扱う大量の個人情報および機密情報を外部に漏洩させないためのセキュリティ管理を強化している。情報漏洩のルートの1つに、ライタブルな記憶装置によってデータが書き込まれた記録媒体がPCから取り外されて外部に持ち出されるというものがある。そのため、それらのユーザは、光学ドライブなどのように記録媒体単独または記録媒体と記憶装置を一体としてPCから取り外しが可能な記憶装置をリード・オンリーに構成したPCを、業務用として特別に発注することがある。PCメーカーとしては、そのような需要にも応えるためにリード・オンリーの記憶装置を搭載したPCを供給する必要がある。
【0008】
この問題に対処するために、ライタブルな光学ドライブをPCに取り付けてあらかじめリード・オンリーに設定して出荷することが考えられる。特許文献1の技術は、リード・オンリーに設定することが不可能なライタブルの光学ドライブに対して、OSによる制御でPCから送られる書き込みコマンドをデバイス・ドライバが制限することによって、光学ドライブが実質的にリード・オンリーになるように扱っている。しかし、ウィンドウズ(登録商標)などのOSで動作するアプリケーション・ソフトの中にも、OSがアプリケーション・ソフトに対して提供するデバイス・ドライバを経由せず、アプリケーション・ソフトから直接光学ドライブにデータ・アクセスするものがある。このような場合は、特許文献1の技術を採用しても、デバイス・ドライバを経由させないでアプリケーション・ソフトから光学ドライブに直接書き込みコマンドが送られる危険性がある。
【0009】
さらに、フロッピー(登録商標)・ディスク、CD−ROM、外付けハードディスク・ドライブ(以後HDDという)などを利用することにより、同一のPCで内蔵HDDに標準的にインストールされたOSとは異なる別のOSをインストールして起動することも可能である。これに対して、特許文献1の技術を適用した場合は、書き込みコマンドの送信を防止するように構成されたデバイス・ドライバとは異なる別のOSに含まれる別のデバイス・ドライバが立ち上がるので書き込みコマンドの送信は制限されない。
【0010】
一方、特許文献4の技術にかかる光学ドライブは、もともとライタブルな光学ドライブの記録機能を停止して、リード・オンリーで動作するように設定するものである。この光学ドライブをPCに搭載した場合は、通常OSが光学ドライブに対してリード・オンリーに設定するコマンドを送り、光学ドライブがそのコマンドを実行してリード・オンリーとなるように動作することになる。しかし、この場合も、デバイス・ドライバを経由せずに直接光学ドライブにデータ・アクセスすることができるアプリケーション・ソフトから、リード・オンリーの動作を解除するコマンドが送られる可能性がある。また、予定していない別のOSがインストールされて起動されることにより、リード・オンリーに設定するコマンドが光学ドライブに送られなかったり、解除コマンドを送られたりしてリード・オンリーの動作が確保されないことが予想される。
【0011】
さらに、PCに当初から装着されていたリード・オンリーに設定可能な光学ドライブを取り外し、そのかわりにリード・オンリーに設定できないライタブルの光学ドライブが取り付けられた場合は、光学ドライブはOSから送られたリード・オンリーに設定するコマンドを実行しないので、リード・オンリーの動作が確保されない。特に最近のPCには、電源が投入されてOSが動作している状態で、光学ドライブなどの周辺機器の取り付け、取り外し、または交換などが可能なスワッパブル・ベイを備えたものが多い。スワッパブル・ベイによって光学ドライブがPCに着脱可能に接続されている場合は、容易に光学ドライブを交換できるので、リード・オンリーに設定できないライタブルの光学ドライブが動作可能な状態で取り付けられる危険性が高い。
【0012】
以上で述べたような従来の方法では、ライタブルな光学ドライブをリード・オンリーで動作させようとしても確実にセキュリティを確保することはできない。情報漏洩を防止するという観点では、光学ドライブをPCに取り付けることを不可能にするか、もしくは光学ドライブとPCとの接続に使用されるインターフェイスを使用不可能にすることも考えられるが、業務で使用する正当なアプリケーション・ソフトのインストールやデータの閲覧までもが制限されてしまうので、ユーザにとっては利便性を損なうことになる。これと同じ問題は、光学ドライブに限らず、ハードディスク・ドライブ、もしくは半導体記憶装置など、ライタブルでPCに着脱可能な記憶装置のほとんどについて存在する。
【0013】
そこで本発明の目的は、読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュアにセキュリティの設定を行う方法を提供することにある。さらに本発明の目的は、そのようなセキュリティの設定が可能なコンピュータを提供することにある。さらに本発明の目的は、コンピュータにそのような設定を行わせるコンピュータ・プログラム(BIOS)を提供することにある。
【課題を解決するための手段】
【0014】
本発明の第1の態様は、読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュリティの設定を行う方法を提供する。この設定方法では、コンピュータがBIOSを実行して記憶装置のセキュリティ機能の有無を確認する。セキュリティ機能は、本発明にかかるセキュリティの設定処理に応じて記憶装置が動作する機能を意味し、たとえば、コンピュータから記憶装置が特定のコマンドを受け取ったときに記憶装置が自らを読み取り専用にしたりそれを解除したりする機能とすることができる。記憶装置がセキュリティ機能を具備する場合には、BIOSが記憶装置に対するセキュリティの設定をする。そして、BIOSによる設定が維持されてOSに制御が移行しても記憶装置に対するセキュリティは確保される。
【0015】
本発明においては、記憶装置に対するセキュリティの設定はBIOSだけによって行われるので、アプリケーション・ソフトから直接記憶装置にアクセスしたり、別のOSを起動したりして一旦設定されたセキュリティの設定を解除することができない。BIOSは、コンピュータ・メーカだけが交換できるようにしたり、スーパーバイザー・パスワードを知っている管理者だけが交換できるようにしたり、不揮発性メモリと一体に交換されたときにはコンピュータが動作しないようにしたりすることができるので、一般のユーザは記憶装置に対して設定されたセキュリティを解除することは困難になる。セキュリティの設定を、コンピュータの電源が投入されてからPOSTを実行するタイミングで行うようにすれば、コンピュータの起動のたびに記憶装置のセキュリティが確保される。
【0016】
記憶装置が、POSTの実行中に初期化コマンドを受け取ってから所定の時間が経過した後以降においてはセキュリティの設定に関する特定のコマンドを受け取ってもそれを実行しないようにすれば、特定のコマンドが盗まれてセキュリティが解除される危険性を軽減することができる。BIOSが記憶装置の固有情報を取得し、セキュリティに関する特定のコマンドをその固有情報を用いて暗号化すると、特定のコマンドがコンピュータから記憶装置に転送される過程で盗聴されたり、記憶装置が分解されたりして盗まれる可能性を軽減することができる。
【0017】
コンピュータは、あらかじめ記憶装置に対するアクセスを完全に制限する設定、アクセスを無制限にする設定、および記憶装置を読み取り専用にする設定を含む設定情報を用意しておくことができる。そしてBIOSはその設定情報を使用することで、記憶装置に対するセキュリティの設定方法を柔軟に選択することができる。たとえば記憶装置がセキュリティ機能を具備する場合は、設定情報に基づいて、BIOSが記憶装置に対するコンピュータの入出力ポートを無効にしたり、記憶装置を読み取り専用にしたり、アクセスを自由にしたりすることが可能になる。また、記憶装置がセキュリティ機能を具備しない場合は、設定情報に基づいて、BIOSがコンピュータの記憶装置に対する入出力ポートを無効にしたり、アクセスを自由に設定したりすることが可能になる。
【0018】
本発明の第2の態様では、コンピュータがOSを実行している状態で、記憶装置がコンピュータに接続されたときのセキュリティの設定方法を提供する。OSの実行中にコンピュータに記憶装置が接続されたことを検出するとOSからBIOSに制御が移行する。そして、BIOSが記憶装置を読み取り専用に設定し、読み取り専用に設定された状態を維持しながらBIOSからOSに制御を移行するようにすることで、BIOSによるセキュアなセキュリティ設定が実現できる。
【0019】
本発明の第3の態様は、読み取りおよび書き込みが可能でセキュリティ機能を具備する記憶装置を装着することが可能なコンピュータを提供する。このコンピュータはOSを格納する記録媒体と、BIOSを格納する不揮発性メモリと、OSとBIOSを切り替えて実行することができるプロセッサと、記憶装置を接続する接続部と、記憶装置に対するセキュリティの設定情報を格納する記憶部とを有する。そして接続部に接続された記憶装置がセキュリティ機能を具備すると判断した場合にプロセッサはBIOSを実行して記憶装置を読み取り専用に設定する。この記憶装置は光学ドライブ、ハードディスク・ドライブ、半導体記憶装置のうちのいずれかとすることができる。また、接続部はIDE、USB、PCMCIA、CardBus、miniPCI、Express Cardのうちのいずれかのインターフェイス規格を介して記憶装置をコンピュータに接続することができる。
【0020】
本発明は、記憶装置の駆動部がコネクタや光通信などでコンピュータに接続され記録媒体とともに物理的にコンピュータから取り外される場合や、記憶装置自体はコンピュータに固定され記録媒体だけが記憶装置から取り外される場合に特に適している。また、OSが実行されている状態で、接続部に記憶装置が接続されたことを検出したらプロセッサがSMIを受け取って、OSからBIOSに制御を移行して記憶装置を読み取り専用に設定することもできる。これにより、OSが動作している間にホット・スワップによって接続された記憶装置も読み取り専用に設定して動作させることができる。さらに本発明の第4の態様では、コンピュータに上記のセキュリティの設定を行う機能を実現させるBIOSを提供する。
【発明の効果】
【0021】
本発明により、読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュアにセキュリティの設定を行う方法を提供することができた。さらに本発明により、そのようなセキュリティの設定が可能なコンピュータを提供することができた。さらに本発明により、コンピュータにそのような設定を行わせるコンピュータ・プログラム(BIOS)を提供することができた。
【発明を実施するための最良の形態】
【0022】
図1は、本発明の実施の形態にかかるノートブック型PC(以後ノートPCという)10の外観および構成を示す斜視図である。ノートPC10は、表面にキーボードおよびポインティング・デバイスを搭載し内部に多くのデバイスを収納した筐体11と、液晶ディスプレイ(LCD)を表面に搭載した蓋部13とで構成される。筐体11の側面には、光学ドライブ21が取り付けられている。光学ドライブ21は開閉するトレイ23を有し、トレイ23にはイジェクト・ボタン25が、常時筐体11の側面に露出するように取り付けられている。ユーザがイジェクト・ボタン25を押せば筐体11の側面にトレイ23がせり出す。光学ドライブ21では、スペースの節約などの観点から、トレイ23の側にスピンドル29とピックアップ31が取り付けられている。ユーザがトレイ23上のスピンドル29に光学ディスク27の中央部を嵌め込んでセットし、筐体11の側面にせり出したトレイ23を筐体11内部に押し戻せば、スピンドル29が回転するとともに、ピックアップ31が光学ディスク27の中央部から周辺部へ向かう方向に往復移動し、それによって光学ドライブ21は光学ディスク27に対してデータの読み取りおよび書き込みをすることができるようになっている。
【0023】
また、光学ドライブ21はスワッパブル・ベイを介してノートPC10に取り付けられている。このスワッパブル・ベイは、ノートPC10でOSが動作している状態で、デバイスの取り付け、取り外し、交換を行うホット・スワップ、およびノートPC10がサスペンドである状態でデバイスの取り付け、取り外し、交換を行うウォーム・スワップに対応する。スワッパブル・ベイの着脱レバー33を動かせば、光学ドライブ21をノートPC10から取り外すことができる。着脱レバー33は、光学ドライブ21を物理的にインターフェイスから切り離すレバーであると同時に、光学ドライブ21を取り付けようとする操作および切り離そうとする操作を認識し、それらの操作に対応したソフトウェアの処理をさせるためのスイッチ(図示せず)を含んでいる。
【0024】
図2は、ノートPC10のハードウェアの概略構成を示すブロック図である。CPU101は、ノートPC10の中枢機能を担う演算処理装置で、OS、BIOS、デバイス・ドライバ、あるいはアプリケーション・プログラムなどを実行する。CPU101は、SMI(System Management Interrupt)入力ピン(SMI#)がアサートされることによって、システム管理用の特権実行モードであるSMM(System Management Mode)で動作することが可能である。SMMで動作するCPU101は、BIOSによる制御で主にサスペンド、レジューム、電源管理およびセキュリティ関連の操作を実行することができる。
【0025】
CPUブリッジ103は、メイン・メモリ105へのアクセス動作を制御するためのメモリ・コントローラ機能や、接続されるデバイス間のデータ転送速度の差を吸収するデータ・バッファ機能などを含んだ構成となっている。メイン・メモリ105は、CPU101が実行するプログラムの読み込み領域、処理データを書き込む作業領域として利用される書き込み可能メモリである。同時にメイン・メモリ105はSMRAM(System Management RAM)としての領域を含むが、これについては後述する。ビデオ・カード107は、ビデオ・チップ(図示せず)およびVRAM(図示せず)を有し、CPU101からの描画命令を受けて描画すべきイメージを生成しVRAMに書き込み、VRAMから読み出したイメージを描画データとしてディスプレイ109に送る。
【0026】
I/Oブリッジ111は、CPUブリッジ103と同様にチップセットを構成するデバイス・コントローラである。I/Oブリッジ111は、IDE(Integrated Device Electronics)インターフェイス機能を備えたIDEポート113を内蔵している。また、I/Oブリッジ111はUSBインターフェイス115を介して、USB規格に対応した各種周辺機器を接続することが可能である。ここでいう各種周辺機器には、たとえば外付けの光学ドライブ、ハードディスク・ドライブ、半導体記憶装置などの記憶装置も含まれる。さらにCardBusインターフェイス117、miniPCIインターフェイス119を通じて、それぞれの規格に対応した記憶装置を接続することも可能である。
【0027】
IDEポート113には、ATA(Advanced Technology Attachment)もしくはシリアルATAに対応したHDD121、およびATAPI(ATA Packet Interface)に対応した光学ドライブ21が接続される。HDD121には、OS、デバイス・ドライバ、アプリケーション・プログラムなどがインストールされている。光学ドライブ21は、スワッパブル・ベイ123を介してIDEポート113に接続される。スワッパブル・ベイ123は、そこにデバイスを着脱しようとしてユーザが着脱レバー33を動かしたときに開閉するレバー・スイッチ125を含むが、これについての詳細は後述する。
【0028】
さらにI/Oブリッジ111は、LPCバス127を介して、高速なデータ転送を要求しないデバイスに接続される。LPCバス127には、BIOSフラッシュROM129、セキュアNVRAM(Non-Volatile RAM、不揮発性RAM)131、エンベデッド・コントローラ133が接続されている。BIOSフラッシュROM129およびセキュアNVRAM131については後述する。
【0029】
エンベデッド・コントローラ133は、8〜16ビットのCPU、ROM、RAMなどで構成されたマイクロ・コンピュータであり、さらに複数チャネルのA/D入力端子、D/A出力端子、タイマー、およびデジタル入出力端子を備えている。エンベデッド・コントローラ133には、それらの入出力端子を介して冷却ファン(図示せず)、温度センサ(図示せず)、および電源装置を制御するパワー・コントローラ(図示せず)などが接続されており、PC内部の動作環境の管理にかかるプログラムをCPU101とは独立して実行させることができる。スワッパブル・ベイ123のレバー・スイッチ125もエンベデッド・コントローラ133に接続されており、エンベデッド・コントローラ133はレバー・スイッチ125の開閉を認識することによってスワッパブル・ベイ123にデバイスが着脱されたことを認識する。さらにエンベデッド・コントローラ133は、CPU101のSMI#をアサートしてSMMで動作させることも、またスワッパブル・ベイ123に接続されたデバイスへの電力の供給を管理することも可能である。
【0030】
なお、図2は本実施形態を説明するために必要なハードウェアの構成および接続関係を簡素化して記載したに過ぎないものである。ここまでの説明で言及した以外にも、たとえば有線LANアダプタ、無線LANモジュール、電源装置、I/Oコントローラ、キーボードおよびマウスなどのような入出力装置など、PC10を構成するには多くのデバイスが使われる。しかしそれらは当業者には周知であり本発明の理解のために特に説明を必要としないので、ここでは詳しく言及しない。もちろん、図2で記載した複数のブロックを1個の集積回路もしくは装置としたり、逆に1個のブロックを複数の集積回路もしくは装置に分割して構成したりすることも、当業者が任意に選択することができる範囲においては本発明の範囲に含まれる。
【0031】
図3は、光学ドライブ21内部の概略構成を示すブロック図である。光学ドライブ21の内部では、MPU(Micro Processing Unit)201がフラッシュROM203に格納されたファームウェア205を実行することにより、光学ドライブ21の全ての機能をコントロールする。より具体的にはMPU201は、IDEポート113との通信を行うホスト・インターフェイス209、スピンドル・モータ219の回転を制御する回転制御系211、粗動モータ221を動かすことによってピックアップ31を光学ディスク27上の目標トラック付近に移動する粗動制御系213、ピックアップ31上のアクチュエータ(図示せず)を制御してレーザ光を光学ディスク27上の目標トラックに照射するピックアップ制御系215、およびピックアップ31が光学ディスク27から読み取った信号を処理してデータを再生し、またホスト・インターフェイス209から送られたデータに基づいて光学ディスク27に記録する信号を生成する信号処理系217といった各々の機能を制御する。
【0032】
またフラッシュROM203には、光学ドライブ21に固有の機器ID206、および光学ドライブ21のリード・オンリー(R/O)の設定が有効か無効かを示すR/O状態ビット207も記録される。光学ドライブ21はライタブルなものであるが、リード・オンリーの設定が有効なものとしてR/O状態ビット207に記録されていれば、ファームウェア205は光学ドライブ21をリード・オンリーなものとして動作させる。光学ドライブ21は、ホスト・インターフェイス209がIDEポート113からリード・オンリー設定コマンドを受けることによって、R/O状態ビット207を書き換え、ファームウェア205の動作をリード・オンリーに設定することができる。同様に、光学ドライブ21は、ホスト・インターフェイス209がIDEポート113からリード・オンリー解除コマンドを受けることによって、R/O状態ビット207を書き換え、ファームウェア205の動作をライタブルなものと設定することもできる。このようにリード・オンリーに設定したりライタブルに設定したりすることを光学ドライブ21のセキュリティ機能という。ファームウェア205はタイマー機能を含む。リード・オンリー設定コマンドおよびリード・オンリー解除コマンドは、ファームウェア205に含まれるタイマー機能によって、光学ドライブ21の電源が投入され初期化のコマンドを受けてから一定時間の間だけ受け付けられる。また、R/O状態ビット207の状態は、光学ドライブ21の電源を切っても保持される。これらの詳細は後述する。
【0033】
図4は、BIOSフラッシュROM129、セキュアNVRAM131およびメイン・メモリ105の内部構成を示す図である。図4(A)に示すBIOSフラッシュROM129は、不揮発性で記憶内容の電気的な書き替えが可能なメモリであり、システムの起動および管理に使われる基本プログラムであるシステムBIOS251、電源および温度などの動作環境を管理するソフトウェアである各種ユーティリティ253、ノートPC10の電源が投入されたときに起動され、ハードウェアの初期設定とテストを行うPOST(Power-On Self Test)255、CPU101がSMMで動作するときに起動されるSMIサービス・ルーチン257、HDD121にアクセスするINT13Hハンドラ259などが格納されている。BIOS−ROM129に格納されているこれらのプログラム・モジュールはBIOSを構成する。本実施の形態では、POST255が光学ドライブ21をリード・オンリーに設定する動作を行うように構成されている。なお、リード・オンリーに設定するプログラム・モジュールは、POST255から分離して構成することもできる。また、CPU101がOSによる制御からSMMに移行した場合、光学ドライブ21をリード・オンリーに設定する動作はSMIサービス・ルーチン257が行う。いずれも詳細は後述する。
【0034】
図4(B)に示すセキュアNVRAM131は、ノートPC10の電源を切っても消失しないように電池でバックアップされ、記憶された内容をシステムBIOS251による操作によって読み書き禁止に設定することのできるRAMである。セキュアNVRAM131は、PCのデバイス・コントローラ(CPUブリッジ103およびI/Oブリッジ111)の設定情報261、およびデバイス・コントローラに接続された各々のデバイスについての情報であるデバイス情報263を記憶している。設定情報261の内容としては、主にディスク装置の起動順序やドライブ番号、各周辺機器の接続方法やデータ転送に関するパラメータ、およびPOP(パワーオン・パスワード)などがある。デバイス情報263は、デバイス・コントローラに接続された各々のデバイスに固有の機器ID206、および各々のデバイス内部の設定情報などが含まれる。スワッパブル・ベイ123に接続された光学ドライブ21の機器ID206と内部設定情報も、デバイス情報263に含まれる。
【0035】
IDEポート113に接続された光学ドライブ21にかかる設定情報261は、以下の(1)〜(3)に示す3通りを示している。
(1)「HIGH」
光学ドライブ21が、セキュリティ機能を具備するか否かにかかわらず、光学ドライブ21に対するIDEポート113無効にすることで、ノートPC10が光学ドライブの存在を認識できないようにしてアクセスを完全に制限する。
(2)「R/O」
IDEポート113にセキュリティ機能を具備する光学ドライブ21が接続された場合、その光学ドライブ21をリード・オンリーに設定する。セキュリティ機能を具備しない光学ドライブが接続された場合は、上記「HIGH」の場合と同様にIDEポート113を無効にする。
(3)「NONE」
IDEポート113に接続される光学ドライブ21に対するノートPC10からのアクセスを制限しないで自由に行わせる。リード・オンリーに設定されている光学ドライブ21が装着された場合はライタブルに設定する。
ノートPC10は、ユーザの用途に基づいて工場で組み立てる段階で上記(1)〜(3)のうちいずれかの設定を組み込むことができるが、本実施の形態では(2)に設定された状態を中心にして説明する。なお、設定内容はセキュアNVRAMに格納され、BIOS以外はアクセスできないように構成されている。
【0036】
図4(C)に示すメイン・メモリ105には、ノートPC10の通常の動作で使用されるユーザ領域273の他に、SMRAM(System Management RAM)271としての領域が確保されている。ハードウェアによってCPU101のSMI#がアサートされた場合、CPU101はSMMの動作に入り、システムBIOS251の制御下でSMIサービス・ルーチン257が呼び出されて実行される。SMMで動作するCPU101はシングル・タスクでの動作で、すべての割り込みは無効となり、SMRAM271はSMMで動作するCPU101のみが独占的に使用可能となるので、SMIサービス・ルーチン257以外のタスクに制御が渡ることはない。CPU101がSMMで動作する間、SMMに移行する直前までOSおよびその上で動作していたソフトウェアとユーザ・データの動作状態はユーザ領域273に保持される。また、SMMに移行する直前のレジスタの状態を示す情報はSMRAM271に記憶される。そして、CPU101がSMMでの動作を終了するとSMRAM271に記憶されたレジスタの状態を示す情報に基づいて、CPU101はOSによる制御に移行してユーザ領域273に保持されていた動作状態を復帰させる。
【0037】
図5は、以上で説明したノートPC10に光学ドライブ21を取り付けて電源を投入する際に実行される処理を、フローチャートで書き表したものである。ノートPC10の電源を投入すると、システムBIOS251による制御下でPOST255によってハードウェアの初期設定の処理が開始される(ブロック301〜303)。POST255は、光学ドライブ21に初期化のコマンドを送る(ブロック305)。この初期化のコマンドの中で、POST255は光学ドライブ21に対して、光学ドライブ21の機器ID206と、光学ドライブ21が自らをリード・オンリーなものとして動作させたりそれを解除したりするセキュリティ機能に対応しているか否かについて照会する。なお、セキュリティ機能に関する照会は、IDEコマンドの中でメーカーが独自に設定して使用できるベンダー・コマンドによって行われる。従って、セキュリティ機能に対応していない光学ドライブ21はベンダー・コマンドには応答しないので、POST255は送信したコマンドに対する応答がなければ光学ドライブ21はセキュリティ機能に対応していないと判断することができる。当然このベンダー・コマンドは一般には公開されない。
【0038】
初期化のコマンドを受け取った光学ドライブ21は(ブロック307)、自らの機器ID206と、セキュリティ機能の有無についてPOST255に返信する(ブロック309)。POST255は、光学ドライブ21からの返信に基づいて、まず光学ドライブ21のセキュリティ機能の有無について判断する(ブロック311)。光学ドライブ21がセキュリティ機能に対応したものであれば、設定情報261に含まれる光学ドライブ21にかかる設定について確認する(ブロック313)。確認した設定が「R/O」であれば、POST255は光学ドライブ21をリード・オンリーに設定するコマンド(以後リード・オンリー設定コマンドという)を送信する(ブロック315)。確認した設定が「NONE」であれば、POST255は光学ドライブ21のリード・オンリーを解除するコマンド(以後リード・オンリー解除コマンドという)を送信する(ブロック317)。確認した設定が「HIGH」であれば、POST255はIDEポート113の光学ドライブ21への接続部分を無効にし(ブロック319)、ブロック331の処理に進む。
【0039】
リード・オンリー設定コマンドを受け取った光学ドライブ21は、自らをリード・オンリーの動作に設定する(ブロック321)。リード・オンリー解除コマンドを受け取った光学ドライブ21は、自らのリード・オンリーの設定を解除してライタブルに動作できるようにする(ブロック323)。なお、リード・オンリー設定コマンドおよびリード・オンリー解除コマンドも、一般には公開しないベンダー・コマンドである。またブロック315および317で、リード・オンリー設定コマンドおよびリード・オンリー解除コマンドをPOST255が受け取った機器ID206をキーにして暗号化してから送信すれば、光学ドライブ21を解析したり、ノートPC10から光学ドライブ21に送られるコマンドを解析したりしてリード・オンリーの設定を解除する方法を割り出すことが困難になるのでより望ましい。リード・オンリーの設定もしくは解除が完了した光学ドライブ21は、コマンドが正常に完了したとの返信をPOST255に返信する(ブロック325)。POST255は、光学ドライブ21からコマンドが正常に完了したとの返信を受けられたか否かを判断し(ブロック327)、正常ならばブロック331の処理に進み、正常な返信を受けられなかったらブロック319に進んでIDEポート113の光学ドライブ21への接続部分を無効にした後、ブロック331の処理に進む。
【0040】
ブロック311で、光学ドライブ21がセキュリティ機能に対応したものでないと判断したときも、設定情報261に含まれる光学ドライブ21にかかる設定について確認する(ブロック329)。確認した設定が「R/O」もしくは「HIGH」であれば、POST255はブロック319に進んでIDEポート113の光学ドライブ21への接続部分を無効にした後、ブロック331の処理に進む。確認した設定が「NONE」であれば、POST255はブロック331の処理に進む。以上の処理が終了したPOST255は、光学ドライブ21に関する機器ID206とブロック311で判断したセキュリティ機能の有無の情報をデバイス情報263としてセキュアNVRAM131に記憶して(ブロック331)、以後のアクセスを禁止するためにセキュアNVRAM131をロックする。その後、BIOS−ROM129からINT13Hハンドラ259を呼び出してOSを起動させる(ブロック333〜335)。図5を参照して述べた光学ドライブ21のセキュリティの設定にかかる処理は、ノートPC10の電源が投入されてからOSが起動されるまでのプロセス中の任意のタイミングで実行されればよい。
【0041】
図6は、光学ドライブ21がIDEポート113からコマンドを受け取った際にファームウェア205で実行される処理を、フローチャートで書き表したものである。このフローチャートでは、光学ドライブ21が本発明にかかるセキュリティ機能を備えている場合を示している。光学ドライブ21がIDEポート113から何らかのコマンドを受けると(ブロック401〜403)、ファームウェア205はまずそのコマンドが書き込みコマンドであるか否かを判断する(ブロック405)。書き込みコマンドであれば、ファームウェア205は次にR/O状態ビット207を読み、リード・オンリーの設定であるか否かを判断する(ブロック407)。リード・オンリーの設定でなければ、光学ドライブ21はライタブルなものとして動作するので、書き込みコマンドをそのまま実行し、IDEポート113に対して正常なレスポンスを返信する(ブロック409)。リード・オンリーの設定であれば、光学ドライブ21はリード・オンリーなものとして動作するので、書き込みコマンドを実行せず、IDEポート113に対してエラーを返信する(ブロック411)。
【0042】
ブロック405で、受け取ったコマンドが書き込みコマンドでない場合、次にファームウェア205はそのコマンドが図5のブロック305で送られたBIOSからの初期化コマンドであるか否かを判断する(ブロック413)。初期化コマンドであれば、ファームウェア205の内部でタイマー機能をリセットして計時をスタートし(ブロック415)、ブロック409に進んでIDEポート113に対して正常なレスポンスを返信する。ここでいう正常なレスポンスは、図5のブロック309、311で示したように、自らの機器ID206と、セキュリティ機能の有無に関する情報が含まれる。
【0043】
ブロック413で、受け取ったコマンドが初期化コマンドでない場合、次にファームウェア205はそのコマンドがリード・オンリー設定コマンドまたはリード・オンリー解除コマンドであるか否かを判断する(ブロック417)。リード・オンリー設定コマンドまたはリード・オンリー解除コマンドでなければ、ブロック409に進んでコマンドを実行し、IDEポート113に対して正常なレスポンスを返信する。リード・オンリー設定コマンドまたはリード・オンリー解除コマンドであれば、ファームウェア205のタイマー機能が、ブロック415で初期化コマンドを受け取ってからの経過時間が所定値以内であることを示しているか否かについて判断する(ブロック419)。初期化コマンドを受け取ってから所定値以上の時間を経過していれば、ブロック411に進んで、コマンドを実行せずにIDEポート113に対してエラーを返信する。初期化コマンドを受け取ってから経過時間が所定値以内であれば、ブロック409に進んでリード・オンリー設定コマンドもしくはリード・オンリー解除コマンドを実行してR/O状態ビット207の状態を書き換え、IDEポート113に対して正常なレスポンスを返信する。以上の処理は、光学ドライブ21の電源が切られると終了するが(ブロック421〜423)、光学ドライブ21の動作が続く間はブロック403〜421の間で繰り返される。
【0044】
このブロック419の判断の基準となる経過時間の最大値は、ノートPC10の電源が投入されてから図5の処理が終了するまでの標準的な所要時間を想定して設定することができる。要は、光学ドライブ21に対して送られたリード・オンリー設定コマンドまたはリード・オンリー解除コマンドが、ノートPC10がBIOSによって図5の処理を実行している間に限って受け付けられるように経過時間の最大値を設定すればよいのである。こうすれば、ノートPC10において図5および図6に示した処理を経由してOSが起動された状態では、セキュリティに関するコマンドが盗まれてもOSを経由してリード・オンリーの設定を解除することはできないので安全である。なお、光学ドライブ21がBIOSによる制御のときだけリード・オンリーを解除できるようにするには、これ以外にも、たとえばリード・オンリー設定コマンドを一度受け付けたら、光学ドライブ21の電源を切るまでリード・オンリー解除コマンドを受け付けないようにする方法もある。あるいは、R/O状態ビット207とは別個に、リード・オンリー設定コマンドまたはリード・オンリー解除コマンドを既に受けたか否かを表すビットをフラッシュROM203に設けてそれを利用する方法などもある。
【0045】
設定情報261に含まれる光学ドライブ21にかかる設定が「R/O」であれば、以上で説明した処理により、光学ドライブ21がリード・オンリーに設定された後で起動されたOSは光学ドライブ21をリード・オンリーなものとして認識する。従って、OSから光学ドライブ21へのデータの入出力を制御するデバイス・ドライバを経由して、光学ドライブ21に書き込みコマンドが送られることはない。また、OSのデバイス・ドライバを経由せずに光学ドライブ21に書き込みコマンドを送るアプリケーション・ソフトがあっても、ブロック411のようにリード・オンリーに設定された光学ドライブ21の内部処理でそのコマンドに対してエラーが返信される。
【0046】
さらに、光学ドライブ21をリード・オンリーに設定する動作はOSが起動される前のBIOSの制御による初期設定の段階で行われるから、ノートPC10に標準的にインストールされたOSとは異なる別のOSが起動されても、そのOSが起動された時点では光学ドライブ21は既にリード・オンリーに設定されており、タイマーで設定した時間が経過すれば、たとえ暗号化された正しいコマンドがそのOSによって送られたとしてもリード・オンリーの設定を解除することはできない。また、リード・オンリーに設定可能なセキュリティ機能を最初から備えていない光学ドライブを接続してノートPC10の電源を投入した場合も、セキュアNVRAM131の設定情報が「R/O」であれば、IDEポートへの接続部分が無効にされることにより、その光学ドライブは使用できなくなり安全である。セキュアNVRAM131の設定情報が「R/O」のときは、本発明にかかるセキュリティ機能を備えた光学ドライブ21のみをリード・オンリーに設定した上で使用することが可能である。
【0047】
ただし、光学ドライブ21はスワッパブル・ベイ123を介してノートPC10に接続されている。従って、光学ドライブ21をスワッパブル・ベイ123から外した状態でノートPC10を起動すれば、光学ドライブ21をリード・オンリーに設定する動作を行わずにOSを起動することができる。そしてOSが起動した後にスワッパブル・ベイ123に光学ドライブ21をホット・スワップで接続することで、リード・オンリーに設定する動作をさせないで光学ドライブ21をライタブルな状態で動作できるとすればセキュリティ上望ましくない。さらに、リード・オンリーに設定可能なセキュリティ機能を最初から備えていない光学ドライブをホット・スワップで接続することで、IDEポートの動作を無効にすることなく光学ドライブの使用ができるようではセキュリティが十分に確保されているとはいえない。
【0048】
図7は、OSが起動されているノートPC10のスワッパブル・ベイ123に光学ドライブ21をホット・スワップで接続する際に実行される処理を、フローチャートで書き表したものである。スワッパブル・ベイ123に光学ドライブ21が取り付けられると(ブロック501)、着脱レバー33が必ず動かされるので、レバー・スイッチ125が開閉されたことをエンベデッド・コントローラ133が認識する(ブロック503)。レバー・スイッチ125の開閉に反応したエンベデッド・コントローラ133は、CPU101のSMI#をアサートしてSMMで動作させ(ブロック505)、システムBIOS251による制御下でSMIサービス・ルーチン257をSMRAM271に展開して実行させる。エンベデッド・コントローラ133の動作はCPU101とは独立しているので、以上の処理はOSには依存せずに行われる。また、ハードウェア全体について初期設定する必要があるPOST255による処理とは異なり、SMIサービス・ルーチン257による処理はスワッパブル・ベイ123に接続されるデバイスに関する処理だけを行えばよい。
【0049】
SMIサービス・ルーチン257は、図5で示したPOST255による処理のブロック305と同じように、光学ドライブ21にデバイスの初期化のコマンドを送る(ブロック507)。このデバイスの初期化のコマンドの中で、SMIサービス・ルーチン257は光学ドライブ21に対して、光学ドライブ21の機器ID206と、光学ドライブ21のセキュリティ機能の有無について照会する。初期化のコマンドを受け取った光学ドライブ21は、ブロック307〜309に記載された動作と同様に、照会された内容についてSMIサービス・ルーチン257に返信する。
【0050】
返信を受け取ったSMIサービス・ルーチン257は(ブロック509)、まず光学ドライブ21のセキュリティ機能の有無について判断する(ブロック511)。光学ドライブ21がセキュリティ機能に対応したものであれば、次にSMIサービス・ルーチン257は光学ドライブ21の機器ID206およびセキュリティの設定を、前回スワッパブル・ベイ123に接続されていた光学ドライブについてのデバイス情報263として記録されている情報と比較する(ブロック513)。前回と同一の光学ドライブ21が接続され、かつリード・オンリーであるか否かの設定が前回と同一であると判断されたら、新たな設定の動作を省略してもよいので、そのままブロック527の処理に進む。
【0051】
ブロック513で、前回と同一の光学ドライブ21が接続されなかったと判断された場合、またはリード・オンリーであるか否かの設定が前回と異なっていると判断された場合は、設定情報261に含まれる光学ドライブ21にかかる設定について確認する(ブロック515)。確認した設定が「R/O」であれば、SMIサービス・ルーチン257は光学ドライブ21にリード・オンリー設定コマンドを送信する(ブロック517)。確認した設定が「NONE」であれば、SMIサービス・ルーチン257は光学ドライブ21にリード・オンリー解除コマンドを送信する(ブロック519)。確認した設定が「HIGH」であれば、SMIサービス・ルーチン257はIDEポート113の光学ドライブ21への接続部分を無効にする(ブロック521)。ブロック517および519のコマンドを受けてリード・オンリーの動作の設定もしくは解除が完了した光学ドライブ21から、コマンドが正常に完了したとの返信をSMIサービス・ルーチン257が受けたか否かを判断し(ブロック523)、正常ならそのままブロック527の処理に進み、正常な返信を受けられなかったらブロック521に進んでIDEポート113の光学ドライブ21への接続部分を無効にした後、ブロック527の処理に進む。
【0052】
ブロック511で、光学ドライブ21がセキュリティ機能に対応したものでなければ、この場合も設定情報261に含まれる光学ドライブ21にかかる設定について確認する(ブロック525)。確認した設定が「R/O」もしくは「HIGH」であれば、SMIサービス・ルーチン257はブロック521に進んでIDEポート113の光学ドライブ21への接続部分を無効にした後、ブロック527の処理に進む。確認した設定が「NONE」であれば、SMIサービス・ルーチン257はそのままブロック527の処理に進む。以上の判断と処理の終了したSMIサービス・ルーチン257は、光学ドライブ21の機器ID206と、セキュリティ機能の有無と設定の内容についてセキュアNVRAM131にデバイス情報263として記憶し(ブロック527)、SMMを終了してOSによる動作を再開する(ブロック529〜531)。セキュアNVRAM131は、OSによる制御に移行する前にPOST255によってロックされ、以後OSやアプリケーション・ソフトからはアクセスできない。OSによる動作が再開したら、OSの側で新たに接続された光学ドライブ21を認識し、対応するデバイス・ドライバの読み込みなどの処理が行われる。
【0053】
スワッパブル・ベイ123へのホット・スワップであっても、光学ドライブ21はスワッパブル・ベイ123に接続されてからブロック507で初期化コマンドが送信されることになる。光学ドライブ21は、図6に記載したとおり、初期化コマンドが送信されてから一定時間だけ、リード・オンリー設定コマンドまたはリード・オンリー解除コマンドを受け付けることが可能である。その一定時間が経過した後は、コマンドによってその設定を解除することはできない。つまり、スワッパブル・ベイ123へのホット・スワップの場合も、光学ドライブ21の側の動作は図6で示したものと同一にすることでセキュリティを確実に確保することができる。
【0054】
なお、ノートPC10がサスペンド(もしくはハイバーネーションなど)の状態である間は、光学ドライブ21への電力の供給が停止されるが、R/O状態ビット207に記憶されていた内容は電源を切っても保持される。従って、サスペンドにされる前にR/O状態ビット207がリード・オンリーに設定されていれば、ノートPC10がリジュームしたときにも光学ドライブ21はリード・オンリーで再び動作する。ノートPC10で動作していたOSも、光学ドライブ21に対する認識および設定も含めて、サスペンドにされる前の状態のままでリジュームしてそのまま動作する。ノートPC10がレジュームするときに光学ドライブ21が一旦リード・オンリー解除コマンドを受け付ける状態になる場合であっても、OSの動作がリジュームする頃には、光学ドライブ21内部のタイマー機能は一定時間を経過して、再びリード・オンリー解除コマンドを受け付けないようになるのでセキュリティは確保される。
【0055】
R/O状態ビット207の設定が光学ドライブ21の電源を切ったら保持されない場合は、ノートPC10がサスペンドしてからリジュームして光学ドライブ21に再び電源が投入される際に、SMIサービス・ルーチン257と同一の処理を実行して、再び光学ドライブ21をリード・オンリーに設定すればよい。この場合も、OSの動作がリジュームする頃には、光学ドライブ21はタイマー機能によってリード・オンリー設定またはリード・オンリー解除のコマンドを受け付けないようになっている。
【0056】
以上で説明してきた動作はすべてハードウェアとBIOS(POST255およびSMIサービス・ルーチン257)によって行われ、OSおよびアプリケーション・ソフトは関与していない。そのため、OSの種類や設定などに関係なく、たとえノートPC10に標準的にインストールされたOSとは異なる別のOSが起動されたとしても、設定情報261に含まれる光学ドライブ21にかかる設定が「R/O」であれば、光学ドライブがライタブルな状態で動作することはない。また、ノートPC10に光学ドライブ21を取り付けて電源を投入した場合だけでなく、スワッパブル・ベイ123に光学ドライブ21をホット・スワップした場合も、さらにリード・オンリーに設定可能なセキュリティ機能を備えていない光学ドライブをホット・スワップした場合も、やはり設定情報261に含まれる光学ドライブ21にかかる設定が「R/O」であれば、光学ドライブがライタブルな状態で動作することはない。
【0057】
以上、光学ドライブの例について示してきたが、本発明は他にもハードディスク・ドライブ、半導体記憶装置など、PCに接続されるライタブルな記憶装置に対して適用可能である。また、本発明はIDE、USB、PCMCIA、CardBus、miniPCI、Express Cardなど、PCにライタブルな記憶装置を接続することが可能なインターフェイスに対して適用可能である。これらの記憶装置は、PC10に対して記録媒体単独で着脱可能な場合および記録媒体と駆動装置が一体となった状態の記憶装置として着脱可能な場合のいずれの場合であってもよい。その際重要なことは、PCでBIOSが実行される段階で記憶装置に書き込み禁止コマンドを送信すること、記憶装置がBIOSによる書き込み禁止コマンドに応答してリード・オンリーな動作になること、そしてOSが動作している状態では記憶装置のリード・オンリーの動作を解除できないことである。また、OSが動作している状態でホット・スワップが可能な記憶装置に対しては、PC側のハードウェアが記憶装置の接続を検出するようにすれば、OSおよびアプリケーション・ソフトには関係なくBIOSの制御によって記憶装置をリード・オンリーに設定することができるのでより望ましい。
【0058】
なお、図5および図7で説明した、設定情報261に含まれる光学ドライブ21にかかる設定が「HIGH」である場合の動作で、IDEポート113の光学ドライブ21への接続部分を無効にする(ブロック319および521)動作のかわりに、光学ドライブ21内部でIDEポート113から送られる全ての読み出しおよび書き込みのコマンドを実行せずにエラーを返信するようにしてもよい。その場合は、光学ドライブ21がそのような動作に対応し、かつPOST255およびSMIサービス・ルーチン257が光学ドライブ21をそのように動作させるコマンドを送信することができる必要がある。
【0059】
また、設定情報261に含まれる光学ドライブ21にかかる設定は、ユーザが勝手に変更できないものである必要がある。前述の実施の形態では、工場で組み立てられる段階でこの設定を組み込むようにしているが、これを管理者だけが利用できてユーザが利用できないスーパーバイザー・パスワードを利用して、管理者が設定できるようにしてもよい。
【0060】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。
【産業上の利用可能性】
【0061】
着脱可能に接続されて使用されるライタブルな記憶装置を使用するコンピュータに利用可能である。
【図面の簡単な説明】
【0062】
【図1】本発明の実施の形態にかかるノートPCの外観を示す斜視図である。
【図2】本発明の実施の形態にかかるノートPCのハードウェアの概略構成を示すブロック図である。
【図3】本発明の実施の形態にかかる光学ドライブ内部の概略構成を示すブロック図である。
【図4】本発明の実施の形態にかかるBIOSフラッシュROM、セキュアNVRAMおよびメイン・メモリの内部構成を示す図である。
【図5】ノートPCに光学ドライブを取り付けて電源を投入する際に実行される処理を書き表したフローチャートである。
【図6】光学ドライブがIDEポートからコマンドを受け取った際に実行される処理を書き表したフローチャートである。
【図7】OSが起動されているノートPCのスワッパブル・ベイに光学ドライブをホット・スワップで接続する際に実行される処理を書き表したフローチャートである。
【符号の説明】
【0063】
10…ノートPC
11…筐体
21…光学ドライブ
33…着脱レバー
101…CPU
111…I/Oブリッジ
113…IDEポート
123…スワッパブル・ベイ
125…レバー・スイッチ
129…BIOSフラッシュROM
131…セキュアNVRAM
133…エンベデッド・コントローラ
206…機器ID
207…R/O状態ビット
255…POST
257…SMIサービス・ルーチン
261…設定情報
263…デバイス情報
271…SMRAM

【特許請求の範囲】
【請求項1】
読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュリティの設定をする方法であって、
前記記憶装置を前記コンピュータに接続するステップと、
オペレーティング・システムによる制御が行われていない状態でBIOSが前記記憶装置のセキュリティ機能の有無を確認するステップと、
前記記憶装置が前記セキュリティ機能を具備すると判断した場合に前記BIOSが前記記憶装置に関するセキュリティの設定をするステップと、
前記セキュリティの設定を維持しながら前記BIOSから前記オペレーティング・システムに制御を移行するステップと
を有する方法。
【請求項2】
前記セキュリティ機能の有無を確認するステップと前記セキュリティの設定をするステップが前記BIOSがPOSTを実行する間に行われる請求項1記載の設定方法。
【請求項3】
前記セキュリティ機能が前記コンピュータから前記セキュリティの設定に関する特定のコマンドを受け取ったときに前記記憶装置が自らに前記セキュリティの設定をする機能および前記セキュリティの設定を解除する機能を含む請求項1記載の設定方法。
【請求項4】
前記記憶装置は、POSTの実行中に初期化コマンドを受け取ってから所定の時間が経過した後以降においては受け取った前記特定のコマンドを実行しない請求項3記載の設定方法。
【請求項5】
前記BIOSが前記記憶装置の固有情報を取得するステップと、前記特定のコマンドを前記固有情報を用いて暗号化するステップとを有する請求項3記載の設定方法。
【請求項6】
前記記憶装置に対するアクセスを完全に制限する設定、前記記憶装置に対するアクセスを無制限にする設定、および前記記憶装置を読み取り専用にする設定を含む設定情報を前記コンピュータに提供するステップを有する請求項1記載の設定方法。
【請求項7】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備すると判断し前記設定情報が前記アクセスを完全に制限する設定を示すときに、前記セキュリティの設定をするステップにおいて前記BIOSが前記記憶装置に対する前記コンピュータの入出力ポートを無効にする請求項6記載の設定方法。
【請求項8】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備すると判断し前記設定情報が前記読み取り専用にする設定を示すときに、前記セキュリティの設定をするステップにおいて前記BIOSが前記記憶装置を読み取り専用にする請求項6記載の設定方法。
【請求項9】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備すると判断し前記設定情報が前記アクセスを無制限にする設定を示すときに、前記セキュリティの設定をするステップにおいて前記BIOSが前記コンピュータからの前記記憶装置に対するアクセスを自由にする請求項6記載の設定方法。
【請求項10】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備しないと判断し前記設定情報が前記読み取り専用にする設定または前記アクセスを完全に制限する設定のいずれかを示すときに、前記セキュリティの設定をするステップにおいて前記BIOSが前記記憶装置に対する前記コンピュータの入出力ポートを無効にする請求項6記載の設定方法。
【請求項11】
前記セキュリティ機能の有無を確認するステップが、前記コンピュータから前記記憶装置に送った初期化コマンドに応答して前記記憶装置から前記コンピュータに送られた情報に基づいて行われる請求項1記載の方法。
【請求項12】
読み取りおよび書き込みが可能でかつ読み取り専用に設定することが可能な記憶装置をコンピュータが読み取り専用に設定する方法であって、
オペレーティング・システムを実行するステップと、
前記オペレーティング・システムの実行中に前記コンピュータに前記記憶装置が接続されたことを検出するステップと、
前記検出するステップに応答して前記オペレーティング・システムからBIOSに制御を移行するステップと、
前記BIOSが前記記憶装置を読み取り専用に設定するステップと、
前記読み取り専用に設定された状態を維持しながら前記BIOSから前記オペレーティング・システムに制御を移行するステップと
を有する設定方法。
【請求項13】
読み取りおよび書き込みが可能で外部から読み取り専用に設定することが可能な記憶装置を装着することができるコンピュータであって、
オペレーティング・システムを格納する記録媒体と、
BIOSを格納する不揮発性メモリと、
前記オペレーティング・システムと前記BIOSを切り替えて実行することができるプロセッサと、
前記記憶装置を着脱可能に接続する接続部と、
前記記憶装置に対するセキュリティの設定情報を格納する記憶部とを有し、
前記接続部に接続された前記記憶装置がセキュリティ機能を具備すると判断した場合に前記プロセッサは前記BIOSを実行して前記記憶装置を読み取り専用に設定するコンピュータ。
【請求項14】
前記記憶装置が光学ドライブ、ハードディスク・ドライブ、または半導体記憶装置のうちのいずれかである請求項13記載のコンピュータ。
【請求項15】
前記接続部がIDE、USB、PCMCIA、CardBus、miniPCI、Express Cardのうちいずれかのインターフェイス規格を介して前記記憶装置を前記コンピュータに接続する請求項13記載のコンピュータ。
【請求項16】
前記記憶装置が記録媒体と駆動部とが一体になって前記コンピュータから取り外し可能に構成されているか、または、前記記録媒体が前記駆動部から取り外し可能に構成されている請求項13記載のコンピュータ。
【請求項17】
前記オペレーティング・システムを実行している間に前記接続部に前記記憶装置が接続されたことを検出する検出部を有し、前記検出部が前記記憶装置の接続を検出したときに前記プロセッサはSMIを受け取って前記オペレーティング・システムから前記BIOSに制御を移行して前記記憶装置を読み取り専用に設定する請求項13記載のコンピュータ。
【請求項18】
読み取りおよび書き込みが可能でかつ読み取り専用に設定することが可能な記憶装置が接続されたコンピュータに、
前記記憶装置を読み取り専用に設定することが可能か否かを確認する機能と、
前記記憶装置に関するセキュリティの設定情報を参照する機能と、
前記記憶装置を読み取り専用に設定することが可能であると判断した場合に前記設定情報に基づいて前記記憶装置を読み取り専用に設定する機能と
をオペレーティング・システムが動作していない間に実現させるBIOS。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2008−276413(P2008−276413A)
【公開日】平成20年11月13日(2008.11.13)
【国際特許分類】
【出願番号】特願2007−117618(P2007−117618)
【出願日】平成19年4月26日(2007.4.26)
【出願人】(505205731)レノボ・シンガポール・プライベート・リミテッド (292)
【復代理人】
【識別番号】100106699
【弁理士】
【氏名又は名称】渡部 弘道
【復代理人】
【識別番号】100077584
【弁理士】
【氏名又は名称】守谷 一雄
【Fターム(参考)】