JP5307706B2 - オペレーティングシステムの段階的ブート処理 - Google Patents

オペレーティングシステムの段階的ブート処理 Download PDF

Info

Publication number
JP5307706B2
JP5307706B2 JP2009509586A JP2009509586A JP5307706B2 JP 5307706 B2 JP5307706 B2 JP 5307706B2 JP 2009509586 A JP2009509586 A JP 2009509586A JP 2009509586 A JP2009509586 A JP 2009509586A JP 5307706 B2 JP5307706 B2 JP 5307706B2
Authority
JP
Japan
Prior art keywords
operating system
image
boot
computer
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009509586A
Other languages
English (en)
Other versions
JP2009536399A5 (ja
JP2009536399A (ja
Inventor
ビー.アッザレーロ パトリック
エー.イングル アニル
エー.プレッチャー リチャード
サイエド サード
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2009536399A publication Critical patent/JP2009536399A/ja
Publication of JP2009536399A5 publication Critical patent/JP2009536399A5/ja
Application granted granted Critical
Publication of JP5307706B2 publication Critical patent/JP5307706B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、オペレーティングシステムの段階的ブート処理に関する。
記憶装置は組み込みシステム上の貴重な資源である。多くの組み込み装置がハードドライブを含まないのは、それらが高価であって多く場合に最初に故障する主要なコンポーネントであるからである。また、ハードドライブの交換は、新しいドライブにイメージを保存するコストのみならず分解や装置毎に必要な再構成に起因して費用のかかるものである。かかる理由によって、多くの組み込み装置はネットワーク経由ブートメカニズムによってブート処理を行うことが要求される。
インテルプレブート実行環境(PXE: Intel Pre-Boot Execution Environment)標準が通常用いられるが、これが有するネットワークプラットフォーム及び認証サポートは非常に限定されたものである。
本概要は、単純化された形式で一連の概念を紹介するために用意されたものであって、以降の詳細な説明においてさらに説明される。本概要は、特許請求の範囲の鍵となる特徴すなわち本質的な特徴を識別することが意図されないのみならず、特許請求の範囲の範囲確定を助けるために用いられることも意図されない。
コンピュータ装置が別々のオペレーティングシステムイメージを使用してオペレーティングシステムをアセンブル処理し段階的にブート処理する。続いて得られるオペレーティングシステムの各イメージはそれまでの最後のイメージ上に組み込まれ、オペレーティングシステムイメージが結合されたとき、それらは完成したオペレーティングシステムを作出する。第1のブートイメージは、最初に装置に取得され、基本的なネットワークキング能力をサポートするに足りるオペレーティングシステムを含んでいる。一旦第1のブートイメージがダウンロードによって又は装置上のローカル記憶装置から取得されると、この第1のブートイメージはブート処理されネットワーククライアントが開始される。一旦ネットワーククライアントがアクティブ状態になると、当該装置のブート処理の状態がサスペンド状態にされる。これは、クライアントやサーバを、場合によりユーザを、認証する機会を提供し、次いで、第1のブートイメージによって提供された豊富なネットワークプラットフォームを使用して1つ以上の第2のオペレーティングシステムイメージが該装置によってダウンロードされる。これらの第2のオペレーティングシステムイメージは第1のブートイメージに連結され、単一性又は結合性のあるオペレーティングシステムが生成される。これらの第2のオペレーティングシステムイメージの各々は前段階の機能の上に組み込まれる。
図面を参照すると、様々な実施例において同様の符号は同様の要素を表している。特に、図1及びこれと対応する議論は、実施例を実現し得る適切なコンピュータ環境の簡潔な概説を提供することを意図している。
通常、プログラムモジュールは、ルーチン、プログラム、コンポーネント、データ構造、並びに特定のタスクを実行する又は特定の抽象データタイプを実現する他のタイプの構造を含む。他のコンピュータシステム構成が使用されてもよく、かかる構成としてはハンドヘルド型装置、マルチプロセッサシステム、マイクロプロセッサを基礎とするか又はプログラム可能な家庭用電化製品、ミニコンピュータ、メインフレームコンピュータ等を含む。分散コンピューティング環境がまた用いられてもよく、そこでは通信ネットワークを通して連結された遠隔処理装置によってタスクが実行される。分散コンピューティング環境においては、プログラムモジュールはローカル及びリモートメモリ記憶装置の両方に置かれてもよい。
図1を参照すると、様々な実施例において用いられるコンピュータ100の例示的なコンピュータアーキテクチャが、段階的にブート処理されるオペレーティングシステムを含んで開示されている。図1に示されるコンピュータアーキテクチャは、モバイルコンピュータ装置及び/又は従来のコンピュータ装置として構成されてもよい。例えば、コンピュータ100は、スマートフォン(smart phone)、PDA、デスクトップコンピュータ、サーバ、タブレット、ラップトップコンピュータ等として構成されてもよい。コンピュータ装置100は、また、組み込み式コンピュータ装置として構成されてもよい。
図示されるように、コンピュータ100は、中央演算処理ユニット5(“CPU”)、ランダムアクセスメモリ9(“RAM”)及びリードオンリーメモリ11(“ROM”)を含むシステムメモリ7と、これをCPU5に結合するシステムバス12とを含む。システムメモリ7は、不揮発性及び揮発性メモリの任意の組合せであってもよい。起動時にコンピュータ内で要素間の情報転送を助ける基本的ルーチンを含むベーシク・インプットアウトプット・システムがROM11に保存されている。コンピュータ100は、(得られた場合の)第1のブートイメージ26及び1つ以上の第2のオペレーティングシステムイメージ32から成るオペレーティングシステム16を保存する大容量記憶装置14を含んでもよい。
オペレーティングシステム16は段階的にブート処理される。装置100の起動において、第1のブートイメージ26は、装置100上の記憶装置から検索されてもよいし、又はサーバ34からの如きネットワークロケーションからダウンロードされてもよい。例えば、第1のブートイメージ30は、これをダウンロードするのにPXE標準を用いてサーバ34から取得されてもよい。第1のブートイメージは、オペレーティングシステム16の基本的なネットワーク(basic networking)をサポートするのに足りる部分を含む。一旦ダウンロード又は装置上の記憶装置から第1のブートイメージが取得されたならば、第1のブートイメージ26は、装置100上でブート処理され、装置100のためのネットワーキング(networking)を開始する。
一旦装置100上でネットワーククライアントがアクティブ状態となると、装置100のためのブート処理の状態(activity)はサスペンド状態にされ、次いで、1つ以上の第2のオペレーティングシステムイメージ32がサーバ34からダウンロードされる。取得されたオペレーティングシステム16の第2のオペレーティングシステムイメージの各々は、これまでに受信された直近のオペレーティングシステムイメージに組み込まれる。これらの第2のオペレーティングシステムイメージ17は、第1のブートイメージ26に連結され、単一性/結合性のあるオペレーティングシステム16として生成される。1つの実施例において、オペレーティングシステムイメージ(17及び26)は、大容量記憶装置14上で別々のイメージとして保存されるが、装置100上のアプリケーションにとって結合性のある単一のファイルシステムとして現れてもよい(図2及び関連する議論参照)。オペレーティングシステム16は、以前のイメージに各オペレーティングシステムイメージが連結される度に連続してブート処理し続けるように構成されてもよい。変形例として、オペレーティングシステムイメージが任意の組合せで連結され、ブート処理フェーズが継続されてもよい。連続した各オペレーティングシステムイメージは、前のオペレーティングシステムイメージの機能の上に組み込まれる。他の装置が段階的にオペレーティングシステムをブート処理する一方で、当該装置は処理を通して同一のオペレーティングシステムを使用しない。通常、これらのシステムは、BIOS又は第2のオペレーティングシステムにおける重要(critical)な機能を実行して、当該装置の初期ブート処理を行い、次いで、その重要な機能を置換オペレーティングシステムを用いて置き換える。
大容量記憶装置14は、バス12に接続されている大容量記憶装置コントローラ(図示せず)を介してCPU5に接続されている。大容量記憶装置14及びこれに付随するコンピュータ読取可能媒体がコンピュータ100のための不揮発性記憶装置を提供する。本明細書におけるコンピュータ読取可能媒体の記載は、ハードディスク、DVDドライブ又はCD−ROMドライブの如き大容量記憶装置を意味するが、本発明におけるコンピュータ読取可能媒体は、コンピュータ100によってアクセス可能な如何なる媒体であってもよい。
限定ではなく例として、コンピュータ読取可能媒体はコンピュータ記憶媒体及び通信媒体を含んでもよい。コンピュータ記憶媒体は、コンピュータ読取可能命令、データ構造、プログラムモジュール又は他のデータの如き情報の記憶のための何らかの方法及び技術によって実現し得る揮発性、不揮発性、取外し可能及び取外し不可能の媒体であってもよい。コンピュータ記憶媒体は、これらに限定されるものではないが、RAM、ROM、EPROM、EEPROM、フラッシュメモリ若しくは固体素子メモリ技術、CD−ROM、デジタル多用途ディスク(DVD)、又は他の光学記憶、磁気カセット、磁気テープ、磁気ディスク記憶若しくは他の磁気記憶装置、すなわち所望の情報を保存し得ると共にコンピュータ100によってアクセス可能な何らかの他の媒体を含む。
様々な実施例において、コンピュータ100は、インターネットなどのネットワーク18を介してリモートコンピュータへの論理的接続を使用してネットワーク化された環境で動作してもよい。コンピュータ100は、バス12に接続されているネットワークインタフェースユニット20を介してネットワーク18に繋がってもよい。ネットワークインタフェースユニット20は、また、他のタイプのネットワーク及びリモートコンピュータシステムに接続するのに用いられてもよい。この接続は有線接続及び/又は無線接続であってもよい。
以上に概説したように、幾つかのプログラムモジュール及びデータファイルがコンピュータ100のメモリに格納されてもよく、これらはコンピュータ装置の動作を制御するのに適切なオペレーティングシステム16を含む。コンピュータ装置100は、組み込み式オペレーティングシステムのみならず他の組み込み式データ、ファイル及びアプリケーションを含む組み込み式システムであってもよい。
1つの実施例において、全てまたはいくつかのメモリは、FLASHメモリ又は組み込み式システムにとって適切な他のメモリであってもよい。大容量記憶装置14及びRAM9は、また、1つ以上のプログラムモジュールを格納してもよい。
図2は、オペレーティングシステムの段階的ブート処理をサポートする例示的なファイルシステムを示している。図示されるように、ファイルシステム200は、アプリケーション202、ファイルシステムリクエスト204および仮想ファイルシステム230を含む。仮想ファイルシステム230は、ブートドライバ234と基盤(underlying)ファイルシステム232とからなり、基盤ファイルシステム232は第1のイメージ236及び第2のイメージ群238を含む。
付属のボリューム(attached volume)からファイルシステムリクエスト204を介してアプリケーション202がデータの読出又は書込をリクエストしたとき、このリクエストはブートドライバ234によって実行される仮想ファイルシステム230に渡される。
ブートドライバ234は、オペレーティングシステムイメージ(第1のイメージ236及び第2のイメージ群238)が、アプリケーション202などの何らかのアプリケーションにとって、結合性のあるファイルシステムとして見えるようにしている。別々のファイルに独立して保存される各オペレーティングシステムイメージ(第1のイメージ236及び第2のイメージ群238)は、オーバレイ方式でロード処理されて仮想ファイルシステム230内で単一セットのファイルとしてシステムに現れてもよい。このオペレーティングシステムイメージは、基盤ファイルシステム232に格納されても及び/又はブートドライバ234がメモリからオペレーティングシステムに直接アクセスする場合にはRAMに格納されてもよい。
1つの実施例において、完全なオペレーティングシステムのイメージをロード処理するとき、ブートドライバ234は、RAM及び/又は基盤ファイルシステム内にある各オペレーティングシステムイメージをロード処理し、これらオペレーティングシステムイメージを連結する。第1のブートイメージ236と第2のオペレーティングシステムイメージ群238との連結は、オペレーティングシステムが複数ファイルからブート処理されるのを可能とする。1つの実施例において、ブートドライバ234が構成情報を調べて、最初にブート処理されるべき適正なオペレーティングイメージを識別する。この構成情報が利用できないかまたは見つからない場合、ブートドライバ234は基盤ファイルシステム232のルートレベルにあるブートファイルを見つけ出す。上記に議論されたように、第1のイメージ236がネットワーク機能の最小セットを提供することによって、第2のイメージ群238が標準ネットワークプロトコルを用いて取得される。
図3は、段階的に装置をブート処理する場合のフェーズ分割されたタイムラインを示している。図示されるように、このタイムラインは、POST/DHCPフェーズ310、PXEフェーズ320、第1のブートイメージダウンロードフェーズ330、第2のイメージダウンロードフェーズ340および最終ブート処理フェーズ350に分割される。このプロセスの各フェーズは、タスクの基本的説明に沿った特定のイベント及び各フェーズ内で識別されるイベントによってマークされている。
1つの実施例において、当該装置が電源ONされた後に、パワーオンセルフテスト(POST)が動作する。1つの実施例において、パワーオンセルフテストが完了した時、当該装置のネットワークインターフェースカード(NIC)がDHCP発見メッセージを送信して当該装置のIPアドレスを取得する。DHCPリクエストは、PXEブート情報をリクエストするのみならず、PXEサーバのロケーションをもリクエストする。
PXEフェーズ320の間、当該装置は、PXEブート情報をリクエストして受信し、次いで、ネットワークブートストラップ(bootstrap)及びOSローダなどのオペレーティングシステムローダをダウンロードする。他のブート構成データ及び情報が取得されてもよい。例えば、第1のブートイメージのロケーション、又はサーバから第1のブートイメージをダウンロードするか若しくはローカル大容量記憶装置からこれを取得するかの情報が取得されてもよい。上記に議論されたように、第1のブートイメージは当該装置に保存されてもよい。第1のブートイメージが当該装置に保存される場合には、PXEフェーズ320及び第1のブートイメージダウンロードフェーズ330はスキップされてもよい。当該装置が未だ第1のブートイメージを含まない場合には、当該装置はサーバにPXEリクエストを送信する。
1つの実施例において、TFTPが用いられて、PXEブートストラッププログラム(startrom)、オペレーティングシステムローダ(OSローダ)、PXE応答に付随するブート構成データ及び他のファイルがダウンロードされる。一旦これらのコンポーネントがダウンロードされると、当該プロセスは第1のブートイメージダウンロードフェーズ330に移行し、ここでは当該装置はOSローダをロード処理し、1つの実施例ではRAMディスクを作成し、TFTPを用いて第1のブートイメージをダウンロードし、これをRAMディスクに置く。
OSローダは、ブート処理プロセスを開始し、ユニキャスト(TFTP)プロトコルを用いて第1のブートイメージをダウンロードする。一旦ダウンロードがなされると、カーネル、ネットワーククライアント、ドライバ、その他を含む基本オペレーティングシステムコンポーネントが当該装置によってロード処理される。
第1のブートイメージは、完全なオペレーティングシステムがロード処理される前でも、一定の機能を提供する。1つの実施例において、第1のブートイメージのコンポーネントは、RAMディスク管理、マルチキャストクライアント、装置識別アプリケーションおよび状態アプリケーションを含む。第1のブートイメージダウンロードフェーズ330の間、残っているオペレーティングシステムイメージについての定義情報がダウンロードされ、RAMディスクは第2のイメージ群を受け入れるため大きさが変更され、次いで、任意の装置識別/状態パッケージが(効率のためユニキャストプロトコルを使用して)ダウンロードされる。
1つの実施例において、ネイティブマルチキャストクライアントが次いで開始され、リクエストがマルチキャストサーバに送信される。マルチキャストサーバが「ブロードキャスト」していない場合には、適正な第2のイメージ群のブロードキャストを開始する。マルチキャストサーバが既に第2のオペレーティングシステムイメージをブロードキャストしている場合には、マルチキャストサーバはこのクライアントのためリクエストされたイメージを待ち行列に付ける。当該装置は、次いで、マルチキャスト・ブロードキャストに対する「傍受(listen)」を開始し、イメージの定義情報にて指定されたデータを受け入れ、第2のイメージをRAMディスク内に再アセンブル又は処理する。再アセンブリが完了したとき、装置識別及び状態情報が適用され、次いで当該装置のブート処理が再開される。変形例において、オペレーティングシステムイメージがユニキャストプロトコルを用いて取得されてもよい。第2のオペレーティングシステムイメージ群がダウンロードされ、軽く且つ一般的なネットワークオペレーティングシステムから完全構成されたオペレーティングシステム、例えば、米国ワシントン州レドモンドの本件特許出願人によるマイクロソフトウィンドウズ(登録商標)オペレーティングシステムの如きシステムに移行することによって、オペレーティングシステムの機能を強化する。
最終ブート処理フェーズ350において、ブート処理プロセスは、システムのリブート処理を要することなく、ブートストラップ行程内で用いられた同じオペレーティングシステムベースを使用し続ける。
図4を参照すると、オペレーティングシステムを段階的にブート処理する例示的なプロセスが示されている。本明細書において提示されるルーチンの議論を読むとき、(1)コンピュータ実装された動作のシーケンス又はコンピュータシステム上を走るプログラムモジュールとして、及び/又は(2)相互接続された機械論理回路又はコンピュータシステム内の回路モジュールとして、多様な例の論理的処理が実現されることが認識されるべきである。かかる実現はコンピュータシステムの性能要求仕様に依存した選択事項である。従って、本明細書で説明された実施例を作り上げる例示の論理的処理は、処理、構造化されたデバイス、動作又はモジュールの如き多様なものに対応される。これら処理、構造化されたデバイス、動作又はモジュールは、ソフトウェア、ファームウェア、目的特化ディジタルロジック又はそれらの任意の組合せによって実現されてもよい。
図4は、オペレーティングシステムを段階的にブート処理するプロセス400を示している。開始処理の後、プロセスはステップ405へ移行し、ここでは第1のブートイメージが取得される。判定ステップ410は、第1のブートイメージがディスクに保存されているか否か、又は第1のブートイメージがネットワークロケーションに保存されているか否かを判定する。
第1のブートイメージがディスクに又は当該装置の他のメモリロケーション内に保存されている場合には、プロセスはステップ420に移行し、第1のブートイメージが当該装置から取得される。
第1のブートイメージがネットワークロケーションに保存されている場合には、プロセスはステップ415へ移行し、第1のブートイメージがネットワークロケーションから取得される。上記に議論されたように、第1のブートイメージは、当該装置上でネットワーククライアントのインスタンスを生成するに足りるネットワーク能力を備える。一旦第1のブートイメージが取得されると、ステップ425においてブート処理プロセスが開始される。
当該装置の初期ブート処理の間、ステップ430においてネットワーククライアントがロード処理される。一旦ネットワーククライアントがロード処理されると、ステップ435において当該装置のためのブート処理プロセスが中断される。プロセスは、認証ステップ438へ移行して、クライアント、サーバ及びユーザのうちの1つ以上を認証する機会を提供してもよい。上記のうちの1つに対する認証失敗はブート処理プロセスを終了させてもよい。当該装置が認証された場合には、ブート処理プロセスはステップ440に進み、1つ以上の第2のオペレーティングシステムイメージが取得されてもよい。第2のイメージ群はオペレーティングシステムにさらに多くの機能を提供する。ネットワーククライアントは、第2のイメージ群をダウンロードするためのみならず、マルチキャストサポートを提供するための機密プロトコルを使用してもよい。
ステップ445に移行し、最も直近に取得された第2のオペレーティングシステムイメージが前のイメージに連結される。最初の第2のオペレーティングシステムイメージが取得された場合には、第1のブートイメージに連結される。このイメージの連結は、図2に関連して議論されたように、単一のオペレーティングシステムの論理的イメージを生成する。
判定ステップ450に移行し、取得されたさらなる第2のオペレーティングシステムイメージがあるか否かの判定がなされる。オペレーティングシステムは、任意の数の第2のオペレーティングシステムイメージを含んでもよい。例えば、1つの完全なオペレーティングシステムは2つの第2のオペレーティングシステムイメージを含んでもよい一方で、1つの完全なオペレーティングシステムが3つ以上の第2のオペレーティングシステムイメージを含んでもよい。
ロード処理及び連結されるべき第2のオペレーティングシステムイメージがもはや無い場合には、プロセスはステップ455に移り、新たに連結されたオペレーティングシステムイメージの機能が加えるようにしてブート処理が継続される。第2のオペレーティングシステムイメージの全てが取得された後にステップ455が示されているが、変形例として各第2のイメージが得られる度にブート処理プロセスが継続されてもよい。プロセスは次いで終了処理に移り、他の動作の処理に戻る。
上記の明細書、実施例及びデータは、本発明の組成物の製造及び使用の完全な説明を提供する。本発明の多くの実施例が、本発明の思想及び範囲から逸脱することなくなされ得るものであって、本発明の内容は添付の請求項の記載にある。
段階的にブート処理されるオペレーティングシステムを含む例示的なコンピューティングアーキテクチャを示すブロック図である。 オペレーティングシステムの段階的なブート処理をサポートするよう構成される例示的なファイルシステムのブロック図である。 段階的に装置をブート処理するフェーズ分割されたタイムラインを示す図である。 オペレーティングシステムを段階的にブート処理する方法を示すフローチャートである。

Claims (17)

  1. オペレーティングシステムをコンピュータ装置上で段階的にブート処理する方法であって、
    ネットワーククライアントおよびドライバを含む第1のブートイメージを取得するステップと、
    前記第1のブートイメージを用いて前記ブート処理を開始し、前記ネットワーククライアントをロード処理するステップと、
    前記コンピュータ装置の前記ブート処理を中断し、認証処理を実行するステップと、
    前記コンピュータ装置が認証された場合に、前記ドライバが、第2のオペレーティングシステムイメージを受け入れるためのRAMディスクを確保し、前記ネットワーククライアントが、マルチキャストサーバにリクエストを送信して、前記マルチキャストサーバから前記第2のオペレーティングシステムイメージを取得するステップと、
    前記RAMディスク内で、前記第2のオペレーティングシステムイメージを再アセンブルして、前記第2のオペレーティングシステムイメージを前記第1のブートイメージに連結するステップと、
    前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージを含む前記オペレーティングシステムによりブート処理を継続するステップと
    を備えたことを特徴とする方法。
  2. 前記第1のブートイメージを取得するステップは、前記第1のブートイメージを、前記コンピュータ装置上の記憶装置とネットワークロケーションとの何れかから取得するステップを含むことを特徴とする請求項1に記載の方法。
  3. 前記第2のオペレーティングシステムイメージを取得するステップは、前記ネットワーククライアントを用いて前記第2のオペレーティングシステムイメージをネットワークロケーションから取得することを特徴とする請求項1に記載の方法。
  4. 前記第1のブートイメージを前記ネットワークロケーションから取得するステップは、インテルプレブート実行環境(PXE)標準を用いるステップを含むことを特徴とする請求項2に記載の方法。
  5. 前記第2のオペレーティングシステムイメージが前記第1のブートイメージに連結された場合に、前記ブート処理を継続するステップをさらに含むことを特徴とする請求項1に記載の方法。
  6. 前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージは、前記コンピュータ装置上で別々のファイルとして基盤ファイルシステムに保持されていることを特徴とする請求項5に記載の方法。
  7. 前記ネットワーククライアントを用いて前記第2のオペレーティングシステムイメージを取得するステップは、マルチキャストプロトコルを用いるステップを含むことを特徴とする請求項6に記載の方法。
  8. オペレーティングシステムを段階的にブート処理するコンピュータ装置であって、
    プロセッサと、
    コンピュータ読取可能な記録媒体と、
    ネットワークインタフェースユニットと、
    前記コンピュータ読取可能な記録媒体に格納されたオペレーティング環境であって、前記プロセッサ上で実行され、前記ネットワークインタフェースユニットとのインタフェースを備えるネットワーククライントおよびドライバを含む第1のブートイメージを取得するように構成されたオペレーティング環境とを備え、
    前記オペレーティング環境は、前記第1のブートイメージを用いて前記ブート処理を開始し、前記ネットワーククライアントがロード処理されると、前記ブート処理を中断して認証処理を実行し、前記コンピュータ装置が認証された場合に、前記ドライバが、第2のオペレーティングシステムイメージを受け入れるためのRAMディスクを確保し、前記ネットワーククライアントが、マルチキャストサーバにリクエストを送信して、前記マルチキャストサーバから前記第2のオペレーティングシステムイメージをダウンロードするよう構成され、
    前記オペレーティング環境は、前記RAMディスク内で、前記第2のオペレーティングシステムイメージを再アセンブルして、前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージを連結し、前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージを含む前記オペレーティングシステムによりブート処理を継続するよう構成されていることを特徴とするコンピュータ装置。
  9. 前記オペレーティング環境は、前記第1のブートイメージを前記ネットワークインタフェースユニットを用いてネットワークロケーションから取得するように構成されることを特徴とする請求項8に記載のコンピュータ装置。
  10. 前記第1のブートイメージの前記ネットワークロケーションからの取得は、前記ネットワークインタフェースユニットにおいてインテルプレブート実行環境(PXE)標準を用いることを特徴とする請求項9に記載のコンピュータ装置。
  11. 前記第2のオペレーティングシステムイメージを前記第1のブートイメージに連結する手段をさらに含むことを特徴とする請求項8に記載のコンピュータ装置。
  12. 前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージと相互作用するように構成されるブートドライバをさらに含むことを特徴とする請求項11に記載のコンピュータ装置。
  13. 前記第2のオペレーティングシステムイメージの前記ネットワークからの取得は、マルチキャストプロトコルを用いることを特徴とする請求項12記載のコンピュータ装置。
  14. オペレーティングシステムをコンピュータ装置上で段階的にブート処理するためのコンピュータ実行可能命令を含むコンピュータ読取可能な記録媒体であって、前記コンピュータ実行可能命令は、
    ネットワーククライアントおよびドライバを含む第1のブートイメージをダウンロードするステップと、
    前記第1のブートイメージを用いて前記ブート処理を開始するステップと、
    前記ネットワーククライントをロード処理するステップと、
    前記コンピュータ装置の前記ブート処理を中断し、認証処理を実行するステップと、
    前記コンピュータ装置が認証された場合に、前記ドライバが、第2のオペレーティングシステムイメージを受け入れるためのRAMディスクを確保し、前記ネットワーククライアントが、マルチキャストサーバにリクエストを送信して、前記マルチキャストサーバから前記第2のオペレーティングシステムイメージをダウンロードするステップと、
    前記RAMディスク内で、前記第2のオペレーティングシステムイメージを再アセンブルして、前記第1のブートイメージを前記第2のオペレーティングシステムイメージに連結するステップと、
    前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージを含む前記オペレーティングシステムによりブート処理を継続するステップと、
    を含むことを特徴とするコンピュータ読取可能な記録媒体。
  15. 前記第1のブートイメージを、前記コンピュータ装置上の記憶装置とネットワークロケーションとのうちの何れかから取得するステップをさらに含むことを特徴とする請求項14に記載のコンピュータ読取可能な記録媒体。
  16. 前記第1のブートイメージ及び前記第2のオペレーティングシステムイメージは、前記コンピュータ装置上で別々のファイルとして保持されるが、アプリケーションからは単一のファイルシステムとして見えることを特徴とする請求項15に記載のコンピュータ読取可能な記録媒体。
  17. 前記第1のブートイメージを取得するステップではユニキャストプロトコルを用い、前記第2のブートイメージを取得するステップではマルチキャストプロトコルを用いることを特徴とする請求項16記載のコンピュータ読取可能な記録媒体。
JP2009509586A 2006-05-05 2007-04-17 オペレーティングシステムの段階的ブート処理 Expired - Fee Related JP5307706B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/418,761 US7673131B2 (en) 2006-05-05 2006-05-05 Booting an operating system in discrete stages
US11/418,761 2006-05-05
PCT/US2007/009330 WO2007130267A1 (en) 2006-05-05 2007-04-17 Booting an operating system in discrete stages

Publications (3)

Publication Number Publication Date
JP2009536399A JP2009536399A (ja) 2009-10-08
JP2009536399A5 JP2009536399A5 (ja) 2010-04-02
JP5307706B2 true JP5307706B2 (ja) 2013-10-02

Family

ID=38662486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009509586A Expired - Fee Related JP5307706B2 (ja) 2006-05-05 2007-04-17 オペレーティングシステムの段階的ブート処理

Country Status (9)

Country Link
US (1) US7673131B2 (ja)
EP (1) EP2021940B1 (ja)
JP (1) JP5307706B2 (ja)
KR (1) KR101365904B1 (ja)
CN (1) CN101438266B (ja)
BR (1) BRPI0710288A2 (ja)
ES (1) ES2699712T3 (ja)
RU (1) RU2439678C2 (ja)
WO (1) WO2007130267A1 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7624260B2 (en) * 2006-05-04 2009-11-24 Qnx Software Systems Gmbh & Co. Kg System executing a fast boot wake-up
US20070266231A1 (en) * 2006-05-15 2007-11-15 Huey-Tyug Chua Portable Electronic Device and Method for Loading Resource Data of the Portable Electronic Device
JP4366698B2 (ja) * 2006-07-27 2009-11-18 日本電気株式会社 計算機、計算機システム、及びディスクイメージ配布方法
US8312449B2 (en) * 2006-10-31 2012-11-13 International Business Machines Corporation Viral installation of operating systems in a network
US7941599B2 (en) * 2007-03-23 2011-05-10 Kace Networks, Inc. IT automation appliance imaging system and method
US8065510B2 (en) * 2007-07-30 2011-11-22 Hewlet-Packard Development Company, L.P. System and methods of retrieving firmware between network locations
US9003173B2 (en) * 2007-09-28 2015-04-07 Microsoft Technology Licensing, Llc Multi-OS (operating system) boot via mobile device
US8220041B2 (en) 2007-12-13 2012-07-10 Trend Micro Incorporated Method and system for protecting a computer system during boot operation
JP4384243B1 (ja) * 2008-06-30 2009-12-16 株式会社東芝 情報処理装置および起動方法
US8041793B2 (en) * 2008-09-24 2011-10-18 Dell Products L.P. Boot image discovery and delivery system
WO2010045262A1 (en) 2008-10-14 2010-04-22 Wanova Technologies, Ltd. Storage-network de-duplication
GB0818918D0 (en) * 2008-10-15 2008-11-19 Icera Inc Boot algorithm
CN101827163B (zh) * 2009-03-04 2013-07-03 深圳富泰宏精密工业有限公司 手机资源数据动态加载系统及方法
US8301874B1 (en) * 2009-10-20 2012-10-30 Wanova Technologies, Ltd. Atomic switching of images in desktop streaming over wide area networks
US10394570B2 (en) 2010-02-26 2019-08-27 Hp Printing Korea Co., Ltd. Method of generating boot image for fast booting and image forming apparatus for performing the method, and method of performing fast booting and image forming apparatus for performing the method
KR101636870B1 (ko) * 2010-02-26 2016-07-06 삼성전자주식회사 최소 부트 이미지의 생성 방법 및 장치
US8452952B2 (en) * 2010-10-20 2013-05-28 Wyse Technology Inc. Methods and apparatus for building system images and split booting
US9411604B2 (en) * 2011-04-01 2016-08-09 Hewlett-Packard Development Company, L.P. Booting a computing device to have a predefined functionality
EP2798486B1 (en) 2011-12-29 2019-11-06 VMware, Inc. N-way synchronization of desktop images
CA2773095C (en) * 2012-03-27 2014-12-02 Yin Sheng Zhang Computer with flexible operating system
TWI592808B (zh) * 2012-08-17 2017-07-21 High-speed automated cluster system deployment using virtual disks
KR101959359B1 (ko) 2012-11-06 2019-03-18 에이치피프린팅코리아 유한회사 빠른 부팅을 위한 부트 이미지를 업데이트하는 방법 및 이를 수행하는 화상형성장치
KR101990868B1 (ko) * 2013-02-05 2019-06-19 주식회사 알티캐스트 방송 서비스 보안 모듈 다운로드 제어 방법 및 장치
US10656800B2 (en) 2013-03-29 2020-05-19 Microsoft Technology Licensing, Llc Visual configuration and activation
US10452222B2 (en) 2013-05-29 2019-10-22 Microsoft Technology Licensing, Llc Coordination of system readiness tasks
US9813485B2 (en) * 2013-06-14 2017-11-07 1E Limited Communication of virtual machine data
EP2997467A1 (en) * 2013-06-14 2016-03-23 Huawei Technologies Co., Ltd. Bootstrapping from a remote disk image via a network
US9141373B2 (en) * 2013-07-31 2015-09-22 Arista Networks, Inc. System and method for accelerated software upgrades
US9189345B1 (en) * 2013-09-25 2015-11-17 Emc Corporation Method to perform instant restore of physical machines
KR102116096B1 (ko) * 2013-12-20 2020-05-27 한화테크윈 주식회사 다중시스템 및 이의 부팅 방법
FR3019336B1 (fr) * 2014-03-25 2016-03-25 Bull Sas Procede et dispositif de controle du changement de systeme d'exploitation dans des nœuds de service d'un calculateur haute performance
US9921819B2 (en) 2014-12-29 2018-03-20 Airwatch Llc Persistent mobile device enrollment
US10102008B2 (en) * 2015-09-02 2018-10-16 Dell Products L.P. Managed boot process system
WO2017062479A1 (en) * 2015-10-06 2017-04-13 Xilinx, Inc. Multistage boot image loading and configuration of programmable logic devices
US9864605B2 (en) 2015-11-03 2018-01-09 Xilinx, Inc. Multistage boot image loading by configuration of a bus interface
CN110192191B (zh) * 2017-03-21 2023-06-20 惠普发展公司,有限责任合伙企业 操作系统取回
US10740109B2 (en) * 2017-03-22 2020-08-11 Vmware, Inc. Configuring a computing device using managed operating system images
US10635819B2 (en) * 2017-03-22 2020-04-28 Vmware, Inc. Persistent enrollment of a computing device based on a temporary user
US10409619B2 (en) 2017-03-22 2019-09-10 Vmware, Inc. Persistent enrollment of a computing device using vendor autodsicovery
US10445106B2 (en) 2017-03-22 2019-10-15 Vmware, Inc. Persistent enrollment of a computing device using a BIOS
US10620965B2 (en) 2017-03-22 2020-04-14 Vmware, Inc. Internet recovery of a windows configuration
US10838739B2 (en) 2018-04-19 2020-11-17 Circle Media Labs Inc. Network-connected computing devices and methods for executing operating programs in RAM memory
US10838736B2 (en) * 2018-07-26 2020-11-17 Vmware, Inc. Bare metal device management
US10841160B2 (en) 2018-11-08 2020-11-17 Arista Networks, Inc. System and method for processing messages during a reboot of a network device
US11765024B2 (en) * 2020-04-24 2023-09-19 Hewlett Packard Enterprise Development Lp Automatic provisioning of a computing device with operating system and network processing functions

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5367688A (en) * 1987-09-04 1994-11-22 Digital Equipment Corporation Boot system for distributed digital data processing system
US6678712B1 (en) * 1996-01-19 2004-01-13 International Business Machines Corporation Method and system for executing a program under one of a plurality of mutually exclusive operating environments
US6128734A (en) * 1997-01-17 2000-10-03 Advanced Micro Devices, Inc. Installing operating systems changes on a computer system
GB2334354B (en) * 1998-02-13 2003-04-16 Ibm Booting a computer system from a network
US6421777B1 (en) * 1999-04-26 2002-07-16 International Business Machines Corporation Method and apparatus for managing boot images in a distributed data processing system
US6687820B2 (en) * 2000-12-07 2004-02-03 International Business Machines Corporation System includes a selection manager for remotely managing the selection of an operating system for a target computer
US6810478B1 (en) * 2000-12-12 2004-10-26 International Business Machines Corporation System for remote booting of muntliple operating systems using chained bootstrap mechanism in a network
US6961941B1 (en) * 2001-06-08 2005-11-01 Vmware, Inc. Computer configuration for resource management in systems including a virtual machine
US6941518B2 (en) * 2001-06-29 2005-09-06 International Business Machines Corporation Method and system for booting of a target device in a network environment based on a provided administrator topology GUI
EP1274009A3 (en) * 2001-07-03 2003-12-03 Hewlett-Packard Company System and method to enable a legacy BIOS system to boot from a disk that includes EFI GPT partitions
JP2003216431A (ja) * 2002-01-18 2003-07-31 Cec:Kk Icカードのオペレーティングシステム更新システムおよび当該システムに使用するicカード
US7299354B2 (en) * 2003-09-30 2007-11-20 Intel Corporation Method to authenticate clients and hosts to provide secure network boot
US8230095B2 (en) * 2004-05-07 2012-07-24 Wyse Technology, Inc. System and method for integrated on-demand delivery of operating system and applications
JP2006053615A (ja) * 2004-08-09 2006-02-23 Ricoh Co Ltd プリンタシステム、及びプリンタ装置

Also Published As

Publication number Publication date
EP2021940A1 (en) 2009-02-11
WO2007130267A1 (en) 2007-11-15
EP2021940A4 (en) 2010-09-01
US20070260868A1 (en) 2007-11-08
ES2699712T3 (es) 2019-02-12
KR101365904B1 (ko) 2014-02-21
KR20090007575A (ko) 2009-01-19
CN101438266B (zh) 2012-10-10
CN101438266A (zh) 2009-05-20
RU2008143215A (ru) 2010-05-10
BRPI0710288A2 (pt) 2011-08-09
US7673131B2 (en) 2010-03-02
EP2021940B1 (en) 2018-09-05
JP2009536399A (ja) 2009-10-08
RU2439678C2 (ru) 2012-01-10

Similar Documents

Publication Publication Date Title
JP5307706B2 (ja) オペレーティングシステムの段階的ブート処理
US7243224B2 (en) Preboot execution bootloading
US9507604B2 (en) Boot method and boot system
US7631173B2 (en) Method and system for performing pre-boot operations from an external memory including memory address and geometry
US6993642B2 (en) Method and system for creating and employing an operating system having selected functionality
US8041793B2 (en) Boot image discovery and delivery system
JP3759001B2 (ja) ネットワーク・ブートを指定変更する方法
JP6228177B2 (ja) コンピュータシステムにおけるオペレーティングシステムの通信ネットワーク経由でのロードおよびブートを最適化するための方法、コンピュータプログラム、および装置
US9547500B2 (en) Customizing program logic for booting a system
US7650490B2 (en) Embedded device for implementing a boot process on a host
US20040255106A1 (en) Recovery of operating system configuration data by firmware of computer system
US7356685B2 (en) System and method for enabling automated run-time input to network bootstrapping processes
CN109840096B (zh) 操作系统的安装方法及装置
US10185575B2 (en) Computing device for operating a machine session with persistent read cache and non-persistent write cache and related methods
US11030047B2 (en) Information handling system and method to restore system firmware to a selected restore point
US7240190B2 (en) Resource compatible system for computer system reads compressed filed stored in legacy BIOS and decompresses file using legacy support operating system driver
JP2011150431A (ja) ネットワークコントローラの制御方法、プログラム及び情報処理装置
JP2009211640A (ja) 無線lanを使用したネットワークブート方法およびネットワークブート用端末
JP2009230433A (ja) ネットワークブート装置、プログラム及び方法
WO2019100704A1 (zh) 用于多模IoT设备的启动方法、多模IoT设备及存储介质
JP3732764B2 (ja) Os立上げ方法およびos立上げシステム
CN118138453A (zh) 设备配置方法及其装置、存储介质和电子设备
CN117707551A (zh) 一种目标软件包的安装方法及装置
JP5604904B2 (ja) 組込み機器及びipアドレス取得管理方法
TW202024904A (zh) 於預執行環境依裝置訊息選擇開機映像檔之裝置及方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100205

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120914

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121213

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20130123

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20130124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130501

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130528

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130627

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5307706

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees