特許第5657799号(P5657799)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インテル コーポレイションの特許一覧

特許5657799コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法
<>
  • 特許5657799-コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法 図000002
  • 特許5657799-コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法 図000003
  • 特許5657799-コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法 図000004
  • 特許5657799-コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法 図000005
  • 特許5657799-コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法 図000006
  • 特許5657799-コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5657799
(24)【登録日】2014年12月5日
(45)【発行日】2015年1月21日
(54)【発明の名称】コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法
(51)【国際特許分類】
   G06F 13/12 20060101AFI20141225BHJP
   G06F 9/445 20060101ALI20141225BHJP
【FI】
   G06F13/12 340C
   G06F9/06 610K
【請求項の数】20
【全頁数】14
(21)【出願番号】特願2013-529451(P2013-529451)
(86)(22)【出願日】2011年9月26日
(65)【公表番号】特表2013-539878(P2013-539878A)
(43)【公表日】2013年10月28日
(86)【国際出願番号】US2011053225
(87)【国際公開番号】WO2012040694
(87)【国際公開日】20120329
【審査請求日】2013年3月13日
(31)【優先権主張番号】12/889,583
(32)【優先日】2010年9月24日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】593096712
【氏名又は名称】インテル コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100091214
【弁理士】
【氏名又は名称】大貫 進介
(72)【発明者】
【氏名】ベイリー,アブドゥル,エム.
(72)【発明者】
【氏名】ターン,ディー
(72)【発明者】
【氏名】カーンナ,ラフール
(72)【発明者】
【氏名】ジンマー,ヴィンセント,ジェイ.
(72)【発明者】
【氏名】リー,ケヴィン,ワイ.
(72)【発明者】
【氏名】エドワーズ,ジェイムズ,ダブリュー.
【審査官】 稲葉 崇
(56)【参考文献】
【文献】 特開2007−328534(JP,A)
【文献】 特開2009−211640(JP,A)
【文献】 特開2010−123125(JP,A)
【文献】 特開2010−073193(JP,A)
【文献】 特開2005−218046(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/10−13/14
G06F 9/06,9/44−9/48
G06F 11/00,11/36
(57)【特許請求の範囲】
【請求項1】
統一拡張ファームウェアインターフェースとコンピュータデバイスの無線トランシーバとの間の通信インターフェースを前記コンピュータデバイスのプレブートフェーズ中に構築するステップと;
前記コンピュータデバイスの帯域内プロセッサと異なる前記コンピュータデバイスの帯域外(OOB)プロセッサを用いて、前記統一拡張ファームウェアインターフェースと前記無線トランシーバとの間のデータ通信を、前記プレブートフェーズ中に処理するステップであって、前記OOBプロセッサは、前記帯域内プロセッサの動作状態に関係なく、前記無線トランシーバを利用して無線ネットワークを介し通信するよう構成される、処理するステップと、を含む、
方法。
【請求項2】
前記通信インターフェースを構築するステップは、前記OOBプロセッサのユニバーサル非同期型レシーバ/トランスミッタ(UART)デバイスのためのシリアル通信ドライバをロードして前記統一拡張ファームウェアと前記OOBプロセッサとの間のシリアル通信を実現するステップ、請求項1記載の方法。
【請求項3】
前記通信インターフェースを構築するステップは、前記プレブートフェーズのドライバ実行環境(DXE)フェーズ中、前記通信インターフェースを構築するステップを含む、請求項1記載の方法。
【請求項4】
データ通信を処理するステップは:
有線通信規格に従ってフォーマットされたデータ通信を前記統一拡張ファームウェアインターフェースから受信するステップと;
無線通信規格に従って前記データ通信を再フォーマットするステップと;
前記無線通信規格に従ってフォーマットされた前記データ通信を前記無線トランシーバに供給するステップと、を含む、
請求項1記載の方法。
【請求項5】
データ通信を処理するステップは:
無線通信規格に従ってフォーマットされたデータ通信を前記無線トランシーバから受信するステップと;
有線通信規格に従って前記データ通信を再フォーマットするステップと;
前記有線通信規格でフォーマットされた前記データ通信を前記統一拡張ファームウェアインターフェースに供給するステップと、を含む、
請求項1記載の方法。
【請求項6】
データ通信を処理するステップは、前記統一拡張ファームウェアインターフェースから前記OOBプロセッサのシリアルハードウェアインターフェースとのデータ通信を受信するステップを含む、請求項1記載の方法。
【請求項7】
前記データ通信を受信するステップは、周辺コンポーネント相互接続(PCI)バスを介して前記OOBプロセッサとの前記データ通信を受信するステップを含む、請求項6記載の方法。
【請求項8】
前記データ通信を受信するステップは、前記OOBプロセッサのユニバーサル非同期型レシーバ/トランスミッタ(UART)デバイスとのデータ通信を、前記統一拡張ファームウェアインターフェースから受信するステップを含む、請求項6記載の方法。
【請求項9】
前記コンピュータデバイスが前記無線トランシーバを含んでいるかどうかを判定するステップを更に含み、
前記通信インターフェースを構築するステップは、前記無線トランシーバを含む前記コンピュータデバイスに応答して、前記統一拡張ファームウェアインターフェースと前記無線トランシーバとの間の通信を構築するステップを含む、
請求項1記載の方法。
【請求項10】
前記コンピュータデバイス上でオペレーティングシステムをロードする前に、前記通信インターフェースを除去するステップを更に含む、請求項1記載の方法。
【請求項11】
複数の命令を含む非一時的な機械可読媒体であって、前記複数の命令は、実行されることに応じて、コンピュータデバイスに:
統一拡張ファームウェアインターフェースと無線トランシーバとの間の通信インターフェースを前記コンピュータデバイスのプレブートフェーズ中に構築するステップと;
前記コンピュータデバイスの帯域内プロセッサと異なる前記コンピュータデバイスの帯域外(OOB)プロセッサを用いて、前記統一拡張ファームウェアインターフェースと前記無線トランシーバとの間のデータ通信を、前記プレブートフェーズ中に処理するステップであって、前記OOBプロセッサは、前記帯域内プロセッサの動作状態に関係なく、前記無線トランシーバを利用して無線ネットワークを介し通信するよう構成される、処理するステップ
実行させる、非一時的な機械可読媒体。
【請求項12】
前記通信インターフェースを構築するステップは、前記OOBプロセッサのユニバーサル非同期型レシーバ/トランスミッタ(UART)デバイスのためのシリアル通信ドライバをロードして、前記統一拡張ファームウェアと前記OOBプロセッサとの間のシリアル通信を実現する、ステップを含む、請求項11記載の非一時的な機械可読媒体。
【請求項13】
前記複数の命令は、前記コンピュータデバイスに:
無線通信規格に従ってフォーマットされたデータ通信を前記無線トランシーバから受信するステップと;
有線通信規格に従って前記データ通信を再フォーマットするステップと;
前記有線通信規格に従ってフォーマットされた前記データ通信を前記統一拡張ファームウェアインターフェースに供給するステップと、
を更に生じる、請求項11記載の非一時的な機械可読媒体。
【請求項14】
データ通信を処理するステップは、前記統一拡張ファームウェアインターフェースから前記OOBプロセッサのシリアルインターフェースとのデータ通信を受信するステップを含む、請求項11記載の非一時的な機械可読媒体。
【請求項15】
前記データ通信を受信するステップは、周辺コンポーネント相互接続(PCT)バスを介して前記OOBプロセッサとの前記データ通信を受信するステップを含む、請求項11記載の非一時的な機械可読媒体。
【請求項16】
前記データ通信を受信するステップは、前記統一拡張ファームウェアインターフェースから前記OOBプロセッサのユニバーサル非同期型レシーバ/トランスミッタ(UART)デバイスとのデータ通信を受信するステップを含む、請求項15記載の非一時的な機械可読媒体。
【請求項17】
コンピュータデバイスであって、該コンピュータデバイスは:
帯域内プロセッサと;
無線トランシーバと;
前記帯域内プロセッサの動作状態に関係なく、前記無線トランシーバを用いて、無線ネットワークを介して通信するように構成された帯域外(OOB)プロセッサと、を含み、該OOBプロセッサは:
前記コンピュータデバイス上の前記帯域内プロセッサのプレブートフェーズ中、前記コンピュータデバイス上で実行される統一拡張ファームウェアインターフェースと前記無線トランシーバとの間の通信インターフェースを構築し
前記プレブートフェーズ中、前記統一拡張ファームウェアインターフェースと前記無線トランシーバとの間のデータ通信を処理するように構成される、
コンピュータデバイス。
【請求項18】
前記通信インターフェースを構築することには、ユニバーサル非同期型レシーバ/トランスミッタ(UART)ドライバをロードして前記統一拡張ファームウェアと前記OOBプロセッサとの間のシリアル通信を実現することを含む、請求項17記載のコンピュータデバイス。
【請求項19】
前記データ通信を処理することには:
有線通信規格に従ってフォーマットされたデータ通信を前記統一拡張ファームウェアインターフェースから受信し;
前記データ通信を無線通信規格に従って再フォーマットし;そして、
前記無線規格に従ってフォーマットされた前記データ通信を前記無線トランシーバに供給すること、を含む、
請求項17記載のコンピュータデバイス。
【請求項20】
前記データ通信を処理することには:
無線通信規格に従ってフォーマットされたデータ通信を、前記無線トランシーバから受信し;
前記データ通信を有線通信規格に従って再フォーマットし;そして、
前記有線通信規格に従ってフォーマットされた前記データ通信を前記統一拡張ファームウェアインターフェースに供給すること、を含む、
請求項17記載のコンピュータデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ装置のプレブートフェーズ中の無線通信を容易にするシステム及び方法に関する。
【背景技術】
【0002】
多数のコンピュータ装置が、そのコンピュータ装置上で実行するオペレーティングシステム(OS)とそのコンピュータ装置のプラットフォームファームウェアとの間のソフトウェアインターフェースを利用している。そうしたソフトウェアインターフェースの一例は統一拡張ファームウェアインターフェース(ユニファイド・エクステンシブル・ファームウェア・インターフェース:UEFI)であり、それは2009年5月8日発行のUEFI仕様書第2.3版によって定義される。そのUEFI仕様書によって定義されるインターフェースは、プラットフォーム情報、ブート及びランタイムサービスを含むデータテーブルを含み、オペレーティングシステム・ローダとオペレーティングシステムとに利用可能である。そのUEFIはブートサービスを定義し、そのブートサービスは、各種のデバイス、バス、ブロック、及び、ファイルサービス、及び、ランタイムサービスに関するテキスト及びグラフィックコンソールサポートを含み、例えば、日付や時間やNVRAMサービスを含む。そのUEFI環境はオペレーシングシステムのローディングの前に構築される。
【0003】
UEFI仕様書は、現在、コンピュータ装置のプレブートフェーズ(即ち、オペレーティングシステムのブートの前)の間で有線通信をサポートしている。しかしながら、UEFI仕様書は、ワイヤレスアダプタのためのデバイスドライバを構築するため一般的なフレームワークをサポートするにもかかわらず、UEFI仕様書は、現在のところ、現在のワイヤレス技術の多くをサポートする総合的なワイヤレス通信スタックを欠いている。従って、コンピュータ装置のプレブートフェーズの間でワイヤレス通信の利用可能性は限定されている。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明の目的は、上記の問題を解決し、コンピュータ装置のプレブートフェーズの間でワイヤレス通信の利用可能性を高めることである。
【課題を解決するための手段】
【0005】
本発明の一側面によれば、コンピュータ装置のプレブートフェーズの間、無線通信を容易にするシステムが提供され、コンピュータ装置上で実行される統合拡張ファームウェアインターフェースとコンピュータ装置の無線トランシーバとの間に、コンピュータ装置のプレブートフェーズ中、通信インターフェースを構築することを含む。コンピュータ装置のOOBプロセッサは、有線と無線の通信規格の間でデータ通信を再フォーマットすることにより、プレブートフェーズ中、統合拡張ファームウェアインターフェースと無線通信回路との間のデータ通信を処理する。
【図面の簡単な説明】
【0006】
本明細書で説明されるシステム、装置、及び、方法は、添付の図面において具体例により例示され、制限的ではない。説明の簡略さと明確さのため、図中に示される要素は必ずしも縮尺どおりではない。例えば、幾つかの要素の寸法は明確性のため他の要素に対して強調されることがある。以下の図では:
図1図1はシステムの一実施形態に係る単純化したブロック図を示し、そのシステムはコンピュータ装置のプレブートフェーズの間で無線通信を容易にする。
図2図2は方法の一実施形態に係る単純化したフローチャートを示し、その方法は図1のコンピュータ装置のプレブートフェーズの間でワイヤレス通信を容易にする。
図3図3図1のコンピュータ装置のハードウェア及びソフトウェア環境の単純化したブロック図である。
図4図4は方法の一実施形態に係る単純化したフローチャートであり、その方法は図1のコンピュータ装置のプレブートフェーズの間で通信データを処理する。
図5図5は方法の一実施形態に係る単純化したフローチャートであり、その方法は図1のコンピュータ装置のプレブートフェーズの間で通信データを処理する。
図6図6図1のコンピュータ装置の単純化したブートタイムラインの一実施形態である。
【発明を実施するための形態】
【0007】
本明細書の概念は各種の変形例や代替的形態の影響を受けやすいが、その特定の例示的実施形態は図面の具体例によって示され、本明細書で詳細に説明されるだろう。しかしながら、本明細書の概念を開示される特定の形態に限定する意図は無く、その反対に、添付の特許請求の範囲によって定義されるように、本発明の精神と適用範囲内にある全ての変形例、均等、及び代替を包含する意図であることを理解すべきである。
【0008】
以下の説明では、多数の特定の詳細が本明細書をより完全に理解するために説明され、例えば、ロジックの具体化、操作コード、オペランドを特定する手段、リソースのパーティショニング/シェアリング/複製の具体化、システムコンポーネントの種類と相互関係、及び、ロジックのパーティショニング/インテグレーション選択である。しかしながら、当業者には、本明細書の実施形態はそうした特定の詳細が無くとも実施できることが理解されるだろう。他の例では、制御構造、ゲートレベル回路、及び、完全なソフトウェア命令シーケンスは、本開示を明瞭にするため示されていない。当業者は、本願の説明により、必要以上の実験がなくても適切な機能を具体化することができるだろう。
【0009】
本明細書中の“或る実施形態”、“一実施形態”、“例示的な一実施形態”等への参照は、説明される実施形態が特定の構成、構造、又は、特徴を含んでもよいことを指し示すが、各実施形態はその特定の構成、構造、又は、特徴を必ずしも含む必要はない。さらに、そうした用語は、同一の実施形態を必ずしも言及するものではない。さらに、特定の構成、構造、又は、特徴が一実施形態との関連で説明されるときは、明示的に説明されていてもされていなくても、他の実施形態との関連で、そうした構成、構造、又は特徴に影響することは当業者の知識の範囲内であると考えられる。
【0010】
本開示の幾つかの実施形態は、ハードウェア、ファームウェア、ソフトウェア、又は、それらの如何なる組み合わせでも実施することができる。コンピュータシステム内に具体化される本開示の実施形態は、コンポーネント間に1つ又は複数のバスベースの相互接続を含んでもよいし、及び/又は、コンポーネント間に1つ又は複数のポイントツーポイントのインターコネクトを含んでもよい。本発明の実施形態は、機械可読のタンジブルな媒体上に保存される命令として具体化されてもよく、その命令は1つ又は複数のプロセッサによってリードされ実行されてもよい。機械可読のタンジブルな媒体には、機械(例えばコンピュータ装置)が可読な形態の情報を保存又は送信する如何なるタンジブルな機構を含んでもよい。例えば、機械可読なタンジブルな媒体にはリードオンリーメモリ(ROM);ランダムアクセスメモリ(RAM);磁気ディスク保存媒体;光学保存媒体;フラッシュメモリデバイス;及び、他のタンジブルな媒体を含む。
【0011】
さて、図1を参照すると、コンピュータ装置のプレブートフェーズの間、ワイヤレス通信を容易にするためのシステム100は、コンピュータ装置102とワイヤレスアクセスポイント104とを含む。システム100は、外部ネットワーク106と1つ以上のリモートコンピュータ装置108とを含んでもよい。コンピュータ装置102はワイヤレスアクセスポイント104に通信可能に接続されており、そのワイヤレスアクセスポイントはネットワーク106に通信可能に接続されている。以下でより詳しく説明するように、コンピュータ装置102は、ワイヤレスアクセスポイント104を介して、プレブートフェーズの間、ワイヤレス通信を送信し受信することができる。
【0012】
コンピュータ装置102は以下で説明する機能群を実行することのできる如何なる種類の電子デバイスとしても実施されてもよい。例えば、コンピュータ装置102は、パーソナルコンピュータ、ワークステーション、ラップトップコンピュータ、ハンドヘルドコンピュータ、モバイルインターネット装置、携帯電話、パーソナルデータアシスタント、電話装置、ネットワーク機器、仮想化デバイス、保存コントローラ、又は、他のコンピュータベースの装置として実施されてもよい。
【0013】
図1の例示的実施形態では、コンピュータ装置102は、帯域内(in−band)プロセッサ120、帯域外(OOB)プロセッサ122、チップセット126、メモリ128、有線トランシーバ130、及び、無線トランシーバ132を含む。幾つかの実施形態では、コンピュータ装置102は1つ以上のデータ保存デバイス140、及び/又は、1つ以上の追加的な周辺装置142も含んでよい。幾つかの実施形態では、前述のコンポーネントの幾つかはコンピュータ装置102のマザーボード上に組み込まれてもよく、他のコンポーネントは例えば周辺ポートを介してマザーボードに通信可能に接続されてもよい。さらに、コンピュータ装置102は他のコンポーネント、サブコンポーネント、及び、コンピュータ及び/又はコンピュータ装置に一般的に見られるデバイスを含んでもよいことが理解されるべきであり、それらは説明の明確性のため図1には示されない。
【0014】
コンピュータ装置102の帯域内プロセッサ120はソフトウェア/ファームウェアを実行することができる如何なる種類のプロセッサとしても実現されてもよく、例えばマイクロプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、又は類似のものである。帯域内プロセッサ120はプロセッサコア124を有する単一コアプロセッサとして例示的に実現される。しかしながら、他の実施形態では、帯域内プロセッサ120は複数のプロセッサコア124を有するマルチコアプロセッサとして実現されてもよい。追加的に、コンピュータ装置102は1つ以上のプロセッサコア124を有する追加の帯域内プロセッサ120を含んでもよい。帯域内プロセッサ120は一般にソフトウェアスタックを実行する役割を有し、そのソフトウェアスタックはオペレーティングシステム、各種の、アプリケーション、ライブラリ、及びコンピュータデバイス102に常駐するドライバを含んでもよい。
【0015】
コンピュータ装置102のチップセット126は、メモリコントローラハブ(MCH又は“northbridge”)、I/Oコントローラハブ(ICH又は“southbridge”)、及び、ファームウェアデバイスを含んでもよい。そうした実施形態では、ファームウェアデバイスは基本入出力システム(BIOS)データ、及び/又は、命令、及び/又は、他の情報を保存するためのメモリ保存デバイスとして実施されてもよい。追加的に、幾つかの実施形態では、OOBプロセッサ122はファームウェアメモリ(例えばフラッシュメモリ)の安全な部分へのアクセスを有してもよい。もちろん、他の実施形態では、他の機器構成を有するチップセットが使用されてもよい。例えば、幾つかの実施形態では、チップセット126プラットフォームコントローラハブ(PCH)として実施されてもよい。そうした実施形態では、メモリコントローラハブ(MCH)は帯域内プロセッサ120の中に組み込まれてもよく、又は、そうでなければそれと関連してもよい。
【0016】
チップセット126は多数の信号パスを介して帯域内プロセッサ120に通信可能に接続される。これらの信号パス(及び、図1に表される他の信号パス)は、コンピュータ装置102のコンポーネントの間の通信を容易にすることができる如何なる種類の信号パスとして実現されてもよい。例えば、信号パスは、如何なる数のワイヤ、ケーブル、導光器、プリント回路基板配線、ビア、バス、介在するデバイス、及び/又は、それに類似するものとして実現されてもよい。
【0017】
コンピュータ装置102のメモリ128も多数の信号パスを介してチップセット126に通信可能に接続される。メモリ128は、1つ以上のメモリデバイス、又は、データ保存場所として実現されてもよく、例えば、ダイナミックランダムアクセスメモリデバイス(DRAM)、同期ダイナミックランダムアクセスメモリデバイス(SDRAM)、ダブルデータレート同期ダイナミックランダムアクセスメモリデバイス(DDR SDRAM)、フラッシュメモリデバイス、及び/又は、他の揮発性メモリデバイスを含む。追加的に、図1には単独のメモリデバイス128だけが示されているが、他の実施形態では、コンピュータデバイス102は追加的なメモリデバイスを含んでもよい。帯域内プロセッサ120によって実行されるソフトウェアスタックを作り上げるオペレーティングシステム、アプリケーション、プログラム、ライブラリ、及び、ドライバが実行中メモリ128の中に常駐してもよい。さらに、メモリ128の中に保存されたソフトウェアとデータは、メモリ管理オペレーションの一部として、メモリ128と1つ以上のデータ保存デバイス140との間でスワップされてもよい。
【0018】
コンピュータ装置102の有線トランシーバ130は如何なる数のデバイス及び回路としても実現されてもよく、そうして、有線ネットワークによって(即ち、ネットワーク106の有線部分によって)コンピュータ装置102と1つ以上のリモート装置(例えばリモートコンピュータ装置108)との間で有線通信を可能にする。例えば、有線トランシーバ130は1つ以上の有線ネットワークインターフェースを含んでもよく、そうして有線通信を容易にする。有線トランシーバ130はまた、多数の信号パスを介してチップセット126に通信可能に接続され、帯域内プロセッサ120とOOBプロセッサ122とが有線トランシーバ130にアクセスすることを可能にする。
【0019】
有線トランシーバ130と同様に、無線トランシーバ132は、如何なる数のデバイス及び回路として実現されてもよく、そうしてコンピュータ装置102と無線アクセスポイント104との間で無線通信を可能にする。例えば、無線トランシーバ132は1つ以上の無線ネットワークインターフェースを含んでもよく、そうして無線通信を容易にする。幾つかの実施形態では、無線トランシーバ132はOOBプロセッサ122の中に組み込まれてもよく、又はそうでなければ、それに関連してもよい。例えば、無線トランシーバ132は、シリアル周辺インターフェースバス(SPI Bus)、コントローラリンクバス、又は他の特別な相互接続のような特別な信号パス134を介してOOBプロセッサ122に通信可能に接続してもよい。そうした実施形態では、帯域内プロセッサ120は無線トランシーバ132へのアクセスを有しても、有さなくてもよい。他の実施形態では、無線トランシーバ132はチップセット126に通信可能に接続されてもよく、帯域内プロセッサ120とOOBプロセッサ122とが無線トランシーバにアクセスできるようにする。下でより詳細に説明するように、OOBプロセッサ122はコンピュータ装置102のプレブートフェーズの間、無線トランシーバ132を利用するよう構成され、無線通信の機能をコンピュータ装置102へ供給する。
【0020】
帯域内プロセッサ120、チップセット126、メモリ128、及び有線・無線トランシーバ130,132を含む、コンピュータ装置102のコンポーネントは、電源(不図示)に動作可能に接続される。電源は、AC商用電源、DCバッテリ電源、又は両方の何れかから電力を引き出すことができる回路として実現されてもよい。エネルギを節約するため、コンピュータ装置102は、能動的に使用されていないときは幾つかの省電力動作状態に配置されてもよい。例えば、コンピュータ装置102はパワーダウン状態、又は、“オフ”状態に配置され、コンピュータ装置102のほとんどのコンポーネントは電源から電力を受けとらない。代替的に、コンピュータ装置102は様々な“スリープ”又は“一時休止”の状態に配置され、コンピュータ装置102の幾つかのコンポーネントは、しかし全てではないが、電源から電力を受けとる。例えば、“スリープ”状態は揮発性メモリ128(データを保持するため)に電力を供給してもよいが、帯域内プロセッサ120には供給しない。そうした省電力動作状態はエネルギを節約しつつ、コンピュータ装置102が完全な動作状態へ迅速に回復することを可能にする。
【0021】
OOBプロセッサ122は帯域内プロセッサ120とは明確に区別され、一般的には独立して動作する。OOBプロセッサ122はソフトウェアを実行できる如何なる種類のプロセッサとしても実現されてもよく、そのプロセッサは、例えばマイクロプロセッサ、デジタル信号プロセッサ、マイクロコントローラ、又は類似のものであり、1つ以上のプロセッサコア(不図示)を有する1つ以上のプロセッサを含む。OOBプロセッサ122はマザーボード上のチップセット126の中へ一体化されてもよく、又は、拡張ボード上に配置される1つ以上の分離した統合回路として実現されてもよく、その拡張ボードは多数の信号パスを介してチップセット126と通信可能に接続される。OOBプロセッサ122は、コンピュータ装置102の各種のコンポーネントに通信可能に接続されてもよく、例えば上述したようなメモリ128や無線トランシーバ132である。代替的に又は追加的に、OOBプロセッサ122は同様の機能を備えた内蔵コンポーネントを含んでもよく、例えば専用メモリ及び/又は専用通信回路(例えば、無線トランシーバ132がOOBプロセッサ122の中に組み込まれてもよい)である。
【0022】
OOBプロセッサ132は、内蔵プロセッサ120の動作状態に関係なくコンピュータ装置102の特定の機能を管理し実行するよう構成される。そうした独立の動作を容易にするため、OOBプロセッサ122には電源への独立接続が供給されてもよく、コンピュータ装置102の他のコンポーネントがパワーダウン、又は、オフになったときでも、OOBプロセッサ122が電力を保持できるようにする。更に、OOBプロセッサ122には無線トランシーバ132を介して独立ネットワークインターフェースが供給されてもよく、また、電源への独立接続が供給されてもよく、そうして、内蔵プロセッサ120の動作状態に関係なく、アクセスポイント104を介して無線通信が可能になる。即ち、OOBプロセッサ122は、内蔵プロセッサ120上でランするオペレーティングシステムの外側でネットワーク106上のデバイス(例えばリモートコンピュータ装置108のような)と直接に通信することができる。実際に、この通信はユーザの知識が無くても行われる。要するに、内蔵プロセッサ120がオフになっているか、スタンバイ状態でランしているか、初期化されているか、又は通常動作であるかどうか、及び、オペレーティングシステムがブートしているか、ランしているか、クラッシュしているか、又は機能していないかどうかによらず、OOBプロセッサ122は、入来するクエリー/コマンドに基づいてインテリジェントに動作し、アクセスポイント104を介して、無線通信を受信し送信する。
【0023】
幾つかの実施形態では、OOBプロセッサ122はIntel(R)アクティブマネージメントテクノロジー(Intel(R)AMT)、Intel(R)AMTの一部、Intel(R)マネージメントエンジン(Intel(R)ME)、又は、Intel(R)vPro(TM)テクノロジー(Intel(R)vPro)を用いて実現されてもよく、これらは全てカルフォルニア、サンタクララのインテルコーポレーションから入手可能であり、及び/又は、インテルコーポレーションにより販売されているチップセットの内部に実現されてもよい。Intel AMT(R)の埋め込みプラットフォーム技術は、各終点デバイス上の不揮発性メモリに保存されるハードウェア及びソフトウェア情報への帯域外アクセスを可能にし、オペレーティングシステムと他のマネージメントツールに見られる多数のソフトウェアエージェントとを機能させる必要性を除去する。
【0024】
上述したように、コンピュータ装置102は1つ以上のデータ保存デバイス140と、1つ以上の周辺デバイス142とを含む。そうした実施形態では、チップセット126は1つ以上のデータ保存デバイス140と1つ以上の周辺デバイス142とに通信可能に接続される。データ保存デバイス140は如何なる種類のデバイス又は複数のデバイスとして実現されてもよく、短期又は長期のデータ保存、例えば、メモリデバイ及び回路、メモリカード、ハードディスクドライブ、ソリッドステートドライブ、又は他のデータ保存デバイスである。周辺デバイス142は如何なる数の周辺デバイスを含んでもよく、入力デバイス、出力デバイス、及び他のインターフェースデバイスを含む。例えば、周辺デバイス142はコンピュータ装置102のディスプレイ、マウス、キーボード、及び、外部スピーカを含んでもよい。周辺デバイス142に含まれる特定のデバイスは、例えば、コンピュータ装置102の使用目的に依存してもよい。
【0025】
無線アクセスポイント104は如何なる種類の無線アクセスポイントとして実現されてもよく、その無線アクセスポイントはコンピュータ装置102とネットワーク106との間の無線通信を容易にすることができる。例えば、無線アクセスポイント104は無線ルータ、スイッチ、又はハブとして実現されてもよい。ネットワーク106は如何なる種類の有線及び/又は無線ネットワークとして実現されてもよく、例えばローカルエリアネットワーク、ワイドエリアネットワーク、公衆利用可能なグローバルネットワーク(例えばインターネット)、又は類似のものである。追加的に、ネットワーク106は如何なる数の追加的なデバイス、例えばルータ、スイッチ、介在するコンピュー、及びそれに類似するものを含んでもよく、そうして、コンピュータ装置102とリモートコンピュータ装置108との間の通信を容易にする。
【0026】
1つ以上のリモートコンピュータ装置108は、コンピュータ装置102から分離した如何なる種類のコンピュータ装置として実現されてもよい。例えば、リモートコンピュータ装置108は、1つ以上のパーソナルコンピュータ、ワークステーション、ラップトップコンピュータ、ハンドヘルドコンピュータ、モバイルインターネットデバイス、携帯電話、パーソナルデータアシスタント、電話機、ネットワーク機器、仮想化デバイス、保存コントローラ、又は、他のコンピュータベースのデバイスであって、ネットワーク106でコンピュータ装置102と通信するように構成されている。1つ以上のリモートコンピュータ装置108は、それぞれコンピュータ装置102と同様の機能構成を有してもよい。
【0027】
上述したように、コンピュータ装置102は、コンピュータ装置102のプレブートフェーズの間、無線トランシーバ132を用いて無線通信を容易にするよう構成される。即ち、コンピュータ装置102上でオペレーティングシステムをロードする前に、帯域内プロセッサ120の動作状態に関係なく、OOBプロセッサ122は統合拡張ファームウェアインターフェース(UEFI)と無線トランシーバ132との間のデータ通信を容易にするよう構成され、アクセスポイント104との無線通信に影響を与える。そうするため、コンピュータ装置102は図2に示されるような方法200を実行してもよい。その方法200はブロック202で始まり、そこではコンピュータ装置102がリスタート又はリブートされる。即ち、コンピュータ装置102はオフ状態からパワーオンされ、スリープ状態からリブートされ、クラッシュ又はエラー状態からリブートされ、又は、同様なことがブロック202で行われてもよい。続いて、ブロック204では、レジスタやメモリロケーションのような各種のデバイスやソフトウェア要素を初期化する。追加的に、UEFI環境302(図3参照)が、ブロック204で開始されてもよい。
【0028】
ブロック206では、無線トランシーバ132への無線接続を有するOOBプロセッサ122がコンピュータ装置102に組み込まれているかどうかをコンピュータ装置102が判定する。例えば、コンピュータ装置102は、無線トランシーバ132が、帯域内プロセッサ120の動作状態に関係なく電源供給されている状態であるかどうかを判定してもよい。もしそうであるなら、ブロック208でコンピュータ装置102はOOBプロセッサ122がプレブート無線通信用に設定構成されているか、又は別の方法でそれをサポートするかどうかを判定する。例えば、コンピュータ装置102はOOBプロセッサ122が下で述べるようなファームウェアを含むかどうかを判定してもよく、そうしてUEFI302と無線トランシーバ132との間のデータ通信を容易にする。ブロック206で、OOBプロセッサ122が存在しないこと、又は、ブロック208で、OOBプロセッサ122は存在するが無線接続用に設定されていないことが判定された場合は、本方法200は下に述べるブロック212に進む。
【0029】
しかしながら、無線接続を有するOOBプロセッサ122が存在し、且つ、プレブートフェーズの間、無線通信用に設定されていることが判定された場合は、本方法200はブロック210に進む。ブロック210では、無線通信インターフェース300(図3参照)がUEFI302と無線トランシーバ132との間に構築される。無線通信インターフェース300はソフトウェア及び/又はハードウェアのコンポーネントを含んでもよい。例えば、図3に示すように、シリアル通信ドライバ304がUEFI302に供給されてもよく、又はUEFI302によって実行されてもよく、そうして、OOBプロセッサ122のシリアル通信ハードウェアインターフェース306へデータを通信し、そこからデータを受信する。或る特定の実施形態では、シリアル通信ハードウェアインターフェース306は、ユニバーサル非同期型レシーバ/トランスミッタ(UART)装置として実現され、UEFI302はペリフェラルコンポーネント相互接続(PCT)バスでインターフェース306と通信するが、他の装置及び/又は方法論が使用されてもよくUEFI302とOOBプロセッサ122との間でデータを転送する。
【0030】
OOBプロセッサ122は無線通信ソフトウェアインターフェース308を含み、そうして、無線トランシーバ132の無線通信ハードウェアインターフェース310へデータを転送し、そこからデータを受信する。或る特定の実施形態では、OOBプロセッサ122はシリアルバスで無線トランシーバ132と通信し、そのシリアルバスはシリアルペリフェラルインターフェースバス(SPI Bus)、コントローラリンクバス、又は他の特別な相互接続として実現されてもよい。下でより詳しく述べるように、UEFI302から受信した有線通信データを再パッケージするか、又は、再フォーマットするように構成され、所定の有線通信規格(例えばIEEE802.3)、所定の無線通信規格(例えばIEEE802.11)に従ってフォーマットされる。同様に、OOBプロセッサ122は、無線トランシーバ132から受信した無線通信データを再パッケージするか、又は、再フォーマットするように構成され、所定の無線通信規格、所定の有線通信規格に従ってフォーマットされる。
【0031】
図2に戻って参照すると、無線通信インターフェース300がブロック210で構築された後、コンピュータ装置102はブロック212でプレブート初期化を続ける。ブロック214では、プレブート初期化の間、コンピュータ装置102は、如何なる無線通信トランザクションも要求、又は、発生しているかどうかを判定する。もしそうであるなら、コンピュータ装置102は、そのコンピュータ装置102上でプレブート無線通信がイネーブルされたかどうかを判定する(例えばブロック206,208参照)。
【0032】
プレブートフェーズ無線通信がコンピュータ装置102上でイネーブルされた場合、方法200はブロック218に進み、そこではOOBプロセッサ122がUEFI302と無線トランシーバ132との間でデータを処理する。例えば、図4に示されるように、OOBプロセッサ122は方法400を実行してもよく、そうして、UEFI302から受信したデータ送信を処理する。方法400はブロック402で開始し、そこではOOBプロセッサ122がUEFI302からデータ通信を受信し、所定の有線通信規格に従ってフォーマットされる。ブロック404では、OOBプロセッサ122は、通信データを有線通信規格フォーマットから所定の無線通信規格フォーマットへ再フォーマット、又は、変換する。例えば、OOBプロセッサ122は標準的な方法を使用してもよく、そうして、通信データを、1988年2月に公表されたRFC−1042規格で定義されるインターネットエンジニアリングタスクフォース(IETF)のカプセル化規格;1977年8月12日に公表されたIEEE802.1H規格で定義されるトンネルカプセル化規格;又は、他の変換規格に変換する。ブロック406では、OOBプロセッサ122は、無線通信規格フォーマットに従ってフォーマットされた通信データを、無線トランシーバ132に供給するか、又は、送信する。そして、無線トランシーバ132は通信データをアクセスポイント104に無線で送信してもよい。
【0033】
図5を参照すると、OOBプロセッサ122は方法500を実行してもよく、そうして、無線トランシーバ132から受信したデータ送信を処理する。方法500はブロック502で開始し、そこではOOBプロセッサ122は無線トランシーバ132からデータ通信を受信し、所定の無線通信規格に従ってフォーマットされる。ブロック504では、OOBプロセッサ122は通信データを、無線通信規格フォーマットから所定の有線通信規格フォーマットへ再フォーマット、又は、変換する。例えば、上述のように、OOBプロセッサ122は、1988年2月に公表されたRFC−1042規格で定義されるIETFのカプセル化規格、又は、1977年8月12日に公表されたIEEE802.1H規格で定義されるトンネルカプセル化規格;又は他の変換規格を用いてもよい。ブロック506では、OOBプロセッサ122は、有線通信規格フォーマットに従ってフォーマットされた通信データを、UEFI302へ供給するか、又は、送信する。そして、UEFI302はその通信データを処理し、必要であればしかるべく応答する。
【0034】
図2に戻って参照すると、無線トランザクションが要求されないか、又は、プレブート無線通信がイネーブルされない場合、方法200はブロック220に進み、そこではコンピュータ装置102がプレブートフェーズが完了したかどうかを決定する。完了していない場合は、方法200はブロック214に進み、そこではプレブート初期化が続く。しかしながら、プレブートフェーズが完了した場合、方法222はブロック200へ進み、そこではUEFI302と無線トランシーバ132との間に構築された無線通信インターフェース300が除去される。
【0035】
上述したように、UEFI302と無線トランシーバ132との間の無線通信インターフェースは、コンピュータ装置102のプレブートフェーズ中に構築される。例えば、コンピュータ装置102の例示的なブートタイムライン600が図6に表される。ブートタイムライン600は複数のブートフェーズを含む。例えば、コンピュータ装置102が初めにパワーオンされるか、又は、リスタートされるとき、セキュリティフェーズ602が実行される。続いて、プレEFI初期化(PEI)環境フェーズ604が実行され、そこでは、帯域内プロセッサ120のようなコンピュータ装置102のプラットフォームのハードウェアデバイスが初期化される。次に、ドライバ実行環境(DXE)フェーズ606が実行され、そこでは、複数のデバイス、バス、及び/又は、サービスドライバがロードされ、及び/又は、実行される。例示的な実施形態では、UEFI302と無線トランシーバ132との間の無線通信インターフェースが、ドライバ実行環境フェーズ606の間に、又は、その完了時に構築される。例えば、UEFI302はシリアル通信ソフトウェアドライバ304をロードしてもよく、そうして、ドライバ実行環境フェーズ606の間、OOBプロセッサ122と通信するようになる。ブートデバイス選択(BDS)フェーズ608はドライバ実行環境フェーズの後に実行される。続いて、一時的なシステムロード(TSL)フェーズ610が実行され、そこではオペレーティングシステム・ローダが初期化される。追加的に、OOBプロセッサ122によってUEFI302と無線トランシーバ132との間に構築された無線通信インターフェース300は、TSLフェーズ610の間で且つランタイム(RT)フェーズ612でオペレーティングシステムを実行する前に除去される。
【0036】
本開示は図面及び前述の説明で詳細に例示し説明したが、そうした例示や説明は具体例として考えられるべきであり、そのものとして制限されるべきではなく、単に例示的な実施形態が示され、説明されたと理解され、そして、本開示と本特許請求の範囲の精神の中にある全ての変更及び変形は保護されるよう望まれると理解される。
図1
図2
図3
図4
図5
図6