(57)【特許請求の範囲】
【請求項１】
無線で接続される外部記憶装置に対して携帯式コンピュータが実行するアクセス方法であって、
前記外部記憶装置と前記携帯式コンピュータの無線通信経路を構成するステップと、
前記携帯式コンピュータから前記外部記憶装置にアクセスするステップと、
前記無線通信経路が構成されている間にスリープ・イベントを生成するステップと、
前記スリープ・イベントに応答して前記外部記憶装置をイジェクトするステップと、
前記イジェクトが完了したことに応答して前記スリープ・イベントを実行するステップと、
前記携帯式コンピュータに生じた加速度を測定することにより前記携帯式コンピュータが前記外部記憶装置から離れることを示すリムーバル情報を生成するステップと、
前記リムーバル情報が生成されたことに応答して前記外部記憶装置をイジェクトするステップと
を有するアクセス方法。
【請求項２】
前記無線通信経路が構成されかつ前記リムーバル情報が生成されたことに応答してユーザにアラートを通知するステップを有する請求項１に記載のアクセス方法。
【請求項３】
前記アラートを通知するステップが、前記携帯式コンピュータの筐体が閉じられた状態で通知するステップを含む請求項２に記載のアクセス方法。
【請求項４】
前記イジェクトするステップが、編集中のデータを前記外部記憶装置に保存するステップを含む請求項１から請求項３のいずれかに記載のアクセス方法。
【請求項５】
前記編集中のデータが保存されたことに応答して前記アラートを停止させるステップを含む請求項４に記載のアクセス方法。
【請求項６】
前記無線通信経路が構成されかつ前記スリープ・イベントが生成されたことに応答してユーザにアラートを通知するステップを有する請求項１から請求項５のいずれかに記載のアクセス方法。
【請求項７】
前記イジェクトが完了したことに応答して前記アラートを停止させるステップを有する請求項６に記載のアクセス方法。
【請求項８】
無線で接続される外部記憶装置に対して携帯式コンピュータが実行するアクセス方法であって、
前記外部記憶装置と前記携帯式コンピュータの無線通信経路を構成するステップと、
前記外部記憶装置に記憶されたファイルを読み出して編集するステップと、
前記無線通信経路が構成されている間にスリープ・イベントを生成するステップと、
前記スリープ・イベントに応答して編集中のデータを前記外部記憶装置に保存するステップと、
前記保存が完了したことに応答して前記スリープ・イベントを実行するステップと、
前記携帯式コンピュータに生じた加速度を測定することにより前記携帯式コンピュータが前記外部記憶装置から離れることを示すリムーバル情報を生成するステップと、
前記リムーバル情報が生成されたことに応答して編集中のデータを前記外部記憶装置に保存するステップと
を有するアクセス方法。
【請求項９】
外部記憶装置に無線で接続することが可能な携帯式コンピュータであって、
前記外部記憶装置が接続されたことを認識する接続認識手段と、
前記携帯式コンピュータの姿勢の変化を検出することにより前記携帯式コンピュータが前記外部記憶装置から離れることを検出する加速度センサと、
前記加速度センサの出力に応答して前記外部記憶装置をイジェクトするイジェクト手段と、
前記外部記憶装置が接続されている間に受け取ったスリープ・イベントを実行して前記携帯式コンピュータをスリープ状態に移行させるスリープ実行手段を有し、
前記イジェクト手段は前記スリープ・イベントに応答して前記外部記憶装置をイジェクトし前記スリープ実行手段は前記イジェクトが完了したことに応答して前記スリープ・イベントを実行する携帯式コンピュータ。
【請求項１０】
前記外部記憶装置は複数の外部端子を備える無線拡張装置に有線で接続され、前記携帯式コンピュータは前記無線拡張装置を経由して前記外部記憶装置に接続される請求項９に記載の携帯式コンピュータ。
【請求項１１】
外部記憶装置に無線で接続することが可能なコンピュータに、
前記外部記憶装置と前記コンピュータを無線で接続する機能と、
前記コンピュータから前記外部記憶装置にアクセスする機能と、
前記外部記憶装置が接続されている間にスリープ・イベントを生成する機能と、
前記スリープ・イベントに応答して前記外部記憶装置をイジェクトする機能と、
前記イジェクトが完了したことに応答して前記スリープ・イベントを実行する機能と、
前記コンピュータに生じた加速度を測定することにより前記コンピュータが前記外部記憶装置から離れることを示すリムーバル情報を生成する機能と、
前記リムーバル情報が生成されたことに応答して前記外部記憶装置をイジェクトする機能と
を実現させるコンピュータ・プログラム。
【請求項１２】
外部記憶装置に無線で接続することが可能なコンピュータに、
前記外部記憶装置と前記コンピュータを無線で接続する機能と、
前記外部記憶装置に記憶されたファイルを読み出して編集する機能と、
前記外部記憶装置が接続されている間にスリープ・イベントを生成する機能と、
前記スリープ・イベントに応答して編集中のデータを前記外部記憶装置に保存する機能と、
前記保存が完了したことに応答して前記スリープ・イベントを実行する機能と、
前記携帯式コンピュータに生じた加速度を測定することにより前記コンピュータが前記外部記憶装置から離れることを示すリムーバル情報を生成する機能と、
前記リムーバル情報が生成されたことに応答して編集中のデータを前記外部記憶装置に保存する機能と
を実現させるコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線で接続された外部記憶装置からコンピュータが無線通信圏外まで離れるときの状態を制御する技術に関する。
【背景技術】
【０００２】
ＩＥＥＥ８０２委員会のもとで８０２．１５規格としてＷＰＡＮ（Wireless Personal Area Network）の規格標準化が行われている。ＷＰＡＮで採用される通信方式の一つにＵＷＢ（Ultra Wide Band）という高速な短距離通信方式がある。ＵＷＢの仕様では、通信距離が半径１０ｍ以内では１１０Ｍｂｐｓで半径３ｍ以内では４８０Ｍｂｐｓで通信できることになっている。
【０００３】
近年、ノートブック型パーソナル・コンピュータ（以下、ノートＰＣという。）でもＵＷＢの無線共通プラットフォームを利用して、ディジタル家電、モバイル機器または周辺装置との接続を行うようになってきている。この無線共通プラットフォームは、ＵＷＢ物理層とＵＷＢ−ＭＡＣ層で構成されている。そして、ＵＷＢの無線共通プラットフォームをワイヤレスＵＳＢ（ＷＵＳＢ：Wireless Universal Bus）やワイヤレスＩＥＥＥ１３９４といったさまざまなアプリケーションやプロトコルで共有するために、ＵＷＢ−ＭＡＣ層の上にコンバージェンス層が規定されている。
【０００４】
ノートＰＣの周辺装置の一つとして、ポート・リプリケータ（Port Replicator）という機能拡張装置が存在する。ポート・リプリケータは、シリアル・ポート、パラレル・ポートおよびイーサネット（登録商標）・コネクタなどの接続端子を備えており、机上にポート・リプリケータを配置してこれに使用頻度の少ない周辺装置をあらかじめ接続しておくことができる。そして、ノートＰＣの本体は小型・軽量化を図りながらモバイル環境で使用できるようにするとともに、オフィス環境ではノートＰＣをポート・リプリケータに接続してデスクトップ・コンピュータなみの機能を利用できるようにしている。
【０００５】
特許文献１は、ドッキング・ステーションとＰＣとの間でメカニカルなロック機構がない場合に、サスペンドまたはハイバネーションに入る前にデバイス・ドライバをアンロードし、サスペンド中にＰＣがドッキング・ステーションからアンドックされてもＰＣが単独で動作できるようにする技術を開示する。特許文献２は、サスペンド中にＣＤ−ＲＯＭを取り外した後にレジュームするとコンピュータの稼働を再開できないという問題を解決するために、レジューム時にＣＤ−ＲＯＭ装置の接続状況を確認してその後のＣＤ−ＲＯＭ装置へのアクセスを制御する技術を開示する。
【０００６】
特許文献３は、ドッキング・ステーションとコンピュータとの間が通信状態であることをＬＥＤの発光状態でユーザに通知する技術を開示する。特許文献４は、ドッキング・ステーションに対するアクセスが継続しているときにはセーフティ・リムーブ処理を中断し、ドッキング・ステーションの取り外しができない旨のメッセージを表示する方法を開示する。
【特許文献１】特開２００１−１６７０３８号公報
【特許文献２】特開２０００−４７７６３号公報
【特許文献３】特開２００４−２８２７２２号公報
【特許文献４】特開２００６−３０１７７０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
近年ポート・リプリケータとノートＰＣを、ＵＷＢの無線プラットフォームを利用して接続したワイヤレス・ポート・リプリケータあるいはワイヤレス・ドッキング・ステーション（以後、両者を含めてＷＰＲという。）が開発されている。ＷＰＲには、磁気ディスク装置（以後、ＨＤＤという。）を有線で接続することができる。ユーザは、ＨＤＤからファイルを読み出して編集したり、ノートＰＣで新規にファイルを作成してＨＤＤに書き込んだりする。そして、ＨＤＤに対してファイルを書き込む前に、あるいは、ＨＤＤからファイルの読み出しが完了する前にノートＰＣを持ってＷＰＲから離れてしまう場合がある。
【０００８】
ノートＰＣとポート・リプリケータを無線で接続することは、ユーザを物理的な接続の煩雑さから解放して快適な作業環境を与える一方で、ユーザはノートＰＣがＷＰＲに接続されているという意識が希薄になり、編集中のデータを保存する前や読み出し中のファイルの読み出しが完了する前にノートＰＣを無線通信圏外まで持ち出すいわゆるサプライズ・リムーバルが発生する可能性を高める。ＵＷＢの通信距離は半径１０メートル程度あるが、ノートＰＣとＷＰＲの距離がＵＷＢの通信距離を超えるとノートＰＣとＨＤＤの無線通信経路は切断されてしまうため、持ち出し先で読み出しにかかるデータを得ることができなかったり、ＨＤＤに保存できないため編集したデータに対する操作を誤ってデータが消失してしまったりする場合がある。
【０００９】
ノートＰＣとポート・リプリケータが有線で接続されている場合には、ポート・リプリケータをイジェクトする際にＨＤＤに対する接続が切断されることを認識し易いため、ユーザに対して、事前に編集中のデータを保存したり読み出し中のデータが完全に読み出されることを確認したりすることが期待できる。また、着脱にイジェクト・ボタンの操作を伴うようにすることができるため、イジェクト・ボタンを機械的にロックしておき、イジェクト処理が完了する前にはロックを解除できないようにすることも可能である。
【００１０】
しかし、ノートＰＣとポート・リプリケータを無線で接続する場合は、有線で接続する場合と同様に対処することはできない。さらに、サプライズ・リムーバルの問題は、ＷＰＲに接続された状態でサスペンドやハイバネーションに移行させた後にノートＰＣを無線通信圏外まで持ち出してからレジュームする場合にも発生する。
【００１１】
そこで本発明の目的は、無線接続された外部記憶装置に対するサプライズ・リムーバルの発生を防ぐことができる、携帯式コンピュータによるアクセス方法を提供することにある。さらに本発明の目的はそのようなアクセス方法を実現する携帯式コンピュータおよびコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００１２】
本発明の第１の態様は、無線で接続される外部記憶装置に対して携帯式コンピュータが実行するアクセス方法を提供する。最初に、携帯式コンピュータが外部記憶装置と自らの無線通信経路を構成する。そして、携帯式コンピュータから外部記憶装置にアクセスする。アクセスの内容には、アプリケーションが外部記憶装置からファイルを読み出して編集することを含む。つづいて、携帯式コンピュータが外部記憶装置から離れることを示すリムーバル情報を携帯式コンピュータが生成する。リムーバル情報は、携帯式コンピュータと外部記憶装置の距離が離れる可能性があることを示す情報であり、距離が離れることの前提となる携帯式コンピュータの姿勢の変化を加速度で捕えたり、直接距離の変化を電波の強弱で捕らえたりして生成することができる。そして携帯式コンピュータはリムーバル情報が生成されたことに応答して外部記憶装置をイジェクトする。
【００１３】
イジェクトは、外部記憶装置と携帯式コンピュータの無線通信経路を安全に切断する操作である。したがって、編集中で未保存のデータや読み出しが未了のデータがある場合には外部記憶装置は保存や読み出しが完了してから切断される。リムーバル情報に基づいてすみやかにイジェクトすることにより、サプライズ・リムーバルが発生して無線通信圏外で編集中のデータが消失したり、読み出されているべきファイルが読み出されていなかったりといったような問題を回避することができる。
【００１４】
このような構成を採用しても、リムーバル情報が生成されてから外部記憶装置のイジェクトが完了するまでの間にユーザが急いで携帯式コンピュータを無線通信圏外まで持ち出すことにより、サプライズ・リムーバルが発生することも予想される。これに対しては、リムーバル情報が生成されたことに応答してユーザにアラートを通知するようにしてユーザの注意を喚起することで対処することができる。アラートは編集中のデータが保存されたことに応答して停止させるようにすると、ユーザは携帯式コンピュータが安全に無線通信圏外に持ち出せる状態になったことを認識することができる。
【００１５】
スリープ・イベントが生成される場合には、一旦スリープ・イベントを保留して、最初にスリープ・イベントに応答して外部記憶装置をイジェクトする。そしてイジェクトが完了したことに応答してスリープ・イベントを実行する。その結果、スリープ状態でサプライズ・リムーバルが発生することはなくなり、レジュームしたときに操作を誤って外部記憶装置に保管すべきデータが消失する危険性がなくなる。
【００１６】
本発明の第２の態様では、無線で接続される外部記憶装置に対して携帯式コンピュータが実行する他のアクセス方法を提供する。外部記憶装置と前記携帯式コンピュータの無線通信経路を構成し、さらに、外部記憶装置に記憶されたファイルを読み出して編集する。そして、携帯式コンピュータが外部記憶装置から離れることを示すリムーバル情報を生成すると、リムーバル情報が生成されたことに応答して編集中のデータを外部記憶装置に保存する。したがって、イジェクト処理をしないでサプライズ・リムーバルの発生を防止することができる。
【発明の効果】
【００１７】
本発明により、無線接続された外部記憶装置に対するサプライズ・リムーバルの発生を防ぐことができる、携帯式コンピュータによるアクセス方法を提供することができた。さらに本発明によりそのようなアクセス方法を実現する携帯式コンピュータおよびコンピュータ・プログラムを提供することができた。
【発明を実施するための最良の形態】
【００１８】
図１は、本発明の実施形態にかかるノートＰＣ１０および無線拡張装置１００の外形図である。ノートＰＣ１０は、システム筐体１１にキーボードおよびポインティング・デバイスからなる入力デバイス１５を備え、ディスプレイ筐体１３に液晶ディスプレイ装置（ＬＣＤ）１７が取り付けられている。ディスプレイ筐体１３はシステム筐体１１にヒンジによって連結され、開閉できるようになっている。ディスプレイ筐体１３には永久磁石２１ａが埋め込まれ、システム筐体１１には永久磁石２１ａとの間でスイッチ回路を構成するリッド・センサ２１ｂが埋め込まれている。
【００１９】
図１（Ａ）は、ディスプレイ筐体１３が開かれて、ＬＣＤ１７と入力デバイス１５がユーザ・インターフェースとなってノートＰＣ１０が使用されるときの状態を示している。図１（Ｂ）は、ディスプレイ筐体１３が閉じられている状態を示す。ディスプレイ筐体１３が閉じられた状態は、通常はノートＰＣ１０が動作を停止しているときであるが、無線拡張装置１００を使用するときにはノートＰＣ１０は閉じられた状態で動作する場合もある。
【００２０】
図１（Ｃ）は、無線拡張装置１００に複数のデバイスが接続された状態を示している。無線拡張装置１００は、ドッキング・ステーションまたはポート・リプリケータなどといわれるノートＰＣ１０の機能拡張装置であり、ノートＰＣ１０とはＷＵＳＢ（Wireless Universal Serial Bus）で接続され、さらにＬＡＮポート、モデム・ポート、ＵＳＢポート、ＶＧＡポート、およびＰＳ／２ポートなどの複数のポートを備えている。ＬＡＮポートは、有線ＬＡＮ２２にイーサネット・ケーブルで接続され、モデム・ポートは、モデム・ケーブルで公衆電話回線２３に接続される。
【００２１】
ＵＳＢポートにはＵＳＢインターフェースの外付けのＨＤＤ２４やその他のＵＳＢデバイスが接続され、ＶＧＡポートには外付けのディスプレイ装置２５が接続され、ＰＳ／２ポートには外付けのキーボード２６および外付けのマウス２７が接続される。ノートＰＣ１０は、ディスプレイ筐体１３が開かれた状態および閉じられた状態のいずれの場合でも、無線拡張装置１００と通信して、有線ＬＡＮ２２に接続したりキーボード２６を使用したりすることができる。たとえば、図１（Ｂ）の状態で無線拡張装置１００とノートＰＣ１００を無線で接続して、ディスプレイ装置２５、キーボード２６、およびマウス２７がユーザ・インターフェースとなって、ノートＰＣ１０からＨＤＤ２４にアクセスすることもできる。
【００２２】
図２は、ノートＰＣ１０に実装されたハードウエアの構成を示す概略ブロック図である。ＣＰＵ３１は、ノートＰＣ１０の中枢機能を担う演算処理装置で、オペレーティング・システム（ＯＳ）、ＢＩＯＳ、デバイス・ドライバ、あるいはアプリケーション・プログラムなどを実行する。ＣＰＵ３１は、ノース・ブリッジ３３およびノース・ブリッジ３３にさまざまなバスを経由して接続された各デバイスを制御する。ノース・ブリッジ３３は、メイン・メモリ３５へのアクセス動作を制御するためのメモリ・コントローラ機能や、ＣＰＵ３１と他のデバイスとの間のデータ転送速度の差を吸収するためのデータ・バッファ機能などを含む。
【００２３】
メイン・メモリ３５は、ＣＰＵ３１が実行するプログラムの読み込み領域、処理データを書き込む作業領域として利用されるランダム・アクセス・メモリ（ＲＡＭ）である。ビデオ・コントローラ３９はノース・ブリッジ３３に接続され、グラフィック・アクセラレータおよびＶＲＡＭを備えており、ＣＰＵ３１からの描画命令を受けて描画すべきイメージを生成してＶＲＡＭに書き込み、ＶＲＡＭから読み出したイメージを描画データとしてＬＣＤ１７に送る。
【００２４】
サウス・ブリッジ３７は、ノース・ブリッジ３３に接続され、さまざまな周辺入出力デバイスのインターフェースやＰＣＩバス、ＰＣＩ＿Ｅｘｐｒｅｓｓバスのポートを備えている。サウス・ブリッジ３７には、各バスのスロット、ＬＡＮカード４５、ＷＵＳＢホスト・コントローラ４１、無線モジュール４３、ＨＤＤ４２、およびＵＳＢコネクタ４７などが接続される。
【００２５】
ＬＡＮカード４５は、イーサネット規格のＬＡＮに接続するための拡張カードで、サウス・ブリッジ３７にはＰＣＩバスで接続され、さらにシステム筐体１１に取り付けられたＲＪ４５という規格のコネクタによりノートＰＣ１０を単体で使用するときに有線でＬＡＮに接続できるようになっている。
【００２６】
ＷＵＳＢホスト・コントローラ４１は、ＵＷＢの物理層とＭＡＣ層を形成するハードウエアを無線プラットフォームとしてその上位にＷＵＳＢプロトコルで定められる機能が実装される。ＷＵＳＢホスト・コントローラ４１は、サウス・ブリッジ３７に接続されたＰＣＩスロットに接続され、有線ＵＳＢと同様にハブ・アンド・スポーク型のバスを構成してこれに接続されるＷＵＳＢデバイスを一括して制御する。制御の内容には、ＷＵＳＢデバイスの接続と取り外しの検出、ＷＵＳＢホスト・コントローラ４１とＷＵＳＢデバイスの間の制御フローおよびデータ・フローの管理などを含む。なお、本実施の形態にかかる無線拡張装置１００はＷＵＳＢデバイスとなってＷＵＳＢホスト・コントローラ４１と無線で接続される。
【００２７】
無線モジュール４３は、たとえばＩＥＥＥ８０２．１１ｎに準拠した多入力多出力（ＭＩＭＯ）の無線通信に適合しており、ＰＣＩ＿Ｅｘｐｒｅｓｓ＿Ｘ１バスを介してサウス・ブリッジ３７に接続され、ＷＡＮやＬＡＮなどの無線ネットワークとの間で行うデータ通信を制御する。サウス・ブリッジ３７は、シリアルＡＴＡインターフェースおよびＵＳＢインターフェースとしての機能も含み、シリアルＡＴＡを介してＨＤＤ４２に接続される。ＨＤＤ４２には、ＯＳ、デバイス・ドライバ、アプリケーション・プログラムなどの周知のプログラムの他に、本実施の形態にかかるプログラムが格納される。本実施の形態にかかるプログラムの構成については図４を参照して後に説明する。
【００２８】
さらにサウス・ブリッジ３７は、ＰＣＩバスまたはＬＰＣバス５０を介して、従来からノートＰＣ１０に使用されているレガシー・デバイス、あるいは高速なデータ転送を要求しないデバイスに接続される。ＬＰＣバス５０には、エンベデッド・コントローラ（ＥＣ）４９、Ｉ／Ｏコントローラ６５、およびＢＩＯＳを格納したフラッシュＲＯＭ６３などが接続されている。ＥＣ４９は、８〜１６ビットのＣＰＵ、ＲＯＭ、ＲＡＭなどで構成されたマイクロ・コンピュータであり、さらに複数チャネルのＡ／Ｄ入力端子、Ｄ／Ａ出力端子、タイマー、およびディジタル入出力端子を備えている。ＥＣ４９には、それらの入出力端子を介して加速度センサ５１および電源装置を制御するパワー・コントローラ５３が接続されており、ノートＰＣ１０の内部の動作環境の管理にかかるプログラムをＣＰＵ３１とは独立して実行させることができる。
【００２９】
加速度センサ５１は、ノートＰＣ１０がユーザにより持ち運ばれて無線拡張装置１００から離れようとするときに発生する加速度を検出してアナログ信号としてＥＣ４９に出力する。ＥＣ４９は、加速度センサ５１から受け取った加速度情報をディジタル信号に変換して内部のＲＡＭに記憶する。ＥＣ４９とパワー・コントローラ５３との間は、専用のバスであるＳＰＩ（Serial Peripheral Interface）によって接続される。
【００３０】
パワー・コントローラ５３には、リッド・センサ２１ｂおよびＤＣ−ＤＣコンバータ５５が接続される。ディスプレイ筐体１３が閉じられると、ディスプレイ筐体１３に埋め込まれた永久磁石２１ａがシステム筐体１１に設けられたリッド・センサ２１ｂに接近する。リッド・センサ２１ｂは、永久磁石２１ａからの磁束によりノートＰＣ１０が閉じられた状態か開かれた状態かを検出することができる。
【００３１】
ＤＣ−ＤＣコンバータ５５は、ＡＣ／ＤＣアダプタ６１またはバッテリ５７から供給される直流電力を、ノートＰＣ１０を動作させるために必要な複数の電圧に変換し、さらに電源モードに応じて定義された電力供給区分に基づいて各々のデバイスに電力を供給する。ＡＣ／ＤＣアダプタ６１は一次側が商用電源に接続されて交流電圧を直流電圧に変換し、二次側はノートＰＣ１０に対して着脱可能である。ＡＣ／ＤＣアダプタ６１はノートＰＣ１０に接続されると、ＤＣ−ＤＣコンバータ５５とバッテリィ５７を充電する充電器５９に電力を供給する。
【００３２】
ノートＰＣ１０は、ＡＣＰＩ方式の省電力機能に対応している。ＥＣ４９は、パワー・コントローラ５３を介してＤＣ−ＤＣコンバータ５５を制御して、ノートＰＣ１０の電源モードに応じて定義されたソフト・オフ状態、サスペンド状態、ハイバネーション状態、またはオン状態などの各電源状態に応じて動作するデバイスを選択して電力を供給することができる。サスペンド状態とは、オン状態におけるアプリケーションやシステム状態をメイン・メモリ３５に記憶しておくのに必要なデバイスとその他の最小限のデバイスに電力を供給する状態をいう。
【００３３】
ハイバネーション状態とは、オン状態におけるアプリケーションやシステム状態をＨＤＤ４２に記憶して最小限のデバイスに電力を供給する状態をいう。サスペンド状態もハイバネーション状態も作業中の状態をメイン・メモリ３５やＨＤＤ４２に記憶して必要のないデバイスに対する電力の供給を停止し、復帰時には直前のオン状態に短時間で移行することを可能にする省電力機能である。オン状態からサスペンド状態またはハイバネーション状態に移行することをそれぞれサスペンドまたはハイバネーションといい、サスペンド状態またはハイバネーション状態からオン状態に移行することをともにレジュームという。
【００３４】
本明細書においては、サスペンドおよびハイバネーションをともにスリープということにする。スリープはサスペンド状態に移行するときに、システム状態をメイン・メモリ３５だけでなくＨＤＤ４２にも併せて格納する場合も含む。このスリープ状態では、ＥＣ４９はメイン・メモリ３５に記憶された情報が利用できるときはその情報を使って短時間でレジュームし、メイン・メモリ３５に記憶された情報がなんらかの原因で消失したときはＨＤＤ４２に記憶された情報を使ってレジュームすることができる。
【００３５】
Ｉ／Ｏコントローラ６５には、キーボードやマウスなどの入力デバイス１５が接続される。フラッシュＲＯＭ６３は不揮発性で記憶内容の電気的な書き替えが可能なメモリであり、システムの起動および管理に使われる基本プログラムであるシステムＢＩＯＳ、電源および筐体内の温度などを管理するソフトウエアである各種ユーティリティ、ノートＰＣ１０の起動時にハードウエアの試験や初期化を行うソフトウエアであるＰＯＳＴ（Power-On Self Test）などを格納する。
【００３６】
図３は、無線拡張装置１００の内部構成を示すブロック図である。デバイス・ワイヤ・アダプタ（ＤＷＡ：Device Wire Adaptor）１０１は、上りポートにＵＷＢの無線プラットフォームを備えてＷＵＳＢホスト・コントローラ４１と無線通信をし、下りポートに有線ＵＳＢのインターフェースを備えて有線ＵＳＢのホスト・コントローラとして動作して、有線ＵＳＢデバイスをＷＵＳＢホスト・コントローラ４１に無線で接続できるようにする。ＤＷＡ１０１には、有線ＵＳＢデバイスであるＵＳＢグラフィック・コントローラ１０５、ＵＳＢイーサネット・コントローラ１０７、ＵＳＢモデム１０９、およびＵＳＢ＿ＰＳ／２コントローラ１１１が接続される。
【００３７】
ＷＵＳＢホスト・コントローラ４１とＤＷＡ１０１との間では、無線転送効率を向上させるため有線ＵＳＢのプロトコルよりもパケット・サイズを大きくしているが、ＤＷＡ１０１は、ＷＵＳＢのパケット・サイズと有線ＵＳＢのパケット・サイズを双方向に変換する。ＵＳＢグラフィック・コントローラ１０５にはＶＧＡ／ＤＶＩ／ディスプレイ・ポート・コネクタ１１５が接続され、ＵＳＢイーサネット・コントローラ１０７にはＲＪ４５コネクタが接続され、ＵＳＢモデム１０９にはＲＪ１１コネクタが接続され、さらにＵＳＢ＿ＰＳ／２コントローラ１１１には、ＰＳ／２コネクタが接続される。また、ＤＷＡ１０１には、ＵＳＢコネクタ１１３が接続され、これにＨＤＤ２４が接続される。ＶＧＡ／ＤＶＩ／ディスプレイ・ポート・コネクタ１１５には、ディスプレイ２５が接続され、ＲＪ４５コネクタには、有線ＬＡＮ２２に接続するイーサネット・ケーブルが接続され、ＲＪ１１コネクタには公衆電話回線２３に接続するモデム・ケーブルが接続され、ＰＳ／２コネクタにはキーボード２６およびマウス２７が接続される。
【００３８】
ＵＳＢグラフィック・コントローラ１０５はグラフィック・アクセラレータおよびＶＲＡＭを備え、ＣＰＵ３１からの描画命令を受けて描画すべきイメージを生成してＶＲＡＭに書き込み、ＶＲＡＭから読み出した描画データをディスプレイ２５に送る。ＵＳＢイーサネット・コントローラ１０７は、イーサネットのＭＡＣフレームを生成して有線ＬＡＮ２２との通信を制御する。ＵＳＢモデム１０９は音声信号とディジタル信号を双方向に変換して公衆電話回線２３に対する通信を制御する。ＵＳＢ＿ＰＳ／２コントローラ１１１は、ＰＳ／２規格のキーボード２６およびマウス２７から受け取った信号を有線ＵＳＢのプロトコルに変換する。
【００３９】
図４は、ノートＰＣ１０において本発明を実行する主要なソフトウエアの構成を示す機能ブロック図である。これらのソフトウエアは、ＨＤＤ４２またはフラッシュＲＯＭ６３に格納されてＣＰＵ３１およびＥＣ５３で実行される。ＷＵＳＢイベント・サービス１５７は、ＯＳ上で動作するユーテリィリティ・ソフトウエアであり、本発明の中心的な役割を果たす。ＷＵＳＢイベント・サービス１５７、ＳＲイベント・サービス１５８およびアプリケーション１６７以外のソフトウエアは、ＯＳやＢＩＯＳが提供する機能やデバイス・メーカが提供するソフトウエアで構成することができる。
【００４０】
リッド・センサ・ドライバ１５１は、リッド・センサ２１ｂが永久磁石２１ａとの距離の変化で動作したときの開閉信号を生成するソフトウエアである。キーボード／マウス・ドライバ１５３は、入力デバイス１５、キーボード２６、またはマウス２７から送られた信号を処理するソフトウエアである。グラフィック・ドライバ１５６は、ＬＣＤ１７またはディスプレイ２５を制御するソフトウエアである。
【００４１】
加速度ドライバ１５９は、加速度センサ５１が測定した加速度から加速度データを生成してＥＣに出力するソフトウエアである。ＳＲイベント・サービス１５８は、加速度ドライバ１５９から受け取った加速度データからサプライズ・リムーバルが発生する可能性を示すリムーバル情報を生成する。サプライズ・リムーバルとは、デバイスに対して無線で接続されオン状態またはスリープ状態にあるノートＰＣを、デバイスの安全な切断操作をしないで無線通信圏外まで持ち出すことをいう。安全な切断を行う方法にイジェクト処理がある。
【００４２】
イジェクト処理とはデバイスをノートＰＣ１０から物理的および論理的に安全に取り外せる状態で無線通信経路を切断する処理をいう。イジェクト処理は、デバイスが外部記憶装置の場合は編集中のデータを保存したり読み取りを開始したデータを完全にメイン・メモリ３５に読み出したりした後にノートＰＣ１０から切断することを含む。ＳＲイベント・サービス１５８は、机上に置かれたノートＰＣ１０がユーザにより無線通信圏外まで持ち運ばれるときの状態を加速度として検知できるような周知のアルゴリズムで構成されている。そのアルゴリズムでは、ノートＰＣ１０が机上に水平に置かれた状態からユーザにより持ち上げられたときの姿勢の変化を加速度の変化で検出できるようにしてもよい。
【００４３】
システム・イベント・サービス１６１は、設定された特別の条件でノートＰＣ１０がサスペンド状態またはハイバネーション状態に移行するスリープ・イベントを生成するソフトウエアである。システム・イベント・サービス１６１は、たとえば、ノートＰＣ１０に対して一定の間ユーザがアクセスしなかった場合、あるいは、バッテリィ５７の電圧が所定値まで低下した場合に、サスペンドまたはハイバネーションのスリープ・イベントを生成する。スリープ・イベントは、ディスプレイ筐体１３の開閉に伴うリッド・センサ・ドライバ１５１の機能またはユーザの操作によるキーボード／マウス／ドライバ１５３の機能によっても生成される。
【００４４】
スリープ・サービス１６３は、ＷＵＳＢイベント・サービス１５７からスリープ・イベントを受け取ったときに、メイン・メモリ３５およびＨＤＤ４２またはそのいずれかにアプリケーション状態およびシステム状態を格納し、さらに、スリープ状態として定義されたデバイス以外のデバイスに対する電力の供給を停止するソフトウエアである。アクセス・サービス１６５は、ＷＵＳＢイベント・サービス１５７からの指示に基づいて、ノートＰＣ１０に無線拡張装置１００を経由して接続されているデバイスをノートＰＣ１０から切り離すイジェクト処理を行うソフトウエアである。
【００４５】
ＷＵＳＢドライバ１７１、ＤＷＡドライバ１７３、およびＨＤＤドライバ１７５は、それぞれＷＵＳＢホスト・コントローラ４１、ＤＷＡ１０１、およびＨＤＤ２４を制御するソフトウエアである。アプリケーション１６７は、ＯＳ上で動作してＨＤＤ４２またはＨＤＤ２４にアクセスするソフトウエアである。
【００４６】
つぎに、図４のソフトウエアを実行してノートＰＣ１０がＨＤＤ２４にアクセスする手順を図５のフローチャートに基づいて説明する。ブロック２０１では、ノートＰＣ１０がオン状態になっており図４に示したソフトウエアがＣＰＵ３１またはＥＣ５３で動作している。無線拡張装置１００の各コネクタには、イーサネット・ケーブル、ＨＤＤ２４、ディスプレイ２５、キーボード２６、およびマウス２７が接続されている。ノートＰＣ１０と無線拡張装置１００との距離がＵＷＢの通信範囲に入ると、アクセス・サービス１６５は各有線ＵＳＢデバイスとＷＵＳＢホスト・コントローラ４１との間で相互認証を行い、アソシエーションを完了させる。アソシエーションが完了すると各有線ＵＳＢデバイスとＷＵＳＢホスト・コントローラ４１との間で暗号化した無線通信が可能になる。そして、ＷＵＳＢドライバ１７１とＨＤＤドライバ１７５との間にも、論理的なコネクションであるパイプが設定される。
【００４７】
アクセス・サービス１６５は、ＷＵＳＢドライバ１７１とＨＤＤドライバ１７５との間にパイプが設定されたことを認識すると、ＷＵＳＢイベント・サービス１５７にノートＰＣ１０とＨＤＤ２４との間で無線通信経路が構成されたことを示す接続情報を通知する。ノートＰＣ１０はディスプレイ筐体１３が閉じた状態ではディスプレイ２５、キーボード２６、およびマウス２７から、また開いた状態ではＬＣＤ１７および入力デバイス１５からＨＤＤ２４にアクセスすることができる。ユーザは、アプリケーション１６７を通じて、ＨＤＤ２４に記憶されていたファイルをメイン・メモリ３５に読み出して編集することができる。ＷＵＳＢイベント・サービス１５７は、ＨＤＤ２４にアクセスしているアプリケーションからその識別情報を受け取り、現在どのアプリケーションがＨＤＤ２４にアクセスしているかを認識する。
【００４８】
ここでは、ノートＰＣ１０がオン状態またはスリープ状態のときにサプライズ・リムーバルが発生することを想定する。ＷＵＳＢイベント・サービス１５７は、スリープ・イベントが生成されていないと判断したときは、ブロック２０５に移行してサプライズ・リムーバルが発生する可能性を示すリムーバル情報を待ち受ける。サプライズ・リムーバルが発生するときは、通常ノートＰＣ１０がユーザに持ち上げられて揺れが発生するため、加速度センサ５１はその揺れを加速度として測定する。ブロック２０５では、加速度センサ５１が測定した加速度データを加速度ドライバ１５９がＥＣ４９に通知し、ＥＣ４９は加速度データをＲＡＭに記憶する。ＳＲイベント・サービス１５８は、定期的にＥＣ４９から加速度データを読み取り、サプライズ・リムーバルをもたらす加速度を衝撃などの結果に基づく他の加速度から峻別してリムーバル情報を生成し、ＷＵＳＢイベント・サービス１５７に通知する。
【００４９】
ブロック２０７では、ＷＵＳＢイベント・サービス１５７はアクセス・サービス１６５からＨＤＤ２４が接続されたことを示す接続情報を受け取っていない場合は、ＨＤＤ２４はイジェクトされていると判断する。ＨＤＤ２４がすでにノートＰＣ１０からイジェクトされていれば、サプライズ・リムーバルが発生することはないので特に処理をすることなくブロック２２１に移行して終了する。ＷＵＳＢイベント・サービス１５７がアクセス・サービス１６５から接続情報を受け取っている場合は、ブロック２０７でＨＤＤ２４が接続されていると判断してブロック２０９に移行する。
【００５０】
ＷＵＳＢイベント・サービス１５７は、アクセス・サービス１６５からＨＤＤ２４とノートＰＣ１０の間に無線通信経路が構成されたことを示す接続情報を受け取っている間に、ＳＲイベント・サービス１５８からリムーバル情報を受け取った場合にはブロック２０９で、アラート・サービス１５６にアラート・イベントを送る。アラート・イベントを受け取ったアラート・サービス１５５は、図示しないＬＥＤおよびブザーまたはそのいずれかを動作させてサプライズ・リムーバルが発生する可能性があることを示すアラートをユーザに通知する。
【００５１】
アラートはたとえば、ノートＰＣ１０が閉じられている場合は、ディスプレイ筐体１３の表面に形成したＬＥＤを点灯させたりブザーを鳴動させたりして通知することができる。アラート・サービス１５５はまた、グラフィック・ドライバ１５６を通じてＬＣＤ１７またはディスプレイ２５に、サプライズ・リムーバルが発生することによりＨＤＤ２４に編集中のデータをセーブする必要があることを示す情報または読み出し中のデータを完全に読み出す必要があることを示す情報を表示する。このとき、ノートＰＣ１０が開いているときはＬＣＤ１７に表示し、ノートＰＣ１０が閉じているときはディスプレイ２５に表示する。
【００５２】
アラートによりユーザは、ＨＤＤ２４のイジェクト処理が完了するまでノートＰＣ１０と無線拡張装置１００の無線通信を遮断しないようにする必要があることを認識する。イジェクト処理に必要な時間だけノートＰＣ１０とＨＤＤ２４の無線通信経路を有効にしておくため、ユーザは一旦持ち上げたノートＰＣ１０を机上に置いたり、あるいは、移動する速度を調整したりしてサプライズ・リムーバルの発生を防ぐことができる。
【００５３】
ブロック２１１でＷＵＳＢイベント・サービス１５７は、アクセス・サービス１６５に対してＨＤＤ２４をイジェクトするように指示する。指示を受けたアクセス・サービス１６５は、ＨＤＤドライバ１７５に対してＨＤＤ２４を切断してよいか問い合わせる。ＨＤＤドライバ１７５は、ＨＤＤ２４にアクセスしているすべてのアプリケーションに対して自らが切断される旨を通知する。ＨＤＤ２４から切断の通知を受けたアプリケーション１６７およびその他のアプリケーションは、ブロック２１３で、ＨＤＤ２４に対する編集中のデータや読み出し中のファイルが存在する場合には、ＷＵＳＢイベント・サービス１５７にその旨を通知してブロック２１５に移行し、編集中のデータや読み出し中のファイルが存在しない場合はアクセス・サービス１６５にその旨を通知してブロック２１７に移行する。
【００５４】
アプリケーション１６７から編集中のデータが存在することの通知を受けたＷＵＳＢイベント・サービス１５７は、ブロック２１５で、アプリケーション１６７に対して編集中のデータをセーブするように指示する。ブロック２１５でアプリケーション１６７はＷＵＳＢイベント・サービス１５７の指示に基づいて編集中のデータをＨＤＤ２４にセーブする。さらに読み出し中のファイルがある場合は、編集中のデータのセーブと読み出し中のファイルの読み出しが完了した時点でＷＵＳＢイベント・サービス１５７にイジェクト許可の通知をする。
【００５５】
ＨＤＤ２４にアクセスしているすべてのアプリケーションからイジェクト許可の通知を受け取ったことを確認すると、ブロック２１７でＷＵＳＢイベント・サービス１５７はブロック２０９で通知したアラートを停止するようにアラート・サービス１５５に指示する。アラートが停止したことによりユーザはノートＰＣ１０を無線通信圏外まで持ち運んでも安全であることを認識することができる。
【００５６】
ブロック２１９では、ＷＵＳＢイベント・サービス１５７は、アクセス・サービス１６５にＨＤＤ２４をイジェクトするように指示する。指示を受け取ったアクセス・サービス１６５は、ＨＤＤドライバ１７５を停止し、ノートＰＣ１０からＨＤＤ２４が認識でないようにしてイジェクト処理を完了する。ブロック２２１でアクセス・サービス１６５は、ＷＵＳＢイベント・サービス１５７にＨＤＤ２４の切断が完了した旨の通知を行ってオン状態におけるサプライズ・リムーバルを防ぐ処理を完了する。
【００５７】
ブロック２０３〜ブロック２１５の手順によれば、ユーザがノートＰＣ１０を無線通信圏外に持ち運ぶときの時間がブロック２０５からブロック２１５までの処理に費やす時間よりも長ければメイン・メモリ３５に残っている編集中のデータはＨＤＤ２４にセーブされるのでユーザが操作を誤ってデータが消失するようなことがなく安全である。また、ユーザがアラートを無視してノートＰＣ１０を無線通信圏外まで運び出さない限りデータは安全である。また、読み出し中のファイルはメイン・メモリ３５に完全に読み出されるので、無線通信圏外でメイン・メモリ３５のデータを読みとったり、ＨＤＤ４２に記憶したりすることができる。
【００５８】
ブロック２０３で無線拡張装置１００に接続されている間にスリープ・イベントが生成された場合は、ブロック２５５に移行する。ノートＰＣ１０をオン状態からスリープ状態に移行させるためのイベントであるスリープ・イベントは、システム・イベント・サービス１６１が生成したり、リッド・センサ・ドライバ１５１が生成したり、または、キーボード／マウス・ドライバ１５３が生成したりする。ユーザはリッド・センサ・ドライバ１５１およびシステム・イベント・サービス１６１がスリープ・イベントを生成するときの条件をあらかじめ設定することができる。
【００５９】
たとえば、システム・イベント・サービス１６１はノートＰＣ１０のアイドル時間が所定値を超えたときまたはバッテリィ５７の電圧が所定値より低下したときにスリープ・イベントを生成する。リッド・センサ・ドライバ１５１は、ディスプレイ筐体１３が閉じられたときにスリープ・イベントを生成するように設定することができる。キーボード／マウス・ドライバ１５３は、所定のキーが操作されたときにスリープ・イベントを生成するように設定することができる。ブロック２０３では、いずれかの原因により生成されたスリープ・イベントがＷＵＳＢイベント・サービス１５７に送られる。
【００６０】
ブロック２５５では、ＷＵＳＢイベント・サービス１５７は、アクセス・サービス１６５からＨＤＤ２４が接続されたことを示す接続情報を受け取っていない場合は、ＨＤＤ２４はイジェクトされていると判断する。ＨＤＤ２４のイジェクトは、ブロック２１９の処理によるイジェクトであっても、ユーザが入力デバイス１５またはマウス２７を操作して行ったイジェクトでもよい。ブロック２５５ですでにＨＤＤ２４がノートＰＣ１０からイジェクトされていればブロック２６９に移行する。ＷＵＳＢイベント・サービス１５７はＨＤＤ２４が接続されていると判断したときはブロック２５７に移行する。
【００６１】
ＷＵＳＢイベント・サービス１５７は、アクセス・サービス１６５からＨＤＤ２４とノートＰＣ１０の間に無線通信経路が構成されたことを示す接続情報を受け取っている間にシステム・イベント・サービス１６１、リッド・センサ・ドライバ１５１、またはキーボード／マウス・ドライバ１５３からスリープ・イベントを受け取った場合にブロック２５７で、アラート・サービス１５５にアラート・イベントを送る。アラート・イベントを受け取ったアラート・サービス１５５は、ＬＥＤおよびブザーまたはそのいずれかを動作させて、ノートＰＣ１０がＨＤＤ２４に対してアクセスしている状態でスリープ・イベントが発生していることを示すアラートをユーザに通知する。
【００６２】
ユーザはこのアラートにより、イジェクト処理を完了させないでスリープ状態に移行すると無線通信圏外でレジュームしたときにメイン・メモリ３５からデータが消失する可能性があることを認識することができる。ＷＵＳＢイベント・サービス１５７はスリープ・イベントの実行を一旦保留にしてブロック２５９で、アクセス・サービス１６５に対してＨＤＤ２４をイジェクトするように指示する。指示を受けたアクセス・サービス１６５は、ＨＤＤドライバ１７５に対してＨＤＤ２４を切断してよいか問い合わせる。ＨＤＤドライバ１７５は、ＨＤＤ２４にアクセスしているすべてのアプリケーションに対して自らが切断される旨を通知する。ＨＤＤ２４から切断の通知を受けたアプリケーション１６７およびその他のアプリケーションは、ブロック２６１で、ＨＤＤ２４に対する編集中のデータや読み出し中のデータが存在する場合には、ＷＵＳＢイベント・サービス１６５にその旨を通知してブロック２６３に移行し、編集中のデータや読み出し中のファイルが存在しない場合はアクセス・サービス１６５にイジェクト許可の通知をしてブロック２６５に移行する。
【００６３】
アプリケーション１６７から編集中のデータが存在することの通知を受けたＷＵＳＢイベント・サービス１５７は、ブロック２６１で、アプリケーション１６７に対して編集中のデータをセーブするように指示する。ブロック２６３で、アプリケーション１６７はＷＵＳＢイベント・サービス１５７の指示に基づいて編集中のデータをＨＤＤ２４にセーブする。さらに読み出し中のファイルがある場合は、編集中のデータのセーブと読み出し中のファイルの読み出しが完了した時点でＷＵＳＢイベント・サービス１５７にイジェクト許可の通知をする。
【００６４】
ＨＤＤ２４にアクセスしているすべてのアプリケーションからイジェクトの許可を受け取ったことを確認すると、ブロック２６５でＷＵＳＢイベント・サービス１５７はブロック２５７で発行したアラートを停止するようにアラート・サービス１５５に指示する。アラートが停止したことによりユーザはノートＰＣ１０をスリープ状態でＷＵＳＢの通信圏外まで持ち運んでも安全であることを認識することができる。
【００６５】
ブロック２６７では、ＷＵＳＢイベント・サービス１５７は、アクセス・サービス１６５にＨＤＤ２４をイジェクトするように指示する。指示を受け取ったアクセス・サービス１６５はＨＤＤドライバ１７５を停止して、ノートＰＣ１０からＨＤＤ２４が認識でないようにしてイジェクト処理を完了する。ブロック２６５で行ったアラートの停止は、ＨＤＤ２４がイジェクトされたブロック２６７の後に行うようにしてもよい。アクセス・サービス１６５は、ＷＵＳＢイベント・サービス１５７にＨＤＤ２４の切断が完了した旨の通知を行う。
【００６６】
ＨＤＤ２４が切断されたことを確認したＷＵＳＢイベント・サービス１５７は、ブロック２６９で、スリープ・サービス１６３に対してノートＰＣ１０をスリープ状態に移行させるように指示する。指示を受け取ったスリープ・サービス１６３はノートＰＣ１０をスリープ状態に移行させて処理を終了する（ブロック２７１）。ＨＤＤ２４に対する編集中のデータが存在するときにスリープ・イベントが実行されると、未保存データはセーブされることなくノートＰＣ１０がスリープ状態に移行する。そして、無線拡張装置１００に対する通信圏外でレジュームしたときにはメイン・メモリ３５からデータが消失する可能性がある。
【００６７】
スリープ状態でリムーバル情報を生成することは、スリープ状態で加速度センサ５１およびＥＣ４９に電力を供給しておけば可能である。しかし、リムーバル情報に基づいてイジェクト処理をするためには図４のソフトウエアを実行するために一旦レジュームする必要がある。レジュームには所定の時間を費やすので、リムーバル情報を生成した後にレジュームしてイジェクト処理をするには一定の時間が必要となる。しかし、ブロック２０３〜ブロック２７１の手順によれば、スリープ状態に入る前には必ずイジェクト処理が行われることになるため、スリープ状態でノートＰＣ１０を無線通信圏外まで運んでもサプライズ・リムーバルは発生しないため、レジュームしたときにユーザが操作を誤ってメイン・メモリ３５から編集中のデータが消失することはなくなる。
【００６８】
図５の手順は、オン状態またはスリープ状態でサプライズ・リムーバルが発生する前にイジェクト処理をして、安全にＨＤＤ２４を切断している。本実施の形態にかかる他の方法では、イジェクト処理を伴わないでサプライズ・リムーバルの発生を防ぐ方法を説明する。図６は、他の方法を実行するソフトウエアの構成を示す機能ブロック図である。図６が図４と異なる点は、ＨＤＤ２４にアクセスしていることを示すアクセス情報をすべてのアプリケーションから受け取って記憶するソフトウエアであるアクセス情報サービス１６９を有し、かつＷＵＳＢイベント・サービス１５７の処理が異なる点である。そして、ＷＵＳＢイベント・サービス１５７は、アクセス情報サービス１６９が保有するデータを参照できるようになっている。
【００６９】
図６のソフトウエア構造に基づいてサプライズ・リムーバルを防ぐ手順を図７のフローチャートに基づいて説明する。ブロック３０１はブロック２０１と同じ内容である。ブロック３０３では、すべてのアプリケーションは、ＨＤＤ２４から読み取ったファイルを編集してＨＤＤ２４に対する編集中のデータがある場合は、アクセス情報サービス１６９に通知する。アクセス情報サービス１６９は、それをアプリケーションの属性情報とともにアクセス情報としてメイン・メモリ３５に記憶する。
【００７０】
各アプリケーションは、ＨＤＤ２４に対する編集中のデータをセーブしたときは、その旨をアクセス情報サービス１６９に通知し、通知を受け取ったアクセス情報サービス１６９は、当該アプリケーションに対するアクセス情報をリセットする。したがって、アクセス情報サービス１６９は、現在においてＨＤＤ２４に対する編集中のデータが存在するアプリケーションのアクセス情報だけを保有することになる。
【００７１】
ブロック３０５はブロック２０３と同じで、ブロック３０７はブロック２０５と同じである。ブロック３０９では、ＷＵＳＢイベント・サービス１５７は、いずれかのアプリケーションにＨＤＤ２４に対する編集中のデータがあるか否かをアクセス情報サービス１６９に問い合わせる。いずれかのアプリケーションがＨＤＤ２４に対する編集中のデータを保有している場合は、ＷＵＳＢイベント・サービス１５７は、ブロック３１１でアラート・サービス１５５に対してアラートを発行するように指示する。アラートの内容はブロック２０９と同じである。
【００７２】
ブロック３１３でＷＵＳＢイベント・サービス１５７は、編集中のデータを保有するアプリケーションに対してそのデータをセーブするように指示すると、アプリケーションはＨＤＤ２４にデータをセーブして、アクセス情報サービス１６９にその結果を通知する。ブロック３１５では、ＷＵＳＢイベント・サービス１５７がアクセス情報サービス１６９に問い合わせて、ＨＤＤ２４に対して編集中のデータを保有するアプリケーションがないことを確認すると、アラート・サービス１５５を通じてアラートを停止してブロック３１７で終了する。
【００７３】
ブロック３０５でスリープ・イベントが発行されているときはブロック３５９に移行し、ＷＵＳＢイベント・サービス１５７は、編集中のデータを保有するアプリケーションが存在するか否かをアクセス情報サービス１６９に問い合わせて確認する。編集中のデータを保有するアプリケーションが存在しない場合は、ブロック３６５に移行して、ＷＵＳＢイベント・サービス１５７は、スリープ・サービス１６３に対してノートＰＣ１０をスリープ状態に移行させるように指示し、スリープ・サービス１６３がノートＰＣ１０をスリープ状態に移行させてブロック３６５で終了する。
【００７４】
ブロック３５９で編集中のデータを保有するアプリケーションが存在する場合はブロック３５７に移行する。ブロック３５７からブロック３６３までは、ブロック３１１からブロック３１５までの処理と同じである。図７の手順では、アクセス情報サービス１６９を導入することでイジェクト処理をしないで編集中のデータの消失を防ぐことができる。
【００７５】
これまで、ノートＰＣ１０と無線拡張装置１００との間の無線通信を、ＷＵＳＢを例にして説明してきたが、本発明は、物理層にＵＷＢを利用した１３９４ＴＡ（Trade Association）、Ｂｌｕｅｔｏｏｔｈなどの他のアプリケーション層に適用することも可能である。さらに本発明はＭＩＭＯ（Multiple Input Multiple Output）の無線ＬＡＮ技術を利用した通信で両者を接続する場合にも適用することができる。また、無線拡張装置１００では、ＤＷＡ１０１を使用した構成を例にして説明したが、ＤＷＡを使用しないで各デバイスがＷＵＳＢの無線通信部を内蔵するいわゆるワイヤレスＵＳＢデバイスで構成してもよい。
【００７６】
また、リムーバル情報はノートＰＣ１０と無線拡張装置１００との距離が変化することをノートＰＣ１０が認識できるものであれば、電波や赤外線を利用して生成してもよい。これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【図面の簡単な説明】
【００７７】
【図１】本発明の実施形態にかかるノートＰＣおよび無線拡張装置の外形図である。
【図２】ノートＰＣ１０に実装されたハードウエアの構成を示す概略ブロック図である。
【図３】無線拡張装置の内部構成を示すブロック図である。
【図４】ノートＰＣにおいて本発明の実施形態にかかる主要なソフトウエアの構成を示す機能ブロック図である。
【図５】図４のソフトウエアによりノートＰＣがＨＤＤにアクセスする手順を示すフローチャートである。
【図６】ノートＰＣにおいて他の実施形態にかかる主要なソフトウエアの構成を示す機能ブロック図である。
【図７】図６のソフトウエアによりノートＰＣがＨＤＤにアクセスする手順を示すフローチャートである。
【符号の説明】
【００７８】
１０…ノートＰＣ
１１…システム筐体
１３…ディスプレイ筐体
１５…入力デバイス
２４…ＨＤＤ
１００…無線拡張装置
【図１】
0004724187.tif 000002
【図２】
0004724187.tif 000003
【図３】
0004724187.tif 000004
【図４】
0004724187.tif 000005
【図５】
0004724187.tif 000006
【図６】
0004724187.tif 000007
【図７】
0004724187.tif 000008