(57)【要約】【課題】ノートブックのような移動型マシンにおいて、マシンネットワークベースのブーティングを可能にするとともに仮想マシンを実行させること。【解決方法】ラップトップまたはノートブックコンピュータのような移動型装置であり、上記移動型装置の第１動作モードと第２モードを供給するように動作するハイパーバイザを装備している。この第１動作モードは第１動作環境に関連し、第２動作モードは第２動作環境に関連している。【選択図】        図１
2014026669.tif 000002
【特許請求の範囲】
【請求項１】
移動型装置と、
前記移動型装置にロードされるハイパーバイザと、を備え、
前記ハイパーバイザは、
必要なネットワークを利用できる場合には、外部ソースからのＯＳ（オペレーティング・システム）に基づき、前記移動型装置のディスクレス・オペレーティング環境を実現する第１のモードを提供し、
必要なネットワークを利用できない場合には、ローカルソースからのＯＳに基づき、前記移動型装置のディスク・オペレーティング環境を実現する第２のモードを提供することを特徴とするシステム。
【請求項２】
前記移動型装置はハードディスクドライブを備え、
前記ローカルソースは、前記移動型装置のハードディスクドライブであることを特徴とする請求項１に記載のシステム。
【請求項３】
移動型装置にロードされるハイパーバイザが、必要なネットワークを利用できる場合には、外部ソースからのＯＳ（オペレーティング・システム）に基づき、前記移動型装置のディスクレス・オペレーティング環境を実現する第１のモードを提供するステップと、
前記ハイパーバイザが、必要なネットワークを利用できない場合には、ローカルソースからのＯＳに基づき、前記移動型装置のディスク・オペレーティング環境を実現する第２のモードを提供するステップと、
を含むことを特徴とする方法。
【請求項４】
前記移動型装置はハードディスクドライブを備え、
前記ローカルソースは、前記移動型装置のハードディスクドライブであることを特徴とする請求項３に記載の方法。 
【請求項５】
移動型装置にロードされるプログラムであって、
必要なネットワークを利用できる場合には、外部ソースからのＯＳ（オペレーティング・システム）に基づき、前記移動型装置のディスクレス・オペレーティング環境を実現する第１のモードを提供するステップと、
前記ハイパーバイザが、必要なネットワークを利用できない場合には、ローカルソースからのＯＳに基づき、前記移動型装置のディスク・オペレーティング環境を実現する第２のモードを提供するステップと、
をコンピュータに実行させることを特徴とするコンピュータが実行可能なプログラム。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概してネットワークコンピューティング・システムに関し、特に、遠隔管理されたコンピュータに関する。また特に、本発明は、遠隔管理されたコンピュータまたはスタンドアロンコンピュータとしての移動型コンピューティング・システムを実装した方法およびシステムに関する。 
【背景技術】
【０００２】
ある環境においては、オペレーティングシステム（ＯＳ）のブートストラッピングが必要となる。コンピュータの電源がオンになると、まずそのＯＳの２値イメージが記憶装置からメモリにロードされ、これにより、ＯＳがコンピュータシステム全体を実行および制御するように設定される。従来、ＯＳのロードは、ブート機構、またはブートストラッピング機構を使用してコンピュータシステムの実行を開始またはスタートさせることで行われてきた。 
【０００３】
過去、ＯＳは、コンピュータのハードディスクドライブからブートストラップされていた。大抵の移動型コンピュータを含む従来のコンピュータシステムは、いわゆるデスクトップタイプのモデルであるかノートブックタイプのモデルであるかに関係なく、そのオペレーティングシステムをブートストラッピングする（または短縮して「ブートする」）ハードディスクを含む必須のハードウェアコンポーネント全てを、例えばコンピュータのハウジングといった筐体内に一まとめに配置していた。しかし、状況によっては、コンピュータシステムを、オペレーティングシステムを実装した、さらにはコンピュータユーザの個人データを含んでいるシステムハードディスクを他と一まとめに配置しないように、もしくはコンピュータシステムの全体のその他の部分から物理的に分離して維持するように構成することが望ましい。 
【０００４】
したがって、小規模および大規模な企業の間では、現在、ネットワーク内の各コンピューティング・システムにハードドライブを設ける必要性を排除するディスクレスクライアントを提供するという、似たような傾向がある。一般に、こうしたディスクレスクライアントは、デスクトップタイプのコンピューティング・システムであり、典型的に、そのオペレーティングシステムをネットワークサーバから、インターネットまたはイントラネット接続上でブートストラップするものである。全てのデータは中央サーバにあるため、ファイル管理を１つの中央の場所において制御することができる。バックアップ実施時に多数のコンピューティング・システムを起動させる必要がないため、システムバックアップが大幅に促進され、さらに、必要な全ての「パッチ管理」をサーバ側で実施することができる。 
【０００５】
遠隔ブートストラップをディスクレスクライアントで使用するように実現する公知の工程には様々なものがある。こうした方法の１つがＰＸＥ（プリブート実行環境）ブートである。他にも、ｉＳＣＳＩ（InternetＳmall Computer Systems Interface）プロトコルを利用するものもある。プレブート実行環境（ＰＸＥ）の仕様書（http:..//www.pix.net/software/pxeboot/archive/pxespect.pdf）ではＰＸＥブートに関するさらなる情報が入手可能である。ＲＦＣ３７２０ではｉＳＣＳＩに関するさらなる情報が入手可能である（http://www.faqs.org/rfcs/rfc3720.html）。 
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、こうしたディスクレスクライアントには問題および制限がある。最も顕著な制限は、クライアントコンピュータが、ＯＳイメージを含有したネットワークサーバへの一貫した継続する接続に依存することである。そのため、ディスクレスクライアントはデスクトップのような静止型マシンである傾向にあり、ノートブックのような移動型マシンではない。 
【０００７】
ある別の環境においては、異なるオペレーティングシステム毎に書かれたアプリケーションを共通のハードウェアプラットホーム上で同時に実行する必要性と、利用可能なハードウェアリソースを完全に利用する必要性とによって生じた仮想マシンと仮想マシンモニタが必要となる。仮想マシンモニタは１９６０年代後半より研究対象とされ続け、「仮想マシンモニタ」（ＶＭＭ）として知られるようになった。当業者には、例えば、Ｒ．Ｐ．Ｇｏｌｄｂｅｒｇ，“Ｓｕｒｖｅｙ  ｏｆ  Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ  Ｒｅｓｅａｒｃｈ，”ＩＥＥＥ  Ｃｏｍｐｕｔｅｒ，Ｖｏｌ．７，Ｎｏ．６，１９７４を参照されることを強く奨励する。さらなる例として、１９７０年代に、ＩＢＭ（International Business Machines）社が、ＶＭ／３７０システムで使用するための仮想マシンモニタを採用した。 
【０００８】
しばしば文献において「ハイパーバイザ」と呼ばれる仮想マシンモニタは、ハードウェアの頂部の直上で直接実行され、マシンの全てのハードウェアリソースを仮想化する薄型のソフトウェア部品である。仮想マシンモニタのインターフェースは同マシンのハードウェアインターフェースと同じであるため、オペレーティングシステムはＶＭＭの存在を決定することができない。その結果、ハードウェアインターフェースがその下のハードウェアと一対一対応型の互換性を有するものである場合に、同一のオペレーティングシステムを仮想マシンモニタ上あるいは生ハードウェア上で実行できるようになる。これにより、システムリソースの小部分のみが必要な場合には、オペレーティングシステムの複数のインスタンスか、単にオペレーティングシステムのカーネルのインスタンスを実行できるようになる。各インスタンスは仮想マシンと呼ばれる。オペレーティングシステムを仮想マシンに複製するか、または、仮想マシン毎に全く異なるオペレーティングシステムを使用することができる。いずれの場合でも、仮想マシンは完全に自動化されており、例えばハードウェア妨害といったハードウェアリソースにアクセスするための仮想マシンモニタに依存する。 
【課題を解決するための手段】
【０００９】
本発明の１つの態様は、移動型装置と、上記移動型装置内に搭載されたハイパーバイザとを備えたシステムを提供し、この場合、ハイパーバイザは、上記移動型装置の第１動作モードと、上記移動型装置の第２動作モードとを実行するように動作し、上記第１動作モードは第１動作環境に関連し、上記第２動作モードは第２動作環境に関連している。 
【００１０】
本発明の別の態様は、移動型装置内にハイパーバイザを搭載するステップと、上記ハイパーバイザにより、上記移動型装置の第１動作モードおよび第２動作モードを提供するステップとを備えた方法を提供し、この場合、上記第１動作モードは第１動作環境に関連し、上記第２動作モードは第２動作環境に関連している。 
【００１１】
さらに、本発明のさらなる態様は、マシンによる読み出しが可能なプログラム記憶装置を提供し、このプログラム記憶装置は、移動型装置内にハイパーバイザを搭載するステップと、上記ハイパーバイザにより、上記移動型装置の第１動作モードおよび第２動作モードを提供するステップとを備えた方法を実行するために上記マシンによって実行可能な命令のプログラムを明確に具現化するものであり、この場合、上記第１動作モードは第１動作環境に関連し、上記第２動作モードは第２動作環境に関連している。 
【００１２】
本発明を、上述したもの以外のさらなる特徴および利点と共により理解するために、添付の図面と共に以降の説明を参照し、本発明の範囲は付属の請求項において特定される。
【発明を実施するための形態】
【００１３】
ここでは本発明を、その好ましい実施形態を示した添付の図面を参照しながらより十分に説明するが、以降で本発明を説明する前に、適切な技術の当業者がここで説明される本発明を変更して好都合な結果を達成することも可能である点が理解されるべきである。したがって、以降の説明は、適切な当業者に向けられた、広範囲で示唆的な開示として理解されるべきであり、本発明を制限するものとして理解されるべきではない。 
【００１４】
次に、複数の図面を通して類似の要素またはステップには同様の参照符号が付された添付の図面を特に参照しながら本発明の好ましい実施形態を説明する。本明細書全体において使用されている「一実施形態」、「実施形態」あるいは類似の表現は、実施形態に関連して説明されている特定の特性、構造、または特徴が、本発明の少なくとも１つの実施形態に含まれていることを意味する。そのため、本明細書中に「一実施形態」、「実施形態」および類似の表現が出てきた場合、これらは全て同一の実施形態を参照していてよいが、しかしこれに限定はされない。 
【００１５】
図１には、コンピュータシステム１００を例示する実施形態のブロック図が示されている。図１に示した実施形態は、ノートブック型コンピュータシステムであってよく、その例として、ニューヨーク州パーチェスにあるレノボ社（ＵＳ）より販売されているパーソナルコンピュータのＴｈｉｎｋＰａｄ（登録商標）シリーズや、ニューヨーク州アーモンクにあるＩＢＭ（International Business Machines）社より販売されているＩｎｔｅｌｌｉｓｔａｔｉｏｎ（登録商標）のようなワークステーションコンピュータが挙げられる。しかしながら、以下の説明より明らかになるように、本発明は、任意のデータ処理システムによる様々な動作モードに適用される。 
【００１６】
図１に示すように、コンピュータシステム１００は少なくとも１個のシステムプロセッサ４２を含んでおり、このシステムプロセッサ４２はプロセッサバス４４により読み出し専用メモリ（ＲＯＭ）４０とシステムメモリ４６に接続されている。このシステムプロセッサ４２は、インテル社製のプロセッサの１つが実装されてもよく、ＲＯＭ４０に記憶されたブートコード４１を電源オン時に実行し、その後、オペレーティングシステムとシステムメモリ４６に記憶されているアプリケーションソフトウェアとの制御下でデータ処理を行う汎用プロセッサである。システムプロセッサ４２は、プロセッサバス４４とホストブリッジ４８を介して周辺コンポーネント相互接続（ＰＣＩ）ローカルバス５０に接続されている。 
【００１７】
ＰＣＩローカルバス５０は、アダプタおよびブリッジを含む多数の装置の取り付けをサポートする。こうした装置には、コンピュータシステム１００とＬＡＮ（local Area Network）をインターフェースするネットワークアダプタ６６、コンピュータシステム１００とディスプレイ６９をインターフェースするグラフィックスアダプタ６８がある。ＰＣＩローカルバス５０上での通信はローカルＰＣＩコントローラ５２によって管理され、次に、メモリバス５４を介して不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）５６に接続される。ローカルＰＣＩコントローラ５２は、第２ホストブリッジ６０を介して追加のバスおよび装置への接続も可能である。 
【００１８】
コンピュータシステム１００はさらに、ＩＳＡブリッジ６４によってＰＣＩローカルバス５０に接続されたＩＳＡ（Industry Standard Architecture）バス６２を含む。ＩＳＡバス６２には、コンピュータシステム１００と、例えばキーボード、マウス、ディスクドライブといった取り付けられた周辺装置との間の通信を制御する入力／出力（Ｉ／Ｏ）コントローラ７０が接続されている。これに加え、Ｉ／Ｏコントローラ７０は、コンピュータシステム１００の、シリアルおよびパラレルポートを介した外部通信をサポートする。
【００１９】
ディスクレスコンピュータを含むいくつかのコンピュータは、そのオペレーティングシステムを、インターネットまたはイントラネット接続上で遠隔記憶装置からブートストラップする。図２は、こうした遠隔記憶装置と複数のクライアントを装備したネットワークの一例を示す。このネットワーク接続は、有線・無線の両方を含む様々なものであってよいことが理解されるべきである。ネットワークベースのブーティング工程中に、クライアントコンピュータ２１，２２が、ブートストラッピングに必要な遠隔記憶装置２０のファイルを要求するパケット（１または複数）を送信すると、遠隔記憶装置２０がクライアントコンピュータ２１，２２に応答して適切なブートファイルを送信する。この例でのブーティングには、ネットワーク上でサーバコンピュータ（またはコンピュータ上で実行されるサーバ処理）を介して行うブーティングや、また、プロセッサまたはＣＰＵ、メモリを実装したサーバコンピュータを介在させず、オペレーティングシステムおよびアプリケーションプログラムを実行せずにネットワークに直接取り付けられた記憶装置からのブーティングが含まれることが理解されるべきである。 
【００２０】
本開示は次に、本発明の少なくとも１つの好ましい実施形態に従って明示または実行可能な実施の説明へと移る。以下で追加の図面について説明するが、図１と図２を同時に参照し、また特に、必要な範囲で全ての図面を同時に参照することが可能である。 
【００２１】
図３は、仮想化ソフトウェアを、本発明の実施形態を実現するためにハードウェア実現型のコントローラに関連した仮想マシンモニタを採用している本発明の一実施形態に従って実行しているコンピュータシステム内の抽象化層を示すシステム仮想層の図である。この実施形態によれば、専用ハードウェアは必要ない。最下位の抽象化はハードウェア層３００であり、この層はコンピュータシステムの物理ハードウェア層である。仮想マシンモニタ層３０２はハードウェア層３００の上に位置する中間層であり、ネットワークアダプタ６６およびディスクコントローラ７２への全てのアクセスの試みを、コンピュータシステム上で実行されるソフトウェアによって遮断する。 
【００２２】
本質的には、任意の適切な仮想マシンモニタ（ハイパーバイザ）を本発明の実施形態に従って使用することができるが、現在のところ「Ｘｅｎ」ハイパーバイザが好ましいハイパーバイザである。Ｘｅｎハイパーバイザは、オープンソースソフトウェア開発である。Ｘｅｎハイパーバイザに関するさらなる情報は、http://www.xensource.comで見ることができる。さらに、仮想マシンモニタの機能は、ソフトウェアにて、あるいは、例えば少なくとも１個の集積回路や少なくとも１個の集積回路の一部といったハードウェアにて実現できる。そのため、本明細書で説明された本発明の概念は、ハードウェア、ソフトウェア、あるいは両方の組み合わせにて実現できることが理解されるべきである。 
【００２３】
最上位の抽象化には、最後にオペレーティングシステムとソフトウェアアプリケーションを実行する仮想マシン３０４，３０６がある。仮想マシンを２個のみ示したが、追加の仮想マシンの利用も可能である。仮想マシンは、他の仮想マシンの存在を知覚しないように構成される。仮想マシン３０４は、ネットワーク装置２０のような外部ソースからのＯＳ１に関連したディスクレスオペレーションを実行できるように構成されることが好ましい一方で、仮想マシン３０６を、ディスクドライブ２００のようなローカルソースからのＯＳ２に関連したオペレーションを実行できるように構成することが好ましい。 
【００２４】
一般に、ＯＳ１、ＯＳ２、ネットワーク装置２０、およびディスクドライブ２００は単なる例示であることが理解されるべきである。そのため、本発明の現時点で好ましい少なくとも１つの実施形態により、一方が第１コンテキストあるいは環境とインターフェースするように、他方が第２コンテキストあるいは環境とインターフェースするように構成された、少なくとも２つの仮想マシン（またはセッション）を包括する仮想マシンモニタ（またはハイパーバイザ）の概念が幅広く考案される。本発明の少なくとも１つの一実施形態の有利な改良では、こうした環境の一方は外部であり、他方はローカルである。したがって、ここでの例示では、外部環境は企業ネットワークのようなネットワークであり、ローカル環境はディスクドライブを実装したローカルＯＳである。しかし、本発明の実施形態は、その他の幅広い内容および設定に適用できることが明白である。 
【００２５】
本発明の特に好ましい実施形態によれば、コンピュータシステム１００は、優勢なオペレーティングパラダイムにより定義された所定の基準に応じて、仮想マシンモニタ３０２によって、１つの仮想マシンと別の仮想マシンとの間で確実に移行することができる。上述で言及したように、ＯＳイメージを含有したネットワーク装置への（仮想マシン３０４がディスクドライブ２００へのアクセスを遮断した状態で、ネットワークアダプタ６６を介し）一貫した継続する接続が存在する場合には、コンピュータシステム１００はディスクレス装置として機能することができる。仮想マシンモニタ３０２は、こうした一貫した継続する接続が、優勢な条件の下でさえも可能であるかを決定できることが好ましい。企業ネットワークが利用可能でないと決定された場合には、仮想マシン３０４が休止するのが好ましく、仮想マシン３０６が、従来のオペレーションに対して、ＯＳ２を介してアクティブとなることが好ましい。そのため、仮想マシン３０６は、例えば非限定的な例により、ディスクドライブ２００への完全なアクセスを許可し、一方でネットワークアダプタ６６へのアクセスを遮断する。 
【００２６】
仮想マシン３０４，３０６を介した異なる動作モードを理解することができる。例えば、仮想マシン３０４は、（ネットワーク装置２０に固有の）安全性が高い、あるいは慎重を期するオペレーションとインターフェースし、このオペレーションを扱うことが可能であり、一方、仮想マシン３０６は、安全性が低い、またはそれほど慎重を期さないオペレーションとインターフェースし、これを扱うことが可能である。したがって、これは例えば、ユーザが慎重を期する、または機密扱いの情報を外部ソースから装置１００にダウンロードする条件を排除することを助け、ここでは、こうした危険性の高いアプリケーションはダウンロード不可であり、仮想マシン３０４を介した場合のみ利用することができる。 
【００２７】
本発明の実施形態にしたがって第３モードを考案することができる。ここでは、ディスクレスネットワークが「クライアント／サーバ」モードで動作できる。このモードでは、仮想マシンモニタ３０２は、外部ソースからのアプリケーションおよびデータを、ディスクドライブ２００との組み合わせが可能であり、したがって一貫した継続するネットワーク接続の必要がない（無論、インストール時を除く）、さらに別の仮想マシン（図示せず）にインストールできることが好ましい。これは、明らかに安全性の低いモードであるが、一般的なアプリケーションに対して、あるいは、慎重を期さない、危険性が低く、機密扱いでない性質のアプリケーションに対して著しい便宜性を加えることができる。 
【００２８】
図４は、本発明の一実施形態による仮想マシンモニタに利用される論理を示したフローチャートである。仮想マシンモニタ（ハイパーバイザ）は、まず、遠隔ブート要素の利用可能性を確認する。一例として、ネットワークアダプタ６６を介した一貫した継続するネットワーク接続の存在が評価される（ステップＳ４０１）。あるいは、例えば、現在ユーザが一貫した継続するネットワーク接続環境にいるが、こうした環境から出ようとしている場合には、ユーザの選択を利用することができる。遠隔ブート要素の利用可能性が確認されると、仮想マシンモニタがブートモードを選択し（ステップＳ４０２）、次に、ブートを上述したとおりに実施する（ステップＳ４０３）。 
【００２９】
図４に示した実施形態は、図３に関連して説明したように仮想マシンマネージャとして実現することができる。 
【００３０】
本発明の実施形態は、マシン読み出し可能媒体を含んだ、コンピュータプログラムプロダクトとして提供することができる。この媒体には、コンピュータ（または他の電子装置）を本発明の任意の実施形態による工程を実行するようにプログラミングするための命令が記憶されている。このマシン読み出し可能媒体には、例えばフロッピー（登録商標）ディスク、光学ディスク、ＣＤ−ＲＯＭ、磁気光学ディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気または光学カード、あるいはこれ以外のタイプの、電子的な命令の記憶に適した媒体／マシン読み出し可能媒体が含まれるが、しかしこれらに限定はされない。さらに、本発明の実施形態は、コンピュータプログラムプロダクトとしてダウンロードすることもできる。この場合には、通信リンク（例えばモデムやネットワーク接続）を介し、キャリア波または他の伝播媒体にて具現化されるデータ信号の方法によって、プログラムを遠隔コンピュータから要求側のコンピュータへ転送できる。 
【００３１】
本明細書で示したステップの順序はあくまでも例示を目的としたものであり、これを、説明した本発明の概念を実施するステップを異なる順序で使用して実現することができる他の実施形態対する制限として解釈するべきではない。請求項に記載されている全てのステップ順序は明瞭性を増すためのものであり、特定のステップ順序の利用を意味するものではない。 
【００３２】
ここまで、本発明の好ましい実施形態を図面および詳細な説明にて述べ、また特定の用語を使用したが、こうして提示された説明は専門用語を総称的および説明的な感覚においてのみ使用しており、制限を目的として使用していない。 
【００３３】
本明細書では特に記述がない限り、本明細書で述べ、引用した全ての特許、特許出願、特許公報、他の刊行物（ウェブベースの刊行物を含む）の全体は、あたかもその全体が本明細書で説明されたかのように本明細書に組み込まれる。 
【図面の簡単な説明】
【００３４】
【図１】移動型コンピューティング・システムに遠隔管理コンピュータまたはスタンドアロンコンピュータとして動作させることを可能にするリソースを組み込んだ本発明の好ましい実施形態によるコンピュータシステムのブロック図である。
【図２】クライアントコンピュータが遠隔装置からブートストラップを行う例証的なコンピュータネットワークを示す図である。
【図３】本発明の一実施形態による、仮想化ソフトウェア実行中のコンピュータシステム内における抽象層を示すシステム仮想層の図であり、このシステム仮想層内では、仮想マシンモニタを採用して、ハードウェア実現されるコントローラに関連して別のブーティングを実現している。
【図４】本発明の一実施形態による仮想マシンモニタのための論理を示すフローチャートである。
【符号の説明】
【００３５】
２０    ネットワーク装置（遠隔記憶装置）
２１、２２    クライアントコンピュータ
４０    読み出し専用メモリ（ＲＯＭ）
４１    ブートコード
４２    システムプロセッサ
４４    プロセッサバス
４６    システムメモリ
４８    ホストブリッジ
５０    ＰＣＩローカルバス
５２    ローカルＰＣＩコントローラ
５４    メモリバス
５６    不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）
６２    ＩＳＡバス
６４    ＩＳＡブリッジ
６６    ネットワークアダプタ
７０    入力／出力コントローラ
７２    ディスクコントローラ
１００    コンピュータシステム
２００    ディスクドライブ
３００    ハードウェア層
３０２    仮想マシンモニタ層
３０４，３０６    仮想マシン
【図１】
2014026669.tif 000003
【図２】
2014026669.tif 000004
【図３】
2014026669.tif 000005
【図４】
2014026669.tif 000006