(57)【要約】【課題】コンピュータに接続された光学ドライブに対する書き込みを禁止にする方法を提供する。【解決手段】  ＢＩＯＳが光学ドライブのセキュリティ機能の有無を確認する（３１１）。光学ドライブがセキュリティ機能を具備する場合には、ＢＩＯＳが光学ドライブに対して読み取り専用にするコマンドを送る（３１５）。コマンドを受け取った光学ドライブは、自らを読み取り専用に動作するように設定する（３２１）。読み取り専用のコマンドやそれを解除するコマンドはＢＩＯＳだけが光学ドライブに送るようにしているので、ＯＳに制御が移行したときには、当該ＯＳや他のＯＳ、あるいはアプリケーション・ソフトから読み取り専用の設定を解除することはできない。【選択図】図５
2008276413.tif 000002
【特許請求の範囲】
【請求項１】
読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュリティの設定をする方法であって、
前記記憶装置を前記コンピュータに接続するステップと、
オペレーティング・システムによる制御が行われていない状態でＢＩＯＳが前記記憶装置のセキュリティ機能の有無を確認するステップと、
前記記憶装置が前記セキュリティ機能を具備すると判断した場合に前記ＢＩＯＳが前記記憶装置に関するセキュリティの設定をするステップと、
前記セキュリティの設定を維持しながら前記ＢＩＯＳから前記オペレーティング・システムに制御を移行するステップと
を有する方法。
【請求項２】
前記セキュリティ機能の有無を確認するステップと前記セキュリティの設定をするステップが前記ＢＩＯＳがＰＯＳＴを実行する間に行われる請求項１記載の設定方法。
【請求項３】
前記セキュリティ機能が前記コンピュータから前記セキュリティの設定に関する特定のコマンドを受け取ったときに前記記憶装置が自らに前記セキュリティの設定をする機能および前記セキュリティの設定を解除する機能を含む請求項１記載の設定方法。
【請求項４】
前記記憶装置は、ＰＯＳＴの実行中に初期化コマンドを受け取ってから所定の時間が経過した後以降においては受け取った前記特定のコマンドを実行しない請求項３記載の設定方法。
【請求項５】
前記ＢＩＯＳが前記記憶装置の固有情報を取得するステップと、前記特定のコマンドを前記固有情報を用いて暗号化するステップとを有する請求項３記載の設定方法。
【請求項６】
前記記憶装置に対するアクセスを完全に制限する設定、前記記憶装置に対するアクセスを無制限にする設定、および前記記憶装置を読み取り専用にする設定を含む設定情報を前記コンピュータに提供するステップを有する請求項１記載の設定方法。
【請求項７】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備すると判断し前記設定情報が前記アクセスを完全に制限する設定を示すときに、前記セキュリティの設定をするステップにおいて前記ＢＩＯＳが前記記憶装置に対する前記コンピュータの入出力ポートを無効にする請求項６記載の設定方法。
【請求項８】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備すると判断し前記設定情報が前記読み取り専用にする設定を示すときに、前記セキュリティの設定をするステップにおいて前記ＢＩＯＳが前記記憶装置を読み取り専用にする請求項６記載の設定方法。
【請求項９】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備すると判断し前記設定情報が前記アクセスを無制限にする設定を示すときに、前記セキュリティの設定をするステップにおいて前記ＢＩＯＳが前記コンピュータからの前記記憶装置に対するアクセスを自由にする請求項６記載の設定方法。
【請求項１０】
前記セキュリティ機能の有無を確認するステップにおいて前記記憶装置が前記セキュリティ機能を具備しないと判断し前記設定情報が前記読み取り専用にする設定または前記アクセスを完全に制限する設定のいずれかを示すときに、前記セキュリティの設定をするステップにおいて前記ＢＩＯＳが前記記憶装置に対する前記コンピュータの入出力ポートを無効にする請求項６記載の設定方法。
【請求項１１】
前記セキュリティ機能の有無を確認するステップが、前記コンピュータから前記記憶装置に送った初期化コマンドに応答して前記記憶装置から前記コンピュータに送られた情報に基づいて行われる請求項１記載の方法。
【請求項１２】
読み取りおよび書き込みが可能でかつ読み取り専用に設定することが可能な記憶装置をコンピュータが読み取り専用に設定する方法であって、
オペレーティング・システムを実行するステップと、
前記オペレーティング・システムの実行中に前記コンピュータに前記記憶装置が接続されたことを検出するステップと、
前記検出するステップに応答して前記オペレーティング・システムからＢＩＯＳに制御を移行するステップと、
前記ＢＩＯＳが前記記憶装置を読み取り専用に設定するステップと、
前記読み取り専用に設定された状態を維持しながら前記ＢＩＯＳから前記オペレーティング・システムに制御を移行するステップと
を有する設定方法。
【請求項１３】
読み取りおよび書き込みが可能で外部から読み取り専用に設定することが可能な記憶装置を装着することができるコンピュータであって、
オペレーティング・システムを格納する記録媒体と、
ＢＩＯＳを格納する不揮発性メモリと、
前記オペレーティング・システムと前記ＢＩＯＳを切り替えて実行することができるプロセッサと、
前記記憶装置を着脱可能に接続する接続部と、
前記記憶装置に対するセキュリティの設定情報を格納する記憶部とを有し、
前記接続部に接続された前記記憶装置がセキュリティ機能を具備すると判断した場合に前記プロセッサは前記ＢＩＯＳを実行して前記記憶装置を読み取り専用に設定するコンピュータ。
【請求項１４】
前記記憶装置が光学ドライブ、ハードディスク・ドライブ、または半導体記憶装置のうちのいずれかである請求項１３記載のコンピュータ。
【請求項１５】
前記接続部がＩＤＥ、ＵＳＢ、ＰＣＭＣＩＡ、ＣａｒｄＢｕｓ、ｍｉｎｉＰＣＩ、Ｅｘｐｒｅｓｓ  Ｃａｒｄのうちいずれかのインターフェイス規格を介して前記記憶装置を前記コンピュータに接続する請求項１３記載のコンピュータ。
【請求項１６】
前記記憶装置が記録媒体と駆動部とが一体になって前記コンピュータから取り外し可能に構成されているか、または、前記記録媒体が前記駆動部から取り外し可能に構成されている請求項１３記載のコンピュータ。
【請求項１７】
前記オペレーティング・システムを実行している間に前記接続部に前記記憶装置が接続されたことを検出する検出部を有し、前記検出部が前記記憶装置の接続を検出したときに前記プロセッサはＳＭＩを受け取って前記オペレーティング・システムから前記ＢＩＯＳに制御を移行して前記記憶装置を読み取り専用に設定する請求項１３記載のコンピュータ。
【請求項１８】
読み取りおよび書き込みが可能でかつ読み取り専用に設定することが可能な記憶装置が接続されたコンピュータに、
前記記憶装置を読み取り専用に設定することが可能か否かを確認する機能と、
前記記憶装置に関するセキュリティの設定情報を参照する機能と、
前記記憶装置を読み取り専用に設定することが可能であると判断した場合に前記設定情報に基づいて前記記憶装置を読み取り専用に設定する機能と
をオペレーティング・システムが動作していない間に実現させるＢＩＯＳ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置に対してセキュリティを設定する技術に関し、さらに詳細には書き込み可能な記憶装置に対してコンピュータからの書き込みを禁止する技術に関する。
【背景技術】
【０００２】
光学ディスク（Optical Disc）は、レーザ光を使用してデータの読み書きを行う円盤形の記憶媒体の総称である。光学ディスクの中でも、現在はＣＤ、ＤＶＤなどが一般的に使用されているが、ブルーレイ・ディスク（Blu-ray Disc、以後ＢＤという）やＨＤ−ＤＶＤなどの次世代規格のディスクも市場への投入が始まっている。これらの光学ディスクは、コンピュータのデータを記憶するデータ用の媒体としてだけでなく、音楽および映像を専用機器で記録および再生できる媒体としても使用される。光学ドライブ（Optical Disk Drive）は、光学ディスクを回転駆動してデータの読み出しおよび書き込みを行う記憶装置である。パーソナル・コンピュータ（以下ＰＣという）においては、デスクトップ型、ノートブック型などのような種別を問わず、大多数の製品には光学ドライブが搭載されている。
【０００３】
光学ディスクは外形はそれぞれ類似しているが、さまざまな異なる規格に基づいて製造されており使用に際してユーザの混乱を引き起こすことも少なくない。データ用の媒体に限っても、ＣＤ、ＤＶＤ、ＢＤおよびＨＤ−ＤＶＤの各々に、読み出し専用のもの、１回だけ書き込み可能なもの、または複数回の書き換えが可能なものなどの区分がある。これらの多くの規格に対応するために、光学ドライブにも多くの種類が存在している。光学ドライブの種類で代表的なものとして、ＣＤからの読み出しのみが可能なＣＤ−ＲＯＭドライブ、ＣＤおよびＤＶＤからの読み出しが可能なＤＶＤ−ＲＯＭドライブ、ＣＤからの読み出し／書き込みおよびＤＶＤからの読み出しが可能なコンボ・ドライブ、ＣＤおよびＤＶＤのすべてに対する読み出しと書き込みが可能なスーパーマルチ・ドライブなどがある。特に最近は、コンボ・ドライブやスーパーマルチ・ドライブなどのような、データの書き込みが可能な光学ドライブの普及が著しい。これに、ＢＤやＨＤ−ＤＶＤなどのような次世代規格を含めると、光学ドライブの種類はさらに多くなる。
【０００４】
読み出しおよび書き込みが可能な記憶装置に対してコンピュータから読み出しのみが可能なように動作させる技術として以下のようなものがある。特許文献１は、コンピュータの起動処理の間に管理者が設定した記憶装置の使用許可／不許可をＢＩＯＳが確認し、確認された条件に基づいて記憶装置の初期化を禁止することで使用を制限するものである。また、オペレーティング・システム（以後ＯＳという）による制御時にフィルタ・ドライバを使用して記憶装置への書き込みを制限する技術についても記載している。特許文献２は、コンピュータと磁気ディスク装置との間にライト・プロテクト装置を設け、磁気ディスク装置を書き込み禁止にする技術について記載している。特許文献３は、書き込み可能なモードと書き込みができないモードとを外部からのスイッチ操作によって切り替えるディスク装置について記載している。特許文献４は、ファームウェアの処理でフラッシュ・メモリの一部を消去することにより、本来は記録が可能な光ディスク装置の記録機能を抑止し再生専用にする技術について記載している。
【特許文献１】特開２００６−３０９２９６号公報
【特許文献２】特開２００４−４７０４１号公報
【特許文献３】特開２００２−２５１３２４号公報
【特許文献４】特開２００７−１２１２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前述のように、データの読み書きが可能な（以後ライタブルという）光学ドライブが普及した結果、部品や製品の点数を削減してコスト・ダウンを図るために光学ドライブの製造業者はデータの読み出しだけが可能な読み取り専用の（以後リード・オンリーという）光学ドライブの製造を制限する傾向になっている。そのため、市場にはライタブルな光学ドライブだけが投入されるようになり、リード・オンリーの光学ドライブは入手が困難になっている。
【０００６】
また、前述のようにさまざまな規格の光学ディスクに対応するために、光学ドライブには多くの種類が存在する。そして、新しい規格の光学ディスクが登場するたびに、さらに光学ドライブの種類は増大する。ＰＣメーカーは、製造用およびメンテナンス用に保有する部品の種類をなるべく少なくして、部品管理の簡素化やコスト削減を図る必要がある。このため、多くのＰＣメーカーはリード・オンリーの光学ドライブを部品として保有することをやめようとしている。
【０００７】
しかしながら、そのようなリード・オンリーの光学ドライブが全く必要ではなくなったということではない。企業および公的機関などのユーザは、業務で取り扱う大量の個人情報および機密情報を外部に漏洩させないためのセキュリティ管理を強化している。情報漏洩のルートの１つに、ライタブルな記憶装置によってデータが書き込まれた記録媒体がＰＣから取り外されて外部に持ち出されるというものがある。そのため、それらのユーザは、光学ドライブなどのように記録媒体単独または記録媒体と記憶装置を一体としてＰＣから取り外しが可能な記憶装置をリード・オンリーに構成したＰＣを、業務用として特別に発注することがある。ＰＣメーカーとしては、そのような需要にも応えるためにリード・オンリーの記憶装置を搭載したＰＣを供給する必要がある。
【０００８】
この問題に対処するために、ライタブルな光学ドライブをＰＣに取り付けてあらかじめリード・オンリーに設定して出荷することが考えられる。特許文献１の技術は、リード・オンリーに設定することが不可能なライタブルの光学ドライブに対して、ＯＳによる制御でＰＣから送られる書き込みコマンドをデバイス・ドライバが制限することによって、光学ドライブが実質的にリード・オンリーになるように扱っている。しかし、ウィンドウズ（登録商標）などのＯＳで動作するアプリケーション・ソフトの中にも、ＯＳがアプリケーション・ソフトに対して提供するデバイス・ドライバを経由せず、アプリケーション・ソフトから直接光学ドライブにデータ・アクセスするものがある。このような場合は、特許文献１の技術を採用しても、デバイス・ドライバを経由させないでアプリケーション・ソフトから光学ドライブに直接書き込みコマンドが送られる危険性がある。
【０００９】
さらに、フロッピー（登録商標）・ディスク、ＣＤ−ＲＯＭ、外付けハードディスク・ドライブ（以後ＨＤＤという）などを利用することにより、同一のＰＣで内蔵ＨＤＤに標準的にインストールされたＯＳとは異なる別のＯＳをインストールして起動することも可能である。これに対して、特許文献１の技術を適用した場合は、書き込みコマンドの送信を防止するように構成されたデバイス・ドライバとは異なる別のＯＳに含まれる別のデバイス・ドライバが立ち上がるので書き込みコマンドの送信は制限されない。
【００１０】
一方、特許文献４の技術にかかる光学ドライブは、もともとライタブルな光学ドライブの記録機能を停止して、リード・オンリーで動作するように設定するものである。この光学ドライブをＰＣに搭載した場合は、通常ＯＳが光学ドライブに対してリード・オンリーに設定するコマンドを送り、光学ドライブがそのコマンドを実行してリード・オンリーとなるように動作することになる。しかし、この場合も、デバイス・ドライバを経由せずに直接光学ドライブにデータ・アクセスすることができるアプリケーション・ソフトから、リード・オンリーの動作を解除するコマンドが送られる可能性がある。また、予定していない別のＯＳがインストールされて起動されることにより、リード・オンリーに設定するコマンドが光学ドライブに送られなかったり、解除コマンドを送られたりしてリード・オンリーの動作が確保されないことが予想される。
【００１１】
さらに、ＰＣに当初から装着されていたリード・オンリーに設定可能な光学ドライブを取り外し、そのかわりにリード・オンリーに設定できないライタブルの光学ドライブが取り付けられた場合は、光学ドライブはＯＳから送られたリード・オンリーに設定するコマンドを実行しないので、リード・オンリーの動作が確保されない。特に最近のＰＣには、電源が投入されてＯＳが動作している状態で、光学ドライブなどの周辺機器の取り付け、取り外し、または交換などが可能なスワッパブル・ベイを備えたものが多い。スワッパブル・ベイによって光学ドライブがＰＣに着脱可能に接続されている場合は、容易に光学ドライブを交換できるので、リード・オンリーに設定できないライタブルの光学ドライブが動作可能な状態で取り付けられる危険性が高い。
【００１２】
以上で述べたような従来の方法では、ライタブルな光学ドライブをリード・オンリーで動作させようとしても確実にセキュリティを確保することはできない。情報漏洩を防止するという観点では、光学ドライブをＰＣに取り付けることを不可能にするか、もしくは光学ドライブとＰＣとの接続に使用されるインターフェイスを使用不可能にすることも考えられるが、業務で使用する正当なアプリケーション・ソフトのインストールやデータの閲覧までもが制限されてしまうので、ユーザにとっては利便性を損なうことになる。これと同じ問題は、光学ドライブに限らず、ハードディスク・ドライブ、もしくは半導体記憶装置など、ライタブルでＰＣに着脱可能な記憶装置のほとんどについて存在する。
【００１３】
そこで本発明の目的は、読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュアにセキュリティの設定を行う方法を提供することにある。さらに本発明の目的は、そのようなセキュリティの設定が可能なコンピュータを提供することにある。さらに本発明の目的は、コンピュータにそのような設定を行わせるコンピュータ・プログラム（ＢＩＯＳ）を提供することにある。
【課題を解決するための手段】
【００１４】
本発明の第１の態様は、読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュリティの設定を行う方法を提供する。この設定方法では、コンピュータがＢＩＯＳを実行して記憶装置のセキュリティ機能の有無を確認する。セキュリティ機能は、本発明にかかるセキュリティの設定処理に応じて記憶装置が動作する機能を意味し、たとえば、コンピュータから記憶装置が特定のコマンドを受け取ったときに記憶装置が自らを読み取り専用にしたりそれを解除したりする機能とすることができる。記憶装置がセキュリティ機能を具備する場合には、ＢＩＯＳが記憶装置に対するセキュリティの設定をする。そして、ＢＩＯＳによる設定が維持されてＯＳに制御が移行しても記憶装置に対するセキュリティは確保される。
【００１５】
本発明においては、記憶装置に対するセキュリティの設定はＢＩＯＳだけによって行われるので、アプリケーション・ソフトから直接記憶装置にアクセスしたり、別のＯＳを起動したりして一旦設定されたセキュリティの設定を解除することができない。ＢＩＯＳは、コンピュータ・メーカだけが交換できるようにしたり、スーパーバイザー・パスワードを知っている管理者だけが交換できるようにしたり、不揮発性メモリと一体に交換されたときにはコンピュータが動作しないようにしたりすることができるので、一般のユーザは記憶装置に対して設定されたセキュリティを解除することは困難になる。セキュリティの設定を、コンピュータの電源が投入されてからＰＯＳＴを実行するタイミングで行うようにすれば、コンピュータの起動のたびに記憶装置のセキュリティが確保される。
【００１６】
記憶装置が、ＰＯＳＴの実行中に初期化コマンドを受け取ってから所定の時間が経過した後以降においてはセキュリティの設定に関する特定のコマンドを受け取ってもそれを実行しないようにすれば、特定のコマンドが盗まれてセキュリティが解除される危険性を軽減することができる。ＢＩＯＳが記憶装置の固有情報を取得し、セキュリティに関する特定のコマンドをその固有情報を用いて暗号化すると、特定のコマンドがコンピュータから記憶装置に転送される過程で盗聴されたり、記憶装置が分解されたりして盗まれる可能性を軽減することができる。
【００１７】
コンピュータは、あらかじめ記憶装置に対するアクセスを完全に制限する設定、アクセスを無制限にする設定、および記憶装置を読み取り専用にする設定を含む設定情報を用意しておくことができる。そしてＢＩＯＳはその設定情報を使用することで、記憶装置に対するセキュリティの設定方法を柔軟に選択することができる。たとえば記憶装置がセキュリティ機能を具備する場合は、設定情報に基づいて、ＢＩＯＳが記憶装置に対するコンピュータの入出力ポートを無効にしたり、記憶装置を読み取り専用にしたり、アクセスを自由にしたりすることが可能になる。また、記憶装置がセキュリティ機能を具備しない場合は、設定情報に基づいて、ＢＩＯＳがコンピュータの記憶装置に対する入出力ポートを無効にしたり、アクセスを自由に設定したりすることが可能になる。
【００１８】
本発明の第２の態様では、コンピュータがＯＳを実行している状態で、記憶装置がコンピュータに接続されたときのセキュリティの設定方法を提供する。ＯＳの実行中にコンピュータに記憶装置が接続されたことを検出するとＯＳからＢＩＯＳに制御が移行する。そして、ＢＩＯＳが記憶装置を読み取り専用に設定し、読み取り専用に設定された状態を維持しながらＢＩＯＳからＯＳに制御を移行するようにすることで、ＢＩＯＳによるセキュアなセキュリティ設定が実現できる。
【００１９】
本発明の第３の態様は、読み取りおよび書き込みが可能でセキュリティ機能を具備する記憶装置を装着することが可能なコンピュータを提供する。このコンピュータはＯＳを格納する記録媒体と、ＢＩＯＳを格納する不揮発性メモリと、ＯＳとＢＩＯＳを切り替えて実行することができるプロセッサと、記憶装置を接続する接続部と、記憶装置に対するセキュリティの設定情報を格納する記憶部とを有する。そして接続部に接続された記憶装置がセキュリティ機能を具備すると判断した場合にプロセッサはＢＩＯＳを実行して記憶装置を読み取り専用に設定する。この記憶装置は光学ドライブ、ハードディスク・ドライブ、半導体記憶装置のうちのいずれかとすることができる。また、接続部はＩＤＥ、ＵＳＢ、ＰＣＭＣＩＡ、ＣａｒｄＢｕｓ、ｍｉｎｉＰＣＩ、Ｅｘｐｒｅｓｓ  Ｃａｒｄのうちのいずれかのインターフェイス規格を介して記憶装置をコンピュータに接続することができる。
【００２０】
本発明は、記憶装置の駆動部がコネクタや光通信などでコンピュータに接続され記録媒体とともに物理的にコンピュータから取り外される場合や、記憶装置自体はコンピュータに固定され記録媒体だけが記憶装置から取り外される場合に特に適している。また、ＯＳが実行されている状態で、接続部に記憶装置が接続されたことを検出したらプロセッサがＳＭＩを受け取って、ＯＳからＢＩＯＳに制御を移行して記憶装置を読み取り専用に設定することもできる。これにより、ＯＳが動作している間にホット・スワップによって接続された記憶装置も読み取り専用に設定して動作させることができる。さらに本発明の第４の態様では、コンピュータに上記のセキュリティの設定を行う機能を実現させるＢＩＯＳを提供する。
【発明の効果】
【００２１】
本発明により、読み取りおよび書き込みが可能な記憶装置に対してコンピュータがセキュアにセキュリティの設定を行う方法を提供することができた。さらに本発明により、そのようなセキュリティの設定が可能なコンピュータを提供することができた。さらに本発明により、コンピュータにそのような設定を行わせるコンピュータ・プログラム（ＢＩＯＳ）を提供することができた。
【発明を実施するための最良の形態】
【００２２】
図１は、本発明の実施の形態にかかるノートブック型ＰＣ（以後ノートＰＣという）１０の外観および構成を示す斜視図である。ノートＰＣ１０は、表面にキーボードおよびポインティング・デバイスを搭載し内部に多くのデバイスを収納した筐体１１と、液晶ディスプレイ（ＬＣＤ）を表面に搭載した蓋部１３とで構成される。筐体１１の側面には、光学ドライブ２１が取り付けられている。光学ドライブ２１は開閉するトレイ２３を有し、トレイ２３にはイジェクト・ボタン２５が、常時筐体１１の側面に露出するように取り付けられている。ユーザがイジェクト・ボタン２５を押せば筐体１１の側面にトレイ２３がせり出す。光学ドライブ２１では、スペースの節約などの観点から、トレイ２３の側にスピンドル２９とピックアップ３１が取り付けられている。ユーザがトレイ２３上のスピンドル２９に光学ディスク２７の中央部を嵌め込んでセットし、筐体１１の側面にせり出したトレイ２３を筐体１１内部に押し戻せば、スピンドル２９が回転するとともに、ピックアップ３１が光学ディスク２７の中央部から周辺部へ向かう方向に往復移動し、それによって光学ドライブ２１は光学ディスク２７に対してデータの読み取りおよび書き込みをすることができるようになっている。
【００２３】
また、光学ドライブ２１はスワッパブル・ベイを介してノートＰＣ１０に取り付けられている。このスワッパブル・ベイは、ノートＰＣ１０でＯＳが動作している状態で、デバイスの取り付け、取り外し、交換を行うホット・スワップ、およびノートＰＣ１０がサスペンドである状態でデバイスの取り付け、取り外し、交換を行うウォーム・スワップに対応する。スワッパブル・ベイの着脱レバー３３を動かせば、光学ドライブ２１をノートＰＣ１０から取り外すことができる。着脱レバー３３は、光学ドライブ２１を物理的にインターフェイスから切り離すレバーであると同時に、光学ドライブ２１を取り付けようとする操作および切り離そうとする操作を認識し、それらの操作に対応したソフトウェアの処理をさせるためのスイッチ（図示せず）を含んでいる。
【００２４】
図２は、ノートＰＣ１０のハードウェアの概略構成を示すブロック図である。ＣＰＵ１０１は、ノートＰＣ１０の中枢機能を担う演算処理装置で、ＯＳ、ＢＩＯＳ、デバイス・ドライバ、あるいはアプリケーション・プログラムなどを実行する。ＣＰＵ１０１は、ＳＭＩ（System Management Interrupt）入力ピン（ＳＭＩ＃）がアサートされることによって、システム管理用の特権実行モードであるＳＭＭ（System Management Mode）で動作することが可能である。ＳＭＭで動作するＣＰＵ１０１は、ＢＩＯＳによる制御で主にサスペンド、レジューム、電源管理およびセキュリティ関連の操作を実行することができる。
【００２５】
ＣＰＵブリッジ１０３は、メイン・メモリ１０５へのアクセス動作を制御するためのメモリ・コントローラ機能や、接続されるデバイス間のデータ転送速度の差を吸収するデータ・バッファ機能などを含んだ構成となっている。メイン・メモリ１０５は、ＣＰＵ１０１が実行するプログラムの読み込み領域、処理データを書き込む作業領域として利用される書き込み可能メモリである。同時にメイン・メモリ１０５はＳＭＲＡＭ（System Management RAM）としての領域を含むが、これについては後述する。ビデオ・カード１０７は、ビデオ・チップ（図示せず）およびＶＲＡＭ（図示せず）を有し、ＣＰＵ１０１からの描画命令を受けて描画すべきイメージを生成しＶＲＡＭに書き込み、ＶＲＡＭから読み出したイメージを描画データとしてディスプレイ１０９に送る。
【００２６】
Ｉ／Ｏブリッジ１１１は、ＣＰＵブリッジ１０３と同様にチップセットを構成するデバイス・コントローラである。Ｉ／Ｏブリッジ１１１は、ＩＤＥ(Integrated Device Electronics)インターフェイス機能を備えたＩＤＥポート１１３を内蔵している。また、Ｉ／Ｏブリッジ１１１はＵＳＢインターフェイス１１５を介して、ＵＳＢ規格に対応した各種周辺機器を接続することが可能である。ここでいう各種周辺機器には、たとえば外付けの光学ドライブ、ハードディスク・ドライブ、半導体記憶装置などの記憶装置も含まれる。さらにＣａｒｄＢｕｓインターフェイス１１７、ｍｉｎｉＰＣＩインターフェイス１１９を通じて、それぞれの規格に対応した記憶装置を接続することも可能である。
【００２７】
ＩＤＥポート１１３には、ＡＴＡ（Advanced Technology Attachment）もしくはシリアルＡＴＡに対応したＨＤＤ１２１、およびＡＴＡＰＩ（ATA Packet Interface）に対応した光学ドライブ２１が接続される。ＨＤＤ１２１には、ＯＳ、デバイス・ドライバ、アプリケーション・プログラムなどがインストールされている。光学ドライブ２１は、スワッパブル・ベイ１２３を介してＩＤＥポート１１３に接続される。スワッパブル・ベイ１２３は、そこにデバイスを着脱しようとしてユーザが着脱レバー３３を動かしたときに開閉するレバー・スイッチ１２５を含むが、これについての詳細は後述する。
【００２８】
さらにＩ／Ｏブリッジ１１１は、ＬＰＣバス１２７を介して、高速なデータ転送を要求しないデバイスに接続される。ＬＰＣバス１２７には、ＢＩＯＳフラッシュＲＯＭ１２９、セキュアＮＶＲＡＭ（Non-Volatile RAM、不揮発性ＲＡＭ）１３１、エンベデッド・コントローラ１３３が接続されている。ＢＩＯＳフラッシュＲＯＭ１２９およびセキュアＮＶＲＡＭ１３１については後述する。
【００２９】
エンベデッド・コントローラ１３３は、８〜１６ビットのＣＰＵ、ＲＯＭ、ＲＡＭなどで構成されたマイクロ・コンピュータであり、さらに複数チャネルのＡ／Ｄ入力端子、Ｄ／Ａ出力端子、タイマー、およびデジタル入出力端子を備えている。エンベデッド・コントローラ１３３には、それらの入出力端子を介して冷却ファン（図示せず）、温度センサ（図示せず）、および電源装置を制御するパワー・コントローラ（図示せず）などが接続されており、ＰＣ内部の動作環境の管理にかかるプログラムをＣＰＵ１０１とは独立して実行させることができる。スワッパブル・ベイ１２３のレバー・スイッチ１２５もエンベデッド・コントローラ１３３に接続されており、エンベデッド・コントローラ１３３はレバー・スイッチ１２５の開閉を認識することによってスワッパブル・ベイ１２３にデバイスが着脱されたことを認識する。さらにエンベデッド・コントローラ１３３は、ＣＰＵ１０１のＳＭＩ＃をアサートしてＳＭＭで動作させることも、またスワッパブル・ベイ１２３に接続されたデバイスへの電力の供給を管理することも可能である。
【００３０】
なお、図２は本実施形態を説明するために必要なハードウェアの構成および接続関係を簡素化して記載したに過ぎないものである。ここまでの説明で言及した以外にも、たとえば有線ＬＡＮアダプタ、無線ＬＡＮモジュール、電源装置、Ｉ／Ｏコントローラ、キーボードおよびマウスなどのような入出力装置など、ＰＣ１０を構成するには多くのデバイスが使われる。しかしそれらは当業者には周知であり本発明の理解のために特に説明を必要としないので、ここでは詳しく言及しない。もちろん、図２で記載した複数のブロックを１個の集積回路もしくは装置としたり、逆に１個のブロックを複数の集積回路もしくは装置に分割して構成したりすることも、当業者が任意に選択することができる範囲においては本発明の範囲に含まれる。
【００３１】
図３は、光学ドライブ２１内部の概略構成を示すブロック図である。光学ドライブ２１の内部では、ＭＰＵ（Micro Processing Unit）２０１がフラッシュＲＯＭ２０３に格納されたファームウェア２０５を実行することにより、光学ドライブ２１の全ての機能をコントロールする。より具体的にはＭＰＵ２０１は、ＩＤＥポート１１３との通信を行うホスト・インターフェイス２０９、スピンドル・モータ２１９の回転を制御する回転制御系２１１、粗動モータ２２１を動かすことによってピックアップ３１を光学ディスク２７上の目標トラック付近に移動する粗動制御系２１３、ピックアップ３１上のアクチュエータ（図示せず）を制御してレーザ光を光学ディスク２７上の目標トラックに照射するピックアップ制御系２１５、およびピックアップ３１が光学ディスク２７から読み取った信号を処理してデータを再生し、またホスト・インターフェイス２０９から送られたデータに基づいて光学ディスク２７に記録する信号を生成する信号処理系２１７といった各々の機能を制御する。
【００３２】
またフラッシュＲＯＭ２０３には、光学ドライブ２１に固有の機器ＩＤ２０６、および光学ドライブ２１のリード・オンリー（Ｒ／Ｏ）の設定が有効か無効かを示すＲ／Ｏ状態ビット２０７も記録される。光学ドライブ２１はライタブルなものであるが、リード・オンリーの設定が有効なものとしてＲ／Ｏ状態ビット２０７に記録されていれば、ファームウェア２０５は光学ドライブ２１をリード・オンリーなものとして動作させる。光学ドライブ２１は、ホスト・インターフェイス２０９がＩＤＥポート１１３からリード・オンリー設定コマンドを受けることによって、Ｒ／Ｏ状態ビット２０７を書き換え、ファームウェア２０５の動作をリード・オンリーに設定することができる。同様に、光学ドライブ２１は、ホスト・インターフェイス２０９がＩＤＥポート１１３からリード・オンリー解除コマンドを受けることによって、Ｒ／Ｏ状態ビット２０７を書き換え、ファームウェア２０５の動作をライタブルなものと設定することもできる。このようにリード・オンリーに設定したりライタブルに設定したりすることを光学ドライブ２１のセキュリティ機能という。ファームウェア２０５はタイマー機能を含む。リード・オンリー設定コマンドおよびリード・オンリー解除コマンドは、ファームウェア２０５に含まれるタイマー機能によって、光学ドライブ２１の電源が投入され初期化のコマンドを受けてから一定時間の間だけ受け付けられる。また、Ｒ／Ｏ状態ビット２０７の状態は、光学ドライブ２１の電源を切っても保持される。これらの詳細は後述する。
【００３３】
図４は、ＢＩＯＳフラッシュＲＯＭ１２９、セキュアＮＶＲＡＭ１３１およびメイン・メモリ１０５の内部構成を示す図である。図４（Ａ）に示すＢＩＯＳフラッシュＲＯＭ１２９は、不揮発性で記憶内容の電気的な書き替えが可能なメモリであり、システムの起動および管理に使われる基本プログラムであるシステムＢＩＯＳ２５１、電源および温度などの動作環境を管理するソフトウェアである各種ユーティリティ２５３、ノートＰＣ１０の電源が投入されたときに起動され、ハードウェアの初期設定とテストを行うＰＯＳＴ（Power-On Self Test）２５５、ＣＰＵ１０１がＳＭＭで動作するときに起動されるＳＭＩサービス・ルーチン２５７、ＨＤＤ１２１にアクセスするＩＮＴ１３Ｈハンドラ２５９などが格納されている。ＢＩＯＳ−ＲＯＭ１２９に格納されているこれらのプログラム・モジュールはＢＩＯＳを構成する。本実施の形態では、ＰＯＳＴ２５５が光学ドライブ２１をリード・オンリーに設定する動作を行うように構成されている。なお、リード・オンリーに設定するプログラム・モジュールは、ＰＯＳＴ２５５から分離して構成することもできる。また、ＣＰＵ１０１がＯＳによる制御からＳＭＭに移行した場合、光学ドライブ２１をリード・オンリーに設定する動作はＳＭＩサービス・ルーチン２５７が行う。いずれも詳細は後述する。
【００３４】
図４（Ｂ）に示すセキュアＮＶＲＡＭ１３１は、ノートＰＣ１０の電源を切っても消失しないように電池でバックアップされ、記憶された内容をシステムＢＩＯＳ２５１による操作によって読み書き禁止に設定することのできるＲＡＭである。セキュアＮＶＲＡＭ１３１は、ＰＣのデバイス・コントローラ（ＣＰＵブリッジ１０３およびＩ／Ｏブリッジ１１１）の設定情報２６１、およびデバイス・コントローラに接続された各々のデバイスについての情報であるデバイス情報２６３を記憶している。設定情報２６１の内容としては、主にディスク装置の起動順序やドライブ番号、各周辺機器の接続方法やデータ転送に関するパラメータ、およびＰＯＰ（パワーオン・パスワード）などがある。デバイス情報２６３は、デバイス・コントローラに接続された各々のデバイスに固有の機器ＩＤ２０６、および各々のデバイス内部の設定情報などが含まれる。スワッパブル・ベイ１２３に接続された光学ドライブ２１の機器ＩＤ２０６と内部設定情報も、デバイス情報２６３に含まれる。
【００３５】
ＩＤＥポート１１３に接続された光学ドライブ２１にかかる設定情報２６１は、以下の（１）〜（３）に示す３通りを示している。
（１）「ＨＩＧＨ」
光学ドライブ２１が、セキュリティ機能を具備するか否かにかかわらず、光学ドライブ２１に対するＩＤＥポート１１３無効にすることで、ノートＰＣ１０が光学ドライブの存在を認識できないようにしてアクセスを完全に制限する。
（２）「Ｒ／Ｏ」
ＩＤＥポート１１３にセキュリティ機能を具備する光学ドライブ２１が接続された場合、その光学ドライブ２１をリード・オンリーに設定する。セキュリティ機能を具備しない光学ドライブが接続された場合は、上記「ＨＩＧＨ」の場合と同様にＩＤＥポート１１３を無効にする。
（３）「ＮＯＮＥ」
ＩＤＥポート１１３に接続される光学ドライブ２１に対するノートＰＣ１０からのアクセスを制限しないで自由に行わせる。リード・オンリーに設定されている光学ドライブ２１が装着された場合はライタブルに設定する。
ノートＰＣ１０は、ユーザの用途に基づいて工場で組み立てる段階で上記（１）〜（３）のうちいずれかの設定を組み込むことができるが、本実施の形態では（２）に設定された状態を中心にして説明する。なお、設定内容はセキュアＮＶＲＡＭに格納され、ＢＩＯＳ以外はアクセスできないように構成されている。
【００３６】
図４（Ｃ）に示すメイン・メモリ１０５には、ノートＰＣ１０の通常の動作で使用されるユーザ領域２７３の他に、ＳＭＲＡＭ（System Management RAM）２７１としての領域が確保されている。ハードウェアによってＣＰＵ１０１のＳＭＩ＃がアサートされた場合、ＣＰＵ１０１はＳＭＭの動作に入り、システムＢＩＯＳ２５１の制御下でＳＭＩサービス・ルーチン２５７が呼び出されて実行される。ＳＭＭで動作するＣＰＵ１０１はシングル・タスクでの動作で、すべての割り込みは無効となり、ＳＭＲＡＭ２７１はＳＭＭで動作するＣＰＵ１０１のみが独占的に使用可能となるので、ＳＭＩサービス・ルーチン２５７以外のタスクに制御が渡ることはない。ＣＰＵ１０１がＳＭＭで動作する間、ＳＭＭに移行する直前までＯＳおよびその上で動作していたソフトウェアとユーザ・データの動作状態はユーザ領域２７３に保持される。また、ＳＭＭに移行する直前のレジスタの状態を示す情報はＳＭＲＡＭ２７１に記憶される。そして、ＣＰＵ１０１がＳＭＭでの動作を終了するとＳＭＲＡＭ２７１に記憶されたレジスタの状態を示す情報に基づいて、ＣＰＵ１０１はＯＳによる制御に移行してユーザ領域２７３に保持されていた動作状態を復帰させる。
【００３７】
図５は、以上で説明したノートＰＣ１０に光学ドライブ２１を取り付けて電源を投入する際に実行される処理を、フローチャートで書き表したものである。ノートＰＣ１０の電源を投入すると、システムＢＩＯＳ２５１による制御下でＰＯＳＴ２５５によってハードウェアの初期設定の処理が開始される（ブロック３０１〜３０３）。ＰＯＳＴ２５５は、光学ドライブ２１に初期化のコマンドを送る（ブロック３０５）。この初期化のコマンドの中で、ＰＯＳＴ２５５は光学ドライブ２１に対して、光学ドライブ２１の機器ＩＤ２０６と、光学ドライブ２１が自らをリード・オンリーなものとして動作させたりそれを解除したりするセキュリティ機能に対応しているか否かについて照会する。なお、セキュリティ機能に関する照会は、ＩＤＥコマンドの中でメーカーが独自に設定して使用できるベンダー・コマンドによって行われる。従って、セキュリティ機能に対応していない光学ドライブ２１はベンダー・コマンドには応答しないので、ＰＯＳＴ２５５は送信したコマンドに対する応答がなければ光学ドライブ２１はセキュリティ機能に対応していないと判断することができる。当然このベンダー・コマンドは一般には公開されない。
【００３８】
初期化のコマンドを受け取った光学ドライブ２１は（ブロック３０７）、自らの機器ＩＤ２０６と、セキュリティ機能の有無についてＰＯＳＴ２５５に返信する（ブロック３０９）。ＰＯＳＴ２５５は、光学ドライブ２１からの返信に基づいて、まず光学ドライブ２１のセキュリティ機能の有無について判断する（ブロック３１１）。光学ドライブ２１がセキュリティ機能に対応したものであれば、設定情報２６１に含まれる光学ドライブ２１にかかる設定について確認する（ブロック３１３）。確認した設定が「Ｒ／Ｏ」であれば、ＰＯＳＴ２５５は光学ドライブ２１をリード・オンリーに設定するコマンド（以後リード・オンリー設定コマンドという）を送信する（ブロック３１５）。確認した設定が「ＮＯＮＥ」であれば、ＰＯＳＴ２５５は光学ドライブ２１のリード・オンリーを解除するコマンド（以後リード・オンリー解除コマンドという）を送信する（ブロック３１７）。確認した設定が「ＨＩＧＨ」であれば、ＰＯＳＴ２５５はＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にし（ブロック３１９）、ブロック３３１の処理に進む。
【００３９】
リード・オンリー設定コマンドを受け取った光学ドライブ２１は、自らをリード・オンリーの動作に設定する（ブロック３２１）。リード・オンリー解除コマンドを受け取った光学ドライブ２１は、自らのリード・オンリーの設定を解除してライタブルに動作できるようにする（ブロック３２３）。なお、リード・オンリー設定コマンドおよびリード・オンリー解除コマンドも、一般には公開しないベンダー・コマンドである。またブロック３１５および３１７で、リード・オンリー設定コマンドおよびリード・オンリー解除コマンドをＰＯＳＴ２５５が受け取った機器ＩＤ２０６をキーにして暗号化してから送信すれば、光学ドライブ２１を解析したり、ノートＰＣ１０から光学ドライブ２１に送られるコマンドを解析したりしてリード・オンリーの設定を解除する方法を割り出すことが困難になるのでより望ましい。リード・オンリーの設定もしくは解除が完了した光学ドライブ２１は、コマンドが正常に完了したとの返信をＰＯＳＴ２５５に返信する（ブロック３２５）。ＰＯＳＴ２５５は、光学ドライブ２１からコマンドが正常に完了したとの返信を受けられたか否かを判断し（ブロック３２７）、正常ならばブロック３３１の処理に進み、正常な返信を受けられなかったらブロック３１９に進んでＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にした後、ブロック３３１の処理に進む。
【００４０】
ブロック３１１で、光学ドライブ２１がセキュリティ機能に対応したものでないと判断したときも、設定情報２６１に含まれる光学ドライブ２１にかかる設定について確認する（ブロック３２９）。確認した設定が「Ｒ／Ｏ」もしくは「ＨＩＧＨ」であれば、ＰＯＳＴ２５５はブロック３１９に進んでＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にした後、ブロック３３１の処理に進む。確認した設定が「ＮＯＮＥ」であれば、ＰＯＳＴ２５５はブロック３３１の処理に進む。以上の処理が終了したＰＯＳＴ２５５は、光学ドライブ２１に関する機器ＩＤ２０６とブロック３１１で判断したセキュリティ機能の有無の情報をデバイス情報２６３としてセキュアＮＶＲＡＭ１３１に記憶して（ブロック３３１）、以後のアクセスを禁止するためにセキュアＮＶＲＡＭ１３１をロックする。その後、ＢＩＯＳ−ＲＯＭ１２９からＩＮＴ１３Ｈハンドラ２５９を呼び出してＯＳを起動させる（ブロック３３３〜３３５）。図５を参照して述べた光学ドライブ２１のセキュリティの設定にかかる処理は、ノートＰＣ１０の電源が投入されてからＯＳが起動されるまでのプロセス中の任意のタイミングで実行されればよい。
【００４１】
図６は、光学ドライブ２１がＩＤＥポート１１３からコマンドを受け取った際にファームウェア２０５で実行される処理を、フローチャートで書き表したものである。このフローチャートでは、光学ドライブ２１が本発明にかかるセキュリティ機能を備えている場合を示している。光学ドライブ２１がＩＤＥポート１１３から何らかのコマンドを受けると（ブロック４０１〜４０３）、ファームウェア２０５はまずそのコマンドが書き込みコマンドであるか否かを判断する（ブロック４０５）。書き込みコマンドであれば、ファームウェア２０５は次にＲ／Ｏ状態ビット２０７を読み、リード・オンリーの設定であるか否かを判断する（ブロック４０７）。リード・オンリーの設定でなければ、光学ドライブ２１はライタブルなものとして動作するので、書き込みコマンドをそのまま実行し、ＩＤＥポート１１３に対して正常なレスポンスを返信する（ブロック４０９）。リード・オンリーの設定であれば、光学ドライブ２１はリード・オンリーなものとして動作するので、書き込みコマンドを実行せず、ＩＤＥポート１１３に対してエラーを返信する（ブロック４１１）。
【００４２】
ブロック４０５で、受け取ったコマンドが書き込みコマンドでない場合、次にファームウェア２０５はそのコマンドが図５のブロック３０５で送られたＢＩＯＳからの初期化コマンドであるか否かを判断する（ブロック４１３）。初期化コマンドであれば、ファームウェア２０５の内部でタイマー機能をリセットして計時をスタートし（ブロック４１５）、ブロック４０９に進んでＩＤＥポート１１３に対して正常なレスポンスを返信する。ここでいう正常なレスポンスは、図５のブロック３０９、３１１で示したように、自らの機器ＩＤ２０６と、セキュリティ機能の有無に関する情報が含まれる。
【００４３】
ブロック４１３で、受け取ったコマンドが初期化コマンドでない場合、次にファームウェア２０５はそのコマンドがリード・オンリー設定コマンドまたはリード・オンリー解除コマンドであるか否かを判断する（ブロック４１７）。リード・オンリー設定コマンドまたはリード・オンリー解除コマンドでなければ、ブロック４０９に進んでコマンドを実行し、ＩＤＥポート１１３に対して正常なレスポンスを返信する。リード・オンリー設定コマンドまたはリード・オンリー解除コマンドであれば、ファームウェア２０５のタイマー機能が、ブロック４１５で初期化コマンドを受け取ってからの経過時間が所定値以内であることを示しているか否かについて判断する（ブロック４１９）。初期化コマンドを受け取ってから所定値以上の時間を経過していれば、ブロック４１１に進んで、コマンドを実行せずにＩＤＥポート１１３に対してエラーを返信する。初期化コマンドを受け取ってから経過時間が所定値以内であれば、ブロック４０９に進んでリード・オンリー設定コマンドもしくはリード・オンリー解除コマンドを実行してＲ／Ｏ状態ビット２０７の状態を書き換え、ＩＤＥポート１１３に対して正常なレスポンスを返信する。以上の処理は、光学ドライブ２１の電源が切られると終了するが（ブロック４２１〜４２３）、光学ドライブ２１の動作が続く間はブロック４０３〜４２１の間で繰り返される。
【００４４】
このブロック４１９の判断の基準となる経過時間の最大値は、ノートＰＣ１０の電源が投入されてから図５の処理が終了するまでの標準的な所要時間を想定して設定することができる。要は、光学ドライブ２１に対して送られたリード・オンリー設定コマンドまたはリード・オンリー解除コマンドが、ノートＰＣ１０がＢＩＯＳによって図５の処理を実行している間に限って受け付けられるように経過時間の最大値を設定すればよいのである。こうすれば、ノートＰＣ１０において図５および図６に示した処理を経由してＯＳが起動された状態では、セキュリティに関するコマンドが盗まれてもＯＳを経由してリード・オンリーの設定を解除することはできないので安全である。なお、光学ドライブ２１がＢＩＯＳによる制御のときだけリード・オンリーを解除できるようにするには、これ以外にも、たとえばリード・オンリー設定コマンドを一度受け付けたら、光学ドライブ２１の電源を切るまでリード・オンリー解除コマンドを受け付けないようにする方法もある。あるいは、Ｒ／Ｏ状態ビット２０７とは別個に、リード・オンリー設定コマンドまたはリード・オンリー解除コマンドを既に受けたか否かを表すビットをフラッシュＲＯＭ２０３に設けてそれを利用する方法などもある。
【００４５】
設定情報２６１に含まれる光学ドライブ２１にかかる設定が「Ｒ／Ｏ」であれば、以上で説明した処理により、光学ドライブ２１がリード・オンリーに設定された後で起動されたＯＳは光学ドライブ２１をリード・オンリーなものとして認識する。従って、ＯＳから光学ドライブ２１へのデータの入出力を制御するデバイス・ドライバを経由して、光学ドライブ２１に書き込みコマンドが送られることはない。また、ＯＳのデバイス・ドライバを経由せずに光学ドライブ２１に書き込みコマンドを送るアプリケーション・ソフトがあっても、ブロック４１１のようにリード・オンリーに設定された光学ドライブ２１の内部処理でそのコマンドに対してエラーが返信される。
【００４６】
さらに、光学ドライブ２１をリード・オンリーに設定する動作はＯＳが起動される前のＢＩＯＳの制御による初期設定の段階で行われるから、ノートＰＣ１０に標準的にインストールされたＯＳとは異なる別のＯＳが起動されても、そのＯＳが起動された時点では光学ドライブ２１は既にリード・オンリーに設定されており、タイマーで設定した時間が経過すれば、たとえ暗号化された正しいコマンドがそのＯＳによって送られたとしてもリード・オンリーの設定を解除することはできない。また、リード・オンリーに設定可能なセキュリティ機能を最初から備えていない光学ドライブを接続してノートＰＣ１０の電源を投入した場合も、セキュアＮＶＲＡＭ１３１の設定情報が「Ｒ／Ｏ」であれば、ＩＤＥポートへの接続部分が無効にされることにより、その光学ドライブは使用できなくなり安全である。セキュアＮＶＲＡＭ１３１の設定情報が「Ｒ／Ｏ」のときは、本発明にかかるセキュリティ機能を備えた光学ドライブ２１のみをリード・オンリーに設定した上で使用することが可能である。
【００４７】
ただし、光学ドライブ２１はスワッパブル・ベイ１２３を介してノートＰＣ１０に接続されている。従って、光学ドライブ２１をスワッパブル・ベイ１２３から外した状態でノートＰＣ１０を起動すれば、光学ドライブ２１をリード・オンリーに設定する動作を行わずにＯＳを起動することができる。そしてＯＳが起動した後にスワッパブル・ベイ１２３に光学ドライブ２１をホット・スワップで接続することで、リード・オンリーに設定する動作をさせないで光学ドライブ２１をライタブルな状態で動作できるとすればセキュリティ上望ましくない。さらに、リード・オンリーに設定可能なセキュリティ機能を最初から備えていない光学ドライブをホット・スワップで接続することで、ＩＤＥポートの動作を無効にすることなく光学ドライブの使用ができるようではセキュリティが十分に確保されているとはいえない。
【００４８】
図７は、ＯＳが起動されているノートＰＣ１０のスワッパブル・ベイ１２３に光学ドライブ２１をホット・スワップで接続する際に実行される処理を、フローチャートで書き表したものである。スワッパブル・ベイ１２３に光学ドライブ２１が取り付けられると（ブロック５０１）、着脱レバー３３が必ず動かされるので、レバー・スイッチ１２５が開閉されたことをエンベデッド・コントローラ１３３が認識する（ブロック５０３）。レバー・スイッチ１２５の開閉に反応したエンベデッド・コントローラ１３３は、ＣＰＵ１０１のＳＭＩ＃をアサートしてＳＭＭで動作させ（ブロック５０５）、システムＢＩＯＳ２５１による制御下でＳＭＩサービス・ルーチン２５７をＳＭＲＡＭ２７１に展開して実行させる。エンベデッド・コントローラ１３３の動作はＣＰＵ１０１とは独立しているので、以上の処理はＯＳには依存せずに行われる。また、ハードウェア全体について初期設定する必要があるＰＯＳＴ２５５による処理とは異なり、ＳＭＩサービス・ルーチン２５７による処理はスワッパブル・ベイ１２３に接続されるデバイスに関する処理だけを行えばよい。
【００４９】
ＳＭＩサービス・ルーチン２５７は、図５で示したＰＯＳＴ２５５による処理のブロック３０５と同じように、光学ドライブ２１にデバイスの初期化のコマンドを送る（ブロック５０７）。このデバイスの初期化のコマンドの中で、ＳＭＩサービス・ルーチン２５７は光学ドライブ２１に対して、光学ドライブ２１の機器ＩＤ２０６と、光学ドライブ２１のセキュリティ機能の有無について照会する。初期化のコマンドを受け取った光学ドライブ２１は、ブロック３０７〜３０９に記載された動作と同様に、照会された内容についてＳＭＩサービス・ルーチン２５７に返信する。
【００５０】
返信を受け取ったＳＭＩサービス・ルーチン２５７は（ブロック５０９）、まず光学ドライブ２１のセキュリティ機能の有無について判断する（ブロック５１１）。光学ドライブ２１がセキュリティ機能に対応したものであれば、次にＳＭＩサービス・ルーチン２５７は光学ドライブ２１の機器ＩＤ２０６およびセキュリティの設定を、前回スワッパブル・ベイ１２３に接続されていた光学ドライブについてのデバイス情報２６３として記録されている情報と比較する（ブロック５１３）。前回と同一の光学ドライブ２１が接続され、かつリード・オンリーであるか否かの設定が前回と同一であると判断されたら、新たな設定の動作を省略してもよいので、そのままブロック５２７の処理に進む。
【００５１】
ブロック５１３で、前回と同一の光学ドライブ２１が接続されなかったと判断された場合、またはリード・オンリーであるか否かの設定が前回と異なっていると判断された場合は、設定情報２６１に含まれる光学ドライブ２１にかかる設定について確認する（ブロック５１５）。確認した設定が「Ｒ／Ｏ」であれば、ＳＭＩサービス・ルーチン２５７は光学ドライブ２１にリード・オンリー設定コマンドを送信する（ブロック５１７）。確認した設定が「ＮＯＮＥ」であれば、ＳＭＩサービス・ルーチン２５７は光学ドライブ２１にリード・オンリー解除コマンドを送信する（ブロック５１９）。確認した設定が「ＨＩＧＨ」であれば、ＳＭＩサービス・ルーチン２５７はＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にする（ブロック５２１）。ブロック５１７および５１９のコマンドを受けてリード・オンリーの動作の設定もしくは解除が完了した光学ドライブ２１から、コマンドが正常に完了したとの返信をＳＭＩサービス・ルーチン２５７が受けたか否かを判断し（ブロック５２３）、正常ならそのままブロック５２７の処理に進み、正常な返信を受けられなかったらブロック５２１に進んでＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にした後、ブロック５２７の処理に進む。
【００５２】
ブロック５１１で、光学ドライブ２１がセキュリティ機能に対応したものでなければ、この場合も設定情報２６１に含まれる光学ドライブ２１にかかる設定について確認する（ブロック５２５）。確認した設定が「Ｒ／Ｏ」もしくは「ＨＩＧＨ」であれば、ＳＭＩサービス・ルーチン２５７はブロック５２１に進んでＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にした後、ブロック５２７の処理に進む。確認した設定が「ＮＯＮＥ」であれば、ＳＭＩサービス・ルーチン２５７はそのままブロック５２７の処理に進む。以上の判断と処理の終了したＳＭＩサービス・ルーチン２５７は、光学ドライブ２１の機器ＩＤ２０６と、セキュリティ機能の有無と設定の内容についてセキュアＮＶＲＡＭ１３１にデバイス情報２６３として記憶し（ブロック５２７）、ＳＭＭを終了してＯＳによる動作を再開する（ブロック５２９〜５３１）。セキュアＮＶＲＡＭ１３１は、ＯＳによる制御に移行する前にＰＯＳＴ２５５によってロックされ、以後ＯＳやアプリケーション・ソフトからはアクセスできない。ＯＳによる動作が再開したら、ＯＳの側で新たに接続された光学ドライブ２１を認識し、対応するデバイス・ドライバの読み込みなどの処理が行われる。
【００５３】
スワッパブル・ベイ１２３へのホット・スワップであっても、光学ドライブ２１はスワッパブル・ベイ１２３に接続されてからブロック５０７で初期化コマンドが送信されることになる。光学ドライブ２１は、図６に記載したとおり、初期化コマンドが送信されてから一定時間だけ、リード・オンリー設定コマンドまたはリード・オンリー解除コマンドを受け付けることが可能である。その一定時間が経過した後は、コマンドによってその設定を解除することはできない。つまり、スワッパブル・ベイ１２３へのホット・スワップの場合も、光学ドライブ２１の側の動作は図６で示したものと同一にすることでセキュリティを確実に確保することができる。
【００５４】
なお、ノートＰＣ１０がサスペンド（もしくはハイバーネーションなど）の状態である間は、光学ドライブ２１への電力の供給が停止されるが、Ｒ／Ｏ状態ビット２０７に記憶されていた内容は電源を切っても保持される。従って、サスペンドにされる前にＲ／Ｏ状態ビット２０７がリード・オンリーに設定されていれば、ノートＰＣ１０がリジュームしたときにも光学ドライブ２１はリード・オンリーで再び動作する。ノートＰＣ１０で動作していたＯＳも、光学ドライブ２１に対する認識および設定も含めて、サスペンドにされる前の状態のままでリジュームしてそのまま動作する。ノートＰＣ１０がレジュームするときに光学ドライブ２１が一旦リード・オンリー解除コマンドを受け付ける状態になる場合であっても、ＯＳの動作がリジュームする頃には、光学ドライブ２１内部のタイマー機能は一定時間を経過して、再びリード・オンリー解除コマンドを受け付けないようになるのでセキュリティは確保される。
【００５５】
Ｒ／Ｏ状態ビット２０７の設定が光学ドライブ２１の電源を切ったら保持されない場合は、ノートＰＣ１０がサスペンドしてからリジュームして光学ドライブ２１に再び電源が投入される際に、ＳＭＩサービス・ルーチン２５７と同一の処理を実行して、再び光学ドライブ２１をリード・オンリーに設定すればよい。この場合も、ＯＳの動作がリジュームする頃には、光学ドライブ２１はタイマー機能によってリード・オンリー設定またはリード・オンリー解除のコマンドを受け付けないようになっている。
【００５６】
以上で説明してきた動作はすべてハードウェアとＢＩＯＳ（ＰＯＳＴ２５５およびＳＭＩサービス・ルーチン２５７）によって行われ、ＯＳおよびアプリケーション・ソフトは関与していない。そのため、ＯＳの種類や設定などに関係なく、たとえノートＰＣ１０に標準的にインストールされたＯＳとは異なる別のＯＳが起動されたとしても、設定情報２６１に含まれる光学ドライブ２１にかかる設定が「Ｒ／Ｏ」であれば、光学ドライブがライタブルな状態で動作することはない。また、ノートＰＣ１０に光学ドライブ２１を取り付けて電源を投入した場合だけでなく、スワッパブル・ベイ１２３に光学ドライブ２１をホット・スワップした場合も、さらにリード・オンリーに設定可能なセキュリティ機能を備えていない光学ドライブをホット・スワップした場合も、やはり設定情報２６１に含まれる光学ドライブ２１にかかる設定が「Ｒ／Ｏ」であれば、光学ドライブがライタブルな状態で動作することはない。
【００５７】
以上、光学ドライブの例について示してきたが、本発明は他にもハードディスク・ドライブ、半導体記憶装置など、ＰＣに接続されるライタブルな記憶装置に対して適用可能である。また、本発明はＩＤＥ、ＵＳＢ、ＰＣＭＣＩＡ、ＣａｒｄＢｕｓ、ｍｉｎｉＰＣＩ、Ｅｘｐｒｅｓｓ  Ｃａｒｄなど、ＰＣにライタブルな記憶装置を接続することが可能なインターフェイスに対して適用可能である。これらの記憶装置は、ＰＣ１０に対して記録媒体単独で着脱可能な場合および記録媒体と駆動装置が一体となった状態の記憶装置として着脱可能な場合のいずれの場合であってもよい。その際重要なことは、ＰＣでＢＩＯＳが実行される段階で記憶装置に書き込み禁止コマンドを送信すること、記憶装置がＢＩＯＳによる書き込み禁止コマンドに応答してリード・オンリーな動作になること、そしてＯＳが動作している状態では記憶装置のリード・オンリーの動作を解除できないことである。また、ＯＳが動作している状態でホット・スワップが可能な記憶装置に対しては、ＰＣ側のハードウェアが記憶装置の接続を検出するようにすれば、ＯＳおよびアプリケーション・ソフトには関係なくＢＩＯＳの制御によって記憶装置をリード・オンリーに設定することができるのでより望ましい。
【００５８】
なお、図５および図７で説明した、設定情報２６１に含まれる光学ドライブ２１にかかる設定が「ＨＩＧＨ」である場合の動作で、ＩＤＥポート１１３の光学ドライブ２１への接続部分を無効にする（ブロック３１９および５２１）動作のかわりに、光学ドライブ２１内部でＩＤＥポート１１３から送られる全ての読み出しおよび書き込みのコマンドを実行せずにエラーを返信するようにしてもよい。その場合は、光学ドライブ２１がそのような動作に対応し、かつＰＯＳＴ２５５およびＳＭＩサービス・ルーチン２５７が光学ドライブ２１をそのように動作させるコマンドを送信することができる必要がある。
【００５９】
また、設定情報２６１に含まれる光学ドライブ２１にかかる設定は、ユーザが勝手に変更できないものである必要がある。前述の実施の形態では、工場で組み立てられる段階でこの設定を組み込むようにしているが、これを管理者だけが利用できてユーザが利用できないスーパーバイザー・パスワードを利用して、管理者が設定できるようにしてもよい。
【００６０】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることは言うまでもないことである。
【産業上の利用可能性】
【００６１】
着脱可能に接続されて使用されるライタブルな記憶装置を使用するコンピュータに利用可能である。
【図面の簡単な説明】
【００６２】
【図１】本発明の実施の形態にかかるノートＰＣの外観を示す斜視図である。
【図２】本発明の実施の形態にかかるノートＰＣのハードウェアの概略構成を示すブロック図である。
【図３】本発明の実施の形態にかかる光学ドライブ内部の概略構成を示すブロック図である。
【図４】本発明の実施の形態にかかるＢＩＯＳフラッシュＲＯＭ、セキュアＮＶＲＡＭおよびメイン・メモリの内部構成を示す図である。
【図５】ノートＰＣに光学ドライブを取り付けて電源を投入する際に実行される処理を書き表したフローチャートである。
【図６】光学ドライブがＩＤＥポートからコマンドを受け取った際に実行される処理を書き表したフローチャートである。
【図７】ＯＳが起動されているノートＰＣのスワッパブル・ベイに光学ドライブをホット・スワップで接続する際に実行される処理を書き表したフローチャートである。
【符号の説明】
【００６３】
１０…ノートＰＣ
１１…筐体
２１…光学ドライブ
３３…着脱レバー
１０１…ＣＰＵ
１１１…Ｉ／Ｏブリッジ
１１３…ＩＤＥポート
１２３…スワッパブル・ベイ
１２５…レバー・スイッチ
１２９…ＢＩＯＳフラッシュＲＯＭ
１３１…セキュアＮＶＲＡＭ
１３３…エンベデッド・コントローラ
２０６…機器ＩＤ
２０７…Ｒ／Ｏ状態ビット
２５５…ＰＯＳＴ
２５７…ＳＭＩサービス・ルーチン
２６１…設定情報
２６３…デバイス情報
２７１…ＳＭＲＡＭ
【図１】
2008276413.tif 000003
【図２】
2008276413.tif 000004
【図３】
2008276413.tif 000005
【図４】
2008276413.tif 000006
【図５】
2008276413.tif 000007
【図６】
2008276413.tif 000008
【図７】
2008276413.tif 000009