JP2017509085A - ユーザー選択可能なオペレーティング・システム - Google Patents
ユーザー選択可能なオペレーティング・システム Download PDFInfo
- Publication number
- JP2017509085A JP2017509085A JP2016559309A JP2016559309A JP2017509085A JP 2017509085 A JP2017509085 A JP 2017509085A JP 2016559309 A JP2016559309 A JP 2016559309A JP 2016559309 A JP2016559309 A JP 2016559309A JP 2017509085 A JP2017509085 A JP 2017509085A
- Authority
- JP
- Japan
- Prior art keywords
- operating system
- user
- operating systems
- boot loader
- storage
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/441—Multiboot arrangements, i.e. selecting an operating system to be loaded
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本特許は、ユーザー選択可能なオペレーティング・システムを有するユーザー・デバイスに関する。一実施態様では、多数の圧縮されたオペレーティング・システムが動作不能な形態で格納されている主ストレージを含むことができる。また、この実施態様では、個々のオペレーティング・システムのユーザー選択を受けるように構成されたマルチオプション・ブート・ローダーを実行するように構成されたプロセッサーも含むことができる。マルチオプション・ブート・ローダーは、個々のオペレーティング・システムに固有の構成のファイル・フォルダ構造を主ストレージ上にインストールし、このファイル・フォルダ構造に関係付けて個々のオペレーティング・システムを動作可能な形態で主ストレージ上にインストールするように構成される。【選択図】図12
Description
[0001] 従前より、計算デバイスは1つのオペレーティング・システムが含まれ、そのデバイス上で実行している。知識があるユーザーの中には、2つのオペレーティング・システムのいずれかをブートするようにデバイスを構成できる者もいるであろう。しかしながら、このような構成は、オペレーティング・システムに対して変更が必要となり、オペレーティング・システムを互いに分離するために厳しい領域確保(partitioning)が必要であった。更に、多数のオペレーティング・システムが大量の記憶空間を占めるため、この記憶空間はユーザーには利用することができなかった。更に、この構成はデバイスおよびオペレーティング・システムに対するセキュリティの問題も引き起こした。したがって、ユーザーは、彼らのデバイス上で多数のオペレーティング・システムの選択の自由を得るために多くの犠牲を払うことになるか、または単独オペレーティング・システムを有するデバイスによって生ずる、選択肢がなくなることを受け入れるかのいずれかであった。
[0002] 本文書は、ユーザー選択可能なオペレーティング・システムを有するユーザー・デバイスに関する。一実施態様は、ソリッド・ステート・ハード・ドライブまたはハード・ディスク・ドライブのような、主ストレージを有するデバイスに関する。主ストレージは、動作不能な形態またはバージョンで、多数の圧縮されたオペレーティング・システムをその上に格納させることができる。また、この実施態様は、マルチオプション・ブート・ローダー(multi-option boot loader)を実行するように構成されたプロセッサーも含むことができる。マルチオプション・ブート・ローダーは、個々のオペレーティング・システムのユーザー選択を受けるように構成することができる。マルチオプション・ブート・ローダーは、個々のオペレーティング・システムに固有の構成で主ストレージ上にファイル・フォルダ構造をインストールし、更にファイル・フォルダ構造に関係付けて、主ストレージ上に個々のオペレーティング・システムを動作可能な形態(operable form)でインストールするように構成することができる。
[0003] 他の実施態様は、ディスプレイ、ストレージ、およびプロセッサーを含むことができる。プロセッサーは、ディスプレイ上にグラフィカル・ユーザー・インターフェース(GUI)を提示させるように構成することができ、グラフィカル・ユーザー・インターフェース(GUI)は、ストレージ上にバイナリー形態で格納されている多数のオペレーティング・システムを列挙する。GUIは、ストレージ上に個々のオペレーティング・システムの使用可能な形態(operational form)をインストールすることを、ユーザーに選択させることができる。プロセッサーは、別のGUIをディスプレイ上に提示させることができる。この別のGUIは、デバイス上にある多数のオペレーティング・システムから別のものの使用可能な形態をインストールすること、および個々のオペレーティング・システムの使用可能な形態を削除することを、ユーザーに選択させることができる。
[0004] 更に他の実施態様は、ディスプレイ、プロセッサー、ストレージ、およびストレージ上にインストールされた少なくとも2つの動作可能なオペレーティング・システムを含むことができる。プロセッサーは、個々のオペレーティング・システムのユーザー選択を受け、少なくとも2つのオペレーティング・システムの内他のものを削除するように構成することができる。また、プロセッサーは、ストレージの内、削除されたオペレーティング・システムに占有されていた部分を、ユーザー・データー・ストレージにフォーマットすることもできる。
[0005] この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を判断するときに補助として使用されることを意図するのでもない。
[0006] 添付図面を参照しながら詳細な説明を記載する。図では、参照番号の一番左側の数字(1つまたは複数)が、その参照番号が最初に現れる図を識別する。明細書および図において異なる事例(instance)に同様の参照番号を使用するときは、同様または同一の項目を示す場合もある。
図1は、本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図2は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図3は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図4は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図5は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図6は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図7は、本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図8は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図9は、 本概念の実施態様によるユーザー・オペレーティング・システム選択シナリオの例である。
図10は、ユーザー選択可能オペレーティング・システムの概念を実現することができるシステムの一例である。
図11は、実施態様にしたがって、図10に関係して導入されたエレメントの一部に関する更なる詳細を示す。
図12は、実施態様にしたがって、図10に関係して導入されたエレメントの一部に関する更なる詳細を示す。
図13は、実施態様にしたがって、図10に関係して導入されたエレメントの一部に関する更なる詳細を示す。
図14は、実施態様によるマルチ・オペレーティング・システム方法(multiple operating system method)の流れ図である。
図15は、実施態様によるマルチ・オペレーティング・システム方法の流れ図である。
全体像
[0011] 本技術は、製造業者または他の供給業者が多数のオペレーティング・システムを計算デバイスまたは「デバイス」上にインストールすることを可能にする。エンド・ユーザー(または彼らの代わりに活動する者)は、デバイス上で利用するオペレーティング・システムを選択することができる。あらゆるタイプのデバイスに適用可能であるが、本概念は、特に、タブレット、スマート・フォン、および/またはウェアラブル・スマート・デバイスのような、とりわけ、ストレージに制約があるデバイスに適用可能である。ストレージに制約があるデバイスは、比較的少量のストレージを有する傾向がある。従前の構成では、デバイス上に多数のオペレーティング・システムを有すると、ユーザーが、音楽、写真、および/またはビデオのようなユーザー・データーを格納するために利用可能なストレージの量が著しく減少した。その結果、多数のオペレーティング・システムから選択できるという便利さよりも、ユーザー・ストレージの多大な減少の方が重要になった。本実施態様は、このトレードオフを克服し、ユーザーに利用可能なデーター・ストレージを殆ど減らすことなく、多数のオペレーティング・システムの選択をユーザーに提供することができる。以下に続く説明は、様々なシナリオ例から開始し、次にハードウェア例、そして最後に方法例が続く。
[0011] 本技術は、製造業者または他の供給業者が多数のオペレーティング・システムを計算デバイスまたは「デバイス」上にインストールすることを可能にする。エンド・ユーザー(または彼らの代わりに活動する者)は、デバイス上で利用するオペレーティング・システムを選択することができる。あらゆるタイプのデバイスに適用可能であるが、本概念は、特に、タブレット、スマート・フォン、および/またはウェアラブル・スマート・デバイスのような、とりわけ、ストレージに制約があるデバイスに適用可能である。ストレージに制約があるデバイスは、比較的少量のストレージを有する傾向がある。従前の構成では、デバイス上に多数のオペレーティング・システムを有すると、ユーザーが、音楽、写真、および/またはビデオのようなユーザー・データーを格納するために利用可能なストレージの量が著しく減少した。その結果、多数のオペレーティング・システムから選択できるという便利さよりも、ユーザー・ストレージの多大な減少の方が重要になった。本実施態様は、このトレードオフを克服し、ユーザーに利用可能なデーター・ストレージを殆ど減らすことなく、多数のオペレーティング・システムの選択をユーザーに提供することができる。以下に続く説明は、様々なシナリオ例から開始し、次にハードウェア例、そして最後に方法例が続く。
使用事例のシナリオ
[0012] 図1および図2は、両方でまとめて、デバイス102を伴う第1使用事例シナリオを示す。この例では、デバイス102は、ディスプレイ104を有するタブレット型デバイスであることは明らかである。このデバイスのシナリオは、デバイス102のエンド・ユーザー106(例えば、購入者)を伴うことができる。図1において、ユーザーがこのデバイスに電源を入れると、グラフィカル・ユーザー・インターフェース(GUI)108がユーザーに提示される。GUIは、ユーザーに提示されるマルチ・オペレーティング・システム・メッセージ110を含む。メッセージは、112において、このタブレットには2つの予めインストールされているオペレーティング・システムが付いていることを示す。GUIは、114において、これらのオペレーティング・システム(例えば、オペレーティング・システム1およびオペレーティング・システム2)を列挙し、これらのオペレーティング・システムから1つを選択するようにユーザーに求める。メッセージは、116において、ユーザーがデバイス上においてより多くの利用可能なストレージ空間を有するように、選択されなかったオペレーティング・システムを削除することを、ユーザーに説明する。説明の目的のために、ユーザーはオペレーティング・システム2を選択したと仮定する。図示しないが、この時点で、ユーザーに彼らの選択を確認することを求める、および/またはこの選択から生ずる成り行き(ramification)を全て説明する別のGUIを生成することもできる。
[0012] 図1および図2は、両方でまとめて、デバイス102を伴う第1使用事例シナリオを示す。この例では、デバイス102は、ディスプレイ104を有するタブレット型デバイスであることは明らかである。このデバイスのシナリオは、デバイス102のエンド・ユーザー106(例えば、購入者)を伴うことができる。図1において、ユーザーがこのデバイスに電源を入れると、グラフィカル・ユーザー・インターフェース(GUI)108がユーザーに提示される。GUIは、ユーザーに提示されるマルチ・オペレーティング・システム・メッセージ110を含む。メッセージは、112において、このタブレットには2つの予めインストールされているオペレーティング・システムが付いていることを示す。GUIは、114において、これらのオペレーティング・システム(例えば、オペレーティング・システム1およびオペレーティング・システム2)を列挙し、これらのオペレーティング・システムから1つを選択するようにユーザーに求める。メッセージは、116において、ユーザーがデバイス上においてより多くの利用可能なストレージ空間を有するように、選択されなかったオペレーティング・システムを削除することを、ユーザーに説明する。説明の目的のために、ユーザーはオペレーティング・システム2を選択したと仮定する。図示しないが、この時点で、ユーザーに彼らの選択を確認することを求める、および/またはこの選択から生ずる成り行き(ramification)を全て説明する別のGUIを生成することもできる。
[0013] 図2は、その後GUI208を示す。このGUI208は、オペレーティング・システム2がデバイス上で起動されていること、そしてストレージ空間をユーザーのために解放するためにオペレーティング・システム1がデバイスから削除されたことを、ユーザーに示す。要約すると、この構成は、デバイスに異なるオペレーティング・システムを予めインストールさせておくことができる。ユーザーは個々のオペレーティング・システムを選択することができる。他のオペレーティング・システムを削除することができるので、削除されるオペレーティング・システムによって占められていたストレージの部分は、ユーザーによる使用のために構成することができる。この時点において、デバイス102は、選択されたオペレーティング・システムだけが予めデバイス上にインストールされていたかのように、選択されたオペレーティング・システムによって同様に機能することができる。したがって、製造業者は、多数のオペレーティング・システムの選択肢を有し、ユーザーはデバイスを所望通りに構成することができる、1つのデバイスを作ることができる。その最終的な結果は、ユーザーの指定通りに(例えば、ユーザーが望んだ通りに)構築されたかのように機能することができる汎用デバイスとして考えることができる。
[0014] 図3〜図9は、全体でまとめて、選択肢が複数ある他のシナリオを示す。このシナリオでは、デバイス302に関係付けて説明する。この場合、デバイス302は、ディスプレイ304およびハードウェア・ボタン306を有するスマート・フォンであることが明らかである。この場合、3つのハードウェア・ボタン306(1)、306(2)、および306(3)がある。ハードウェア・ボタン306は、電源ボタン、音量ボタン等のように、種々の容量(capacities)で機能することができる。ある構成では、ハードウェア・ボタンは、「ソフト・キー」が利用できない起動中の使用のために利用可能にしてもよい。この例では、ユーザーは、起動GUI308を見るために、電源ボタンをアクティブにすることができる。尚、他のデバイス構成は異なる数のハードウェア・ボタンを有すること、またはハードウェア・ボタンを全く有さず、代わりに、ユーザーがデバイスを制御するために他のメカニズムを有することが可能であることを注記しておく。
[0015] GUI308は、デバイスが電源投入中であること、そして、310において示されるように、ユーザーがデバイス上にインストールするために3つのオペレーティング・システム(OS1〜OS3)から1つを選択できることをユーザーに示す。説明の目的のために、ユーザーは、ハードウェア・ボタン306の内1つ以上を使用して、オペレーティング・システム1を選択したと仮定する。図4は、オペレーティング・システム1によって生成されたGUI408を示す。この時点において、オペレーティング・システム1が正常に起動する(例えば、オペレーティング・システム1がデバイス上の唯一のオペレーティング・システムであるかのように)。しかしながら、この場合、他のオペレーティング・システム(例えば、OS2およびOS3)は、デバイスから削除されない。代わりに、OS2およびOS3は、デバイス上に圧縮され動作不能な形態で維持することができる。これは、デバイス上で比較的少ない空間を占める(例えば、1ギガバイト以下というような)。
[0016] 図5は、デバイス302上でユーザーが再度電源を投入した場合のその後のGUI508を示す。この場合、GUIは、510において、現在のオペレーティング・システムはオペレーティング・システム1であることを示す。また、このGUIは、512において、ユーザーがオペレーティング・システムを切り替えたいか否か、ユーザーに尋ねる。この例に限って、ユーザーは彼/彼女が他のオペレーティング・システムを試したいことを指示したと仮定する。
[0017] 図6は、利用可能なオペレーティング・システム(例えば、OS1〜OS3)からユーザーに選択させる、その後のGUI608を示す。説明の目的のために、ユーザーはOS3を選択したと仮定する。図7は、デバイスが、710においてオペレーティング・システムを切り替える準備のために、ユーザーの個人データーを保存する措置を講じていることを示す他のGUI708を示す。端的に言うと、このコンテキストでは、ユーザーの個人データーは、以前のオペレーティング・システムに関連する個人的な設定値、および/または文書、メディア等のような個人的なコンテンツを含むことができる。ある場合には、個人データーは、個々のオペレーティング・システムに関連する構成データーの一部として考えることができる。また、GUI708は、ユーザーが712において彼/彼女の個人データーを保存するために取ることができる措置について学習する機会をユーザーに提供する。例えば、ユーザーはこのセクション上でクリックすることができ、ユーザーが特定の個人データーをどのようにそしてどこでバックアップすることができるか説明する他のGUIを生成することができる。例えば、ユーザーは彼らの個人データーを、とりわけ、フラッシュ記憶デバイス(例えば、セキュア・ディジタル(SD)カード)および/またはクラウド・ストレージのような、副ストレージにバックアップすることができる。
[0018] 図8は、オペレーティング・システムの切り替え中にユーザーの個人データーを保護することを目的とする他のGUI808を示す。このGUIは、オペレーティング・システムの切り替え中にユーザーの個人データーを保護するために措置を講ずることができることを表す。この例では、GUI808は、810において、特定の個人データー(この場合、ビデオ・ファイル)を保存できなかったことを示す。GUIは、デバイスが812においてオペレーティング・システムの切り替えに進む前に、ユーザーが手作業で、指定データーをバックアップすることを依頼する。
[0019] 図9は、その後のGUI908を示し、選択されたOS3を起動しているところである。910において、GUIは、図7〜図8において保存されたユーザーの個人データーがOS3と関連付けられていることを示す。この時点以降、OS3は正常に動作することができる。
[0020] 要約すると、図3〜図9は、多数のオペレーティング・システムの圧縮された動作不能な形態を維持することができるデバイスを示す。ユーザーは、デバイス上におけるインストールのために個々のオペレーティング・システムを選択することができる(例えば、動作可能な形態)。続いて、ユーザーは、望むのであれば、異なるオペレーティング・システムに切り替えることができる。この構成は、1つのデバイス(例えば、製品)が多くの異なるユーザーを満足させることを可能にする。更に、個々のユーザーは、デバイス上で利用するために個々のオペレーティング・システムを選択する(そして選択し直す)することができ、しかもストレージを殆ど犠牲にしないで済む(例えば、主ストレージの1ギガバイトまたは32ギガバイト未満)。デバイス302は、コールド起動時のような、ある種の状況下において、自動的にユーザーにオペレーティング・システムを選択させる(例えば、切り替える)ように構成することができる。代わりにまたは加えて、最初のユーザー選択の後、ユーザーは、「設定」フォルダまたは同様のユーザー制御機能(control feature)において選択を行うことによってというようにして、オペレーティング・システム選択GUIを提示する(bring up)ことを決定してもよい。
[0021] 図10は、ユーザーに多数のオペレーティング・システムから選択させるように構成されたシステム1000を示す。システム1000は、以上で説明したデバイス102および302と同様であるデバイス1002を含む。ある構成では、デバイス1002は、アプリケーション・レイヤ1004、オペレーティング・システム・レイヤ1006、およびハードウェア・レイヤ1008を有することを特徴とすることができる。1つ以上のアプリケーション1010が、オペレーティング・システム(OS)1012上で実行することができる。マルチオプション・ブート・ローダー1014は、デバイス上における動作のために、ユーザーに個々のオペレーティング・システムを選択させることができる。オペレーティング・システムは、ドライバー1018を介してハードウェア1016と相互作用することができる。(尚、オペレーティング・システムは各々それら自体のドライバーを有することができることを注記しておく。例えば、第1オペレーティング・システムのためのディスプレイ・ドライバーは、第2オペレーティング・システムとは機能することができない)。
[0022] ハードウェア1016の例には、とりわけ、ディスプレイ1020(図1および図3のディスプレイ104および304とそれぞれ類似する)、センサー1022、プロセッサー(1つまたは複数)1024、バッテリー(例えば、電源)1026、通信コンポーネント1028、および/または記憶媒体またはストレージ1030を含むことができる。勿論、他のエレメントも種々の実施態様では含むことができる。また、説明の目的のために、この説明は、これらのエレメントをレイヤのようなグループに編成しようとしていることも注記しておく。読者は、分類(grouping)が全ての状況において厳密に正確でない場合もあり得る、またはエレメントの関係を表す唯一の方法ではない場合もあり得ることは理解してしかるべきである。例えば、マルチオプション・ブート・ローダー104をオペレーティング・システム1012の次に、または、直下ではなく、オペレーティング・システムの上に示すこともできる。他の特徴付けでは、マルチオプション・ブート・ローダー1014は、アプリケーション・レイヤ1004の一部として記述することができる。したがって、この例示の意図は、アーキテクチャーの限定を提示することではなく、本概念を理解するときに読者を補助することである。マルチオプション・ブート・ローダーについて他の見方をすると、これは起動時にデバイスにおいて実行する最初の命令になることができるということになる。一旦実行すると、マルチオプション・ブート・ローダーは他の命令を実行することができる。
[0023] 1つの観点からは、デバイス1002をコンピューターと考えることができる。コンピューターまたはデバイスの例には、パーソナル・コンピューター、デスクトップ・コンピューター、ノートブック・コンピューター、セル・フォン、スマート・フォン、パーソナル・ディジタル・アシスタント、パッド型コンピューター、ディジタル白板、カメラ、スマート・グラスのようなウェアラブル・デバイス、あるいはこれまでに開発されたまたは未だ開発されていない無数のタイプの計算デバイスの内任意のものというような、従前の計算デバイスを含むことができる。
[0024] プロセッサー1024は、機能を設けるために、コンピューター読み取り可能命令の形態でデーターを実行することができる。コンピューター読み取り可能命令および/またはユーザー関連データーのようなデーターは、コンピューターに対して内部または外部でも可能なストレージのような、ストレージ1030上に格納することができる。ストレージは、とりわけ、揮発性または不揮発性メモリー、ハード・ドライブ、フラッシュ記憶デバイス、および/または光記憶デバイス(例えば、CD、DVD等)の内任意の1つ以上を含むことができる。本明細書において使用する場合、「コンピューター読み取り可能媒体」という用語は信号を含むことができる。対照的に、「コンピューター読み取り可能記憶媒体」という用語は信号を除外する。コンピューター読み取り可能記憶媒体は、「コンピューター読み取り可能記憶デバイス」を含む。コンピューター読み取り可能記憶デバイスの例には、とりわけ、RAMのような揮発性記憶媒体、ならびにハード・ドライブ、光ディスク、およびフラッシュ・メモリーのような不揮発性記憶媒体が含まれる。
[0025] 説明の目的のために、この文書では、ストレージ1030を主ストレージ1030(1)および副ストレージ1030(2)と呼ぶこともある。主ストレージ1030(1)は、フラッシュ、ハード・ドライブ等のような、任意の内蔵(例えば、製造の時点で含まれる)ストレージとすることができる。副ストレージ1030(2)は、マルチメディア・ポートに追加されるマルチメディア・カードのような、販売業者またはエンド・ユーザーによってデバイスに追加されるストレージのような、任意の他のストレージとすることができる。また、副ストレージは、デバイスによってアクセスおよび利用することができるクラウド・ベースのストレージのような、遠隔ストレージも含むことができる。また、「プロセッサー」および「ストレージ」という用語が別個のエレメントとして例示されているが、重複があり得ることを注記しておく。例えば、本明細書において使用する「ストレージ」が専用のコントローラーを含む場合もある。例えば、構成の中でもとりわけ、主ストレージ1030(1)は、埋め込みマルチメディア・コントローラー(eMMC)ストレージとして具体化することができ、これは、同じシリコン・ダイ上に集積されたフラッシュ・メモリーおよびフラッシュ・メモリー・コントローラーを含む。同様に、プロセッサー1024がそれ自体の専用メモリーを有することもでき、この専用メモリーはストレージ1030の一部と見なすことができる。
[0026] ある構成では、デバイス1002は、システム・オン・チップ(SOC)型の設計を含むことができる。このような場合、デバイスによって提供される機能を1つのSOCまたは多数の結合されたSOC上に統合することができる。1つ以上のプロセッサーは、メモリー、ストレージなどのような共有リソース、および/またはある種の特定の機能を実行するように構成されたハードウェア・ブロックのような、1つ以上の専用リソースと調和する(coordinate)ように構成することができる。つまり、本明細書において使用する場合、「プロセッサー」という用語は、中央処理ユニット(CPU)、グラフィカル処理ユニット(GPU)、コントローラー、マイクロコントローラー、プロセッサー・コア、または他のタイプの処理デバイスも指すことができる。
[0027] 一般に、本明細書において説明する機能はいずれも、ソフトウェア、ファームウェア、ハードウェア(例えば、固定ロジック回路)、手動処理、またはこれらの実施態様の組み合わせを使用して実現することができる。「コンポーネント」という用語は、本明細書において使用する場合、一般に、ソフトウェア、ファームウェア、ハードウェア、デバイスまたはネットワーク全体、あるいはこれらの組み合わせを表す。ソフトウェアの実施態様の場合、例えば、これらは、プロセッサー(例えば、1つまたは複数のCPU)上で実行されると、指定されたタスクを実行するプログラム・コードを表すことができる。プログラム・コードは、コンピューター読み取り可能記憶媒体のような、1つ以上のコンピューター読み取り可能メモリー・デバイスに格納することができる。これらのコンポーネントの特徴や技法は、プラットフォーム独立であり、これが意味するのは、種々の処理構成を有する種々の商用計算プラットフォームにおいてこれらを実現できるということである。
[0028] マルチオプション・ブート・ローダー1014は、ユーザーに多数のオペレーティング・システムから選択させることができる。例えば、デバイスに電源を投入するとき、マルチオプション・ブート・ローダー1014は、プロセッサー1024上で実行する最初の命令となることができる。例えば、ユーザーが電源ボタンを押したときというような、デバイスの電源投入時に、ハードウェア1016に電源を投入することができる。ハードウェア(例えば、プロセッサー1024)は、マルチオプション・ブート・ローダー1014の位置を突き止めることができる。マルチオプション・ブート・ローダー1014は、主ストレージ1030(1)上の特定の位置に格納することができる。ハードウェア1016は、ハードウェア1016内に焼き付けられた(例えば、プロセッサーを含む集積回路チップ内に)証明書に基づいて、マルチオプション・ブート・ローダー1014の証明書の有効性を判断することができる。ある実施態様では、この構成は、他のブート・ローダーがこのデバイス上で実行しないことを保証することができる。言い換えると、チップ内に焼き付けられた証明書は、マルチオプション・ブート・ローダーのディジタル署名の有効性を判断する。署名が通用する場合(例えば、有効であると認められた)、マルチオプション・ブート・ローダーはロードされる。一方、マルチオプション・ブート・ローダーは、それぞれの一意のディジタル署名によってというようにして、個々のオペレーティング・システムの有効性を判断することができる。この態様については、図12に関係付けて以下で更に詳しく論ずることにする。
[0029] 言い換えると、ある実施態様は1つのマルチオプション・ブート・ローダーを使用することができる(例えば、マルチオプション・ブート・ローダーはデバイス上で唯一のブート・ローダーとなる)。1つのマルチオプション・ブート・ローダーをデバイス上で認証することができ、次いでオペレーティング・システムの全てを処理することができる。これらの構成は、他のいずれのブート・ローダーもデバイス上で起動するのを禁止することによって、デバイスのセキュリティを保証(しようと)することができる。他のブート・ローダーは、デバイス上のユーザー・データーのような、機密データーを露出する可能性がある、信頼できないオペレーティング・システムをインストールするおそれがある。
[0030] マルチオプション・ブート・ローダー1014は、ユーザーにGUIを提示させることができる。このGUIは、多数のオペレーティング・システムがユーザーに利用可能であり、個々のオペレーティング・システムをユーザーに選択させることを説明する。これらのGUIの例を図1〜図9に関係付けて例示する。ユーザーが選択すると、マルチオプション・ブート・ローダーはデバイス1002に1つの使用可能なオペレーティング・システムを設定する(configure)ことができる。これらの態様の例については、図11および図12に関係付けて以下で論ずることにする。ユーザーが選択すると、マルチオプション・ブート・ローダー1014は、ユーザーが選択したオペレーティング・システムに合わせてデバイスを構成するために、種々の動作(action)を実行することができる。
[0031] 通信コンポーネント1028は、デバイスがネットワークを通じてというようにして他のデバイスと通信することを可能にすることができるセルラ回路、その他のワイヤレス回路、モデム、ポート等として表すことができる。プロセッサー1024は、通信コンポーネント1028に、デバイス上でどのオペレーティング・システムが動作可能な形態でインストールされたか伝えさせることができる。
[0032] 図11は、主ストレージ1030(1)上における記憶空間の水平棒グラフ表現を示す。主ストレージ1030(1)は、とりわけ、フラッシュ・メモリーまたはハード・ドライブのような、任意の永続的(例えば、不揮発性)ストレージとすることができる。この例は、OS1およびOS2で示す2つの異なるオペレーティング・システム1012に関する。説明の目的および比較のために、主ストレージ1030(1)は「第1インスタンス」および後続の「第2インスタンス」において示されている。
[0033] 第1インスタンスは、ストレージ上に2つの動作可能なオペレーティング・システム(OS1およびOS2)がインストールされた主ストレージ1030(1)を示す。更に具体的には、主ストレージ1030(1)はマルチオプション・ブート・ローダー(MOBL)1014を含む。更に、主ストレージ1030(1)は、2つのハード・パーティション1102(1)および1102(2)に編成されている。第1ハード・パーティション1102(1)は、OS1、OS1に関連する構成データー1104、および1106におけるユーザー・データー用ストレージ専用である。同様に、第2ハード・パーティション1102(2)は、OS2、OS2に関連する構成データー1108、および1110におけるユーザー・データー用ストレージ専用である。説明の目的のために、ハード・パーティションについての1つの見方では、そのハード・パーティション内にインストールされたオペレーティング・システムの観点からは、ハード・パーティションはストレージの範囲を定める(例えば、オペレーティング・システムは、ストレージがハード・パーティションを超えて広がることを知らない)ということになる。
[0034] マルチオプション・ブート・ローダー1014は、実行されることによって、ユーザーに2つのオペレーティング・システムの内1つを選択させることができる(例えば、図1を参照のこと)。次いで、マルチオプション・ブート・ローダー1014は、第2インスタンスにおいて明示された(evidence)構成を生成するために、主ストレージ1030(1)をフォーマットし直すことができる。具体的には、マルチオプション・ブート・ローダー1014は、選択されなかったオペレーティング・システム(この場合、OS1)を削除し、1112において示すように、この記憶空間をユーザーに関するストレージのためにフォーマットし直すことができる。ある構成では、マルチオプション・ブート・ローダー1014は、ストレージをフォーマットし直して追加のユーザー空間を得るために、選択されたオペレーティング・システムと協働して動作することができる。
[0035] 図12は、ユーザーにオペレーティング・システムを選択させる主ストレージ1030(1)の他の実施態様を示す。この場合、主ストレージは、マルチオプション・ブート・ローダー1014と、OSヴォールト(vault)1202における多数のオペレーティング・システムの圧縮形態とを含む。ある実施態様では、圧縮されたオペレーティング・システムはバイナリー形態で、オペレーティング・システム毎の構成データーと共に格納される。明示的に示されていないが、この例では、OSヴォールト1202に格納された3つの圧縮された動作不能のオペレーティング・システム(OS1〜OS3)および関連構成データーがある。これらの態様については、図13に関係付けて以下で更に詳しく論ずることにする。
[0036] 図10に関係付けて先の論述において述べたように、デバイスの起動時に、マルチオプション・ブート・ローダー1014を認証できることを思い出されたい。また、前述のように、マルチオプション・ブート・ローダーは、ユーザーにデバイス上で実行する個々のOSを選択させることができる。マルチオプション・ブート・ローダー1014は、選択されたオペレーティング・システムに合わせて主ストレージ1030(1)を構成することができる。例えば、マルチオプション・ブート・ローダー1014は、OSヴォールト1202から、選択されたオペレーティング・システムに固有の構成データーを使用して、ソフト・パーティション1204(1)および1204(2)を主ストレージ上にインストールすることができる。マルチオプション・ブート・ローダー1014は、OSヴォールト1202における各オペレーティング・システムの開始アドレスおよび終端アドレス(ending address)を知ること、またはこれらにアクセスすることができる。ある場合には、OSヴォールトにおける個々のオペレーティング・システムの開始および終了アドレス(stop address)が、OSヴォールトにおいて列挙され、マルチオプション・ブート・ローダーによって読み出すことができる。マルチオプション・ブート・ローダーは、次いで、選択されたオペレーティング・システムをOSヴォールト1202から抽出し、このオペレーティング・システムの証明書の有効性を判断することができる。
[0037] 選択されたオペレーティング・システムの証明書が通用する場合、マルチオプション・ブート・ローダー1014は、選択されたオペレーティング・システムに関連する構成データーの一部を、1206(1)に示すように、主ストレージ1030(1)の一部に書き込むことができる。また、一旦選択されたオペレーティング・システムの有効性が確認されたなら、マルチオプション・ブート・ローダー1014は、有効性が確認されたOSを、1206(2)に示すように、OSパーティションに書き込むことができる(例えば、ソフト・パーティション1204(1)および1204(2)間で定められるように)。マルチオプション・ブート・ローダー1014は、1206(3)に示すように、ユーザー・ストレージを構成することができる。
[0038] マルチオプション・ブート・ローダー1014は、ブート・チェーン全体が安全で信頼できるように、主ストレージ1030(1)のこの構成設定(configuration)を遂行することができる。最初に、デバイス・ハードウェア1016はマルチオプション・ブート・ローダー1014をチェックすることができる。第2に、マルチオプション・ブート・ローダー1014は、オペレーティング・システムおよびあらゆる残りのコンポーネントが、信頼されたエンティティによって書かれ(author)そして署名されたことを確認する(ensure)ことができる。1つの観点から検討すると、マルチオプション・ブート・ローダー1014は、利用可能なオペレーティング・システムの各々に、統一された拡張可能なファームウェア・インターフェース(UEFI)セキュア・ブート・ローダー機能を、その全体的な機能の一部として提供することができる。
[0039] 要約すると、初期の起動時に、マルチオプション・ブート・ローダー1014は実行し、デバイス上で実行する個々のオペレーティング・システムをユーザーに選択させることができる(例えば、図3を参照のこと)。例示の目的のために、ユーザーはOS1を選択したと仮定する。応答して、マルチオプション・ブート・ローダー1014は、主ストレージ1030(1)をOS1に合わせて編成し、OS資格情報コンテナにおけるOS1の圧縮バイナリー形態から、動作可能な形態でOS1をストレージ上にインストールすることができる。この場合(図12の第2インスタンスにおいて示すように)、マルチオプション・ブート・ローダー1014は、どこに構成データーが位置するか(1206(1)において示す)、どこにオペレーティング・システムが位置するか(1206(2)において示す)、およびユーザー・データーに割り当てられたストレージがどこに位置するか(1206(3)において示す)定めるために、OS1によって指定された通りに、ソフト・パーティション1204(1)および1204(2)をインストールすることができる。本明細書において使用する場合、ソフト・パーティションは、個々のオペレーティング・システムに関係があるファイル・システム・フォーマットに関する。1つの観点からは、ソフト・パーティションをファイル・フォルダに類似させることができる。
[0040] マルチオプション・ブート・ローダー1014は、動作可能な形態のOS1をセクター毎に、オペレーティング・システムヴォールト1202における圧縮形態から、ストレージ部分1206(2)にインストールすることができる。この時点において、OS1は通常に動作することができ(例えば、それがデバイス上における唯一のオペレーティング・システムであるかのように)、主ストレージ1030(1)上のOSヴォールト1202の存在を認識する必要はない。実際、動作可能なOSがOSヴォールト(例えば、他の動作不能なオペレーティング・システムまたはそれらの構成データー)にアクセスできないように実施態様が構成される場合もある。したがって、1つのオペレーティング・システムに関連する安全が確保された情報(secure information)は、他のオペレーティングから保護されており、その逆も成り立つ。
[0041] 1206(1)において格納されたオペレーティング・システム特定構成データー(図11に関係付けて1104および1108において以上で導入された)は、プロビジョニング・データーおよび/またはユーザー設定を含むと考えることができる。プロビジョニング・データーは、とりわけ、モデム設定、較正データー、および/またはNV項目についての情報を含むことができる。つまり、構成データーは、正確に例示することが難しい可能性がある。何故なら、構成データーは、オペレーティング・システムのためのパーティション・レイアウト、およびマルチオプション・ブート・ローダー1014がパーティションに書き込むことができる、較正データーのような、他の構成データーの双方を含むからである。尚、プロビジョニング・データーは、特定のオペレーティング・システムに一意にすることができることを注記しておく。したがって、プロビジョニング・データーは、そのそれぞれのオペレーティング・システムに関係付けて、それぞれの構成データーの一部として格納することができる。この構成データーは、他のオペレーティング・システムには知らされず、アクセス不可能にすることができる。図10に関係付けて先に述べたように、ドライバー1018はオペレーティング・システムに特定とすることができる。したがって、ある場合には、オペレーティング・システム毎の構成データー1104が、そのオペレーティング・システムに固有のドライバーを含むことができる。これらのドライバーは、他のオペレーティング・システムにはアクセスできないままにしておくことができる。
[0042] 尚、主ストレージ1030(1)が第2インスタンスにおいて示すように構成されているとき、マルチオプション・ブート・ローダーはOS1を実行するためにデバイスをブートし直してもよいことを注記しておく。
[0043] 再度図12を参照すると、ユーザーが、選択されたオペレーティング・システムから他の利用可能なオペレーティング・システムの内の1つに換えることを選択したシナリオから、第3のインスタンスを得ることができる。(例えば、図5および図6を参照のこと)。(この場合、ユーザーはOS3を選択したと仮定する)。第2インスタンスから第3インスタンスへの移行において、ユーザーの個人的設定、OS特定ドライバー等のような構成データーをOSヴォールト1202に保存することができる。このため、ユーザーが後の時点においてOS1に戻ることを決定した場合、このデーターを利用可能にすることができる。オペレーティング・システム切り替えによって失われるおそれがある他のユーザー・データーが主ストレージに格納されている場合、マルチオプション・ブート・ローダー1014は、副ストレージ1030(2)へというように、他のユーザー・データーをどのようにバックアップするかユーザーに示すというような、処置を講ずることができる(図7および図10を参照のこと)。
[0044] 第4のインスタンスは、マルチオプション・ブート・ローダー1014が、現在インストールされており動作可能であるOS3に合わせて、主ストレージ1030(1)をフォーマットし直したことを示す。尚、ある実施態様には、ここで例示されるよりも多い、および/または異なるソフト・パーティション1204(1)’および1204(2)’を含むこともできるが、これらの実施態様は、以上および以下で説明する概念と矛盾しないことを注記しておく。例えば、簡略化のために、第2インスタンスおよび第4インスタンスの双方において、2つのソフト・パーティションを示したが、他の実施態様では、OS2およびOS3が異なる数のパーティションを指定することも可能である。尚、主ストレージ1030(1)が第4インスタンスにおいて示されるように構成されているとき、マルチオプション・ブート・ローダー1014はOS3を実行するためにデバイスをブートし直してもよいことを注記しておく。この場合、構成データーを1206(1)’で示し、OS3を1206(2)’で示し、ユーザー・データーを1206(3)’で示す。
[0045] 尚、この実施態様では、第1インスタンスにおいて、ユーザー選択前には、主ストレージ1030(1)上には動作可能な形態でインストールされたオペレーティング・システムはないことを注記しておく。しかしながら、他の実施態様では、デフォルトの構成において主ストレージ1030(1)上に、動作可能な形態でインストールされた個々のオペレーティング・システムが分散される(distribute)ことが可能である。ユーザーがそのオペレーティング・システムを選択した場合、先に進む準備ができている。ユーザーが異なるオペレーティング・システムを選択した場合、デフォルトのオペレーティング・システムを取り除くことができ、プロセスは再度図12の「第1インスタンス」において開始することができる。
[0046] 尚、ある実施態様では、オペレーティング・システムの変更(change)に進む前に種々のパラメータをチェックすることができることを注記しておく。例えば、これらの実施形態では、デバイスのバッテリー・レベルをチェックすることができる。オペレーティング・システムのインストール・プロセス中にバッテリーが切れないことを確保するために、バッテリー・レベルが、40%というような、定められた閾値よりも高くなければ、オペレーティング・システムの変更が開始されないようにしてもよい。更に、マルチオプション・ブート・ローダーは、オペレーティング・システムのインストール・プロセスが中断された場合、主ストレージを特定の構成に戻すように構成することができる。例えば、ユーザーは、マルチオプション・ブート・ローダーが主ストレージを第1インスタンスから第2インスタンスに変換している間に、バッテリーを取り出すこともできる。電源復帰時に、マルチオプション・ブート・ローダーはデバイスを第1インスタンスの構成に戻すことができる(例えば、使用可能なオペレーティング・システムや関連するストレージ構成がない)。次いで、マルチオプション・ブート・ローダーはプロセスを再度開始することができる(例えば、ユーザーにオペレーティング・システムを選択させる、または主ストレージの構成を再開し、更に選択されたオペレーティング・システムの使用可能なバージョンのインストールを再開する)。
[0047] 尚、製造中に、検査、較正、NV項目、NVM項目、無線(radio)、DPPの格納等のために、製造設備(例えば、工場)または他の設備においてデバイスを各オペレーティング・システムに繰り返しブートさせることができることを注記しておく。例えば、第1、第2、第3,および第4(forth)インスタンスにわたってデバイスを多数回巡回させることができる。本実施態様は、使用可能な各オペレーティング・システムが、製造中に他の(例えば、動作不能な)オペレーティング・システムが所有するデーターを変転させるのを防止することができる。例えば、OS1はブートして、OS2およびOS3のためのインストール・パーティションを削除すること、および/または動作不能なオペレーティング・システムに関係する種々の鍵および証明書にアクセスすること、および/またはこれらを上書きすることができない。
[0048] 要約すると、単一マルチオプション・ブート・ローダーのある実施態様は、利用可能な圧縮されたオペレーティング・システムのリストから、デバイス上での動作のために、個々のオペレーティング・システムをユーザーに選択させるGUIを生成することができる。単一マルチオプション・ブート・ローダーは、デバイス上に含まれるオペレーティング・システム毎に、UEFIに準拠したブート・ローダー機能を提供することができる。つまり、単一マルチオプション・ブート・ローダーは、主ストレージを構成し、選択されたオペレーティング・システムをインストールしつつ、一方ではデバイスのセキュリティを維持し、動作不能なオペレーティング・システムおよびそれらの構成データーを保護することができる。
[0049] 図13は、OSヴォールト1202を作成するように構成されたシステム1300を示す。2つのOSヴォールト構成が、OSヴォールト1202(1)および1202(2)として示されている。第1OSヴォールト構成は実線で示され、第2OSヴォールト構成は点線で区別されている。尚、図12に関係付けた先の論述から、この場合、OSヴォールトは、3つのオペレーティング・システムOS1、OS2、およびOS3の圧縮形態を収容することを思い出されたい。勿論、この実施態様では3つのオペレーティング・システムが利用されるが、他の実施態様では、2つのオペレーティング・システムまたは4つ以上のオペレーティング・システムを利用することができる。このシステムは、ブート・チェーン・キット1302を利用することができる(この場合、オペレーティング・システムOS1、OS2、およびOS3毎に、それぞれ、エレメント1302(1)、1302(2)、および1302(3)を伴う)。第1構成では、1つの圧縮バイナリー・ファイル1304を作るためにブート・チェーン・キット1302を利用することができる。個々のオペレーティング・システムに固有の任意の構成データーまたは他のデーターを、それぞれOS1〜OS3に専用のソフト・パーティション1306(1)〜1306(3)に格納することができる。圧縮バイナリー・ファイルは、オペレーティング・システム毎に開始および終了アドレスのリストを含むことができる。
[0050] 第2構成では、各オペレーティング・システム(OS1〜OS3)が圧縮形態でそれ自体の専用バイナリー・ファイル1304(1)〜1304(3)にそれぞれ格納される。図示した構成では、OS毎のバイナリー・ファイルは、そのOSのためのソフト・パーティション1306(1)〜1306(3)において構成データーに隣接して配置されている。他の構成では、OSバイナリー・ファイルを一緒に纏め、構成データーも一緒に纏めることができる。
技法例
[0051] 図14は、マルチ・オペレーティング・システム選択技法または方法1400のフローチャートを示す。
[0051] 図14は、マルチ・オペレーティング・システム選択技法または方法1400のフローチャートを示す。
[0052] ブロック1402において、本方法は多数のオペレーティング・システムを圧縮された動作不能な形態で主ストレージの第1部分に書き込むことができる。ある場合には、動作不能な形態は、多数の圧縮された動作不能オペレーティング・システムの全てを収容する1つのバイナリー・ファイルである。他の場合では、バイナリー・ファイルは圧縮された動作不能な各オペレーティング・システムに専用である。勿論、バイナリー・ファイルがこの例では利用されているが、動作不能な形態の多数のオペレーティング・システムを格納するためには、他の圧縮ファイル構成も利用することができる。
[0053] ブロック1404において、本方法は1つのブート・ローダーを主ストレージの第2部分にインストールすることができる。この1つのブート・ローダーは、多数のオペレーティング・システムの内任意の1つを、主ストレージの第3部分に動作可能な形態でインストールするように構成することができる。主ストレージの第1部分における多数のオペレーティング・システムの内他のものに関連するアドレスは、使用可能なオペレーティング・システムによる読み出しや書き込みから保護することができる。
[0054] 図15は、マルチ・オペレーティング・システム選択技法または方法1500のフローチャートを示す。
[0055] ブロック1502において、本方法は、個々のオペレーティング・システムの使用可能なインスタンスを、多数の動作不能な圧縮されたオペレーティング・システムが格納されているデバイス(例えば、前述のデバイス)上にインストールする命令を受けることができる。
[0055] ブロック1502において、本方法は、個々のオペレーティング・システムの使用可能なインスタンスを、多数の動作不能な圧縮されたオペレーティング・システムが格納されているデバイス(例えば、前述のデバイス)上にインストールする命令を受けることができる。
[0056] ブロック1504において、本方法はオペレーティング・システムの動作不能な圧縮バージョンにアクセスすることができる。ある実施態様では、動作不能な圧縮バージョンは、専用ファイルとして格納することができる。他の実施態様では、動作不能な圧縮バージョンは、他の選択されないオペレーティング・システムの動作不能な圧縮バージョンも含む1つのファイルの一部にすることができる。
[0057] ブロック1506において、本方法はこのオペレーティング・システムの動作不能な圧縮バージョンの真正性を検証することができる。例えば、この検証は、動作不能な圧縮形態のディジタル署名をチェックすることを伴うことができる。
[0058] ブロック1508において、本方法は、このオペレーティング・システムに一意のやり方でデバイスを構成することができる。ある場合には、この構成は、選択されたオペレーティング・システムによって(および/またはオペレーティング・システムのために)指定されたやり方で主ストレージ上にソフト・パーティションをインストールすることを伴うことができる。
[0059] ブロック1510において、本方法は、オペレーティング・システムの使用可能なインスタンスをインストールすることができる。ある場合には、本方法は、どのオペレーティング・システムが使用可能な形態でデバイス上にインストールされたかを示す通知を送ることができる。例えば、この通知は、デバイスの製造業者、またはデバイスに関連するセルラ・サービス提供業者のようなサービス提供業者に送ることができる。使用の中でもとりわけ、この通知は請求書発行の目的に利用することができる。例えば、セルラ・サービス提供業者が、第1エンティティからの第1オペレーティング・システムと第2エンティティからの第2オペレーティング・システムとを有するスマート・フォンを販売する場合がある。セルラ・サービス提供業者はこの通知を集めて、それぞれのオペレーティング・システムを実行しているスマート・フォンの販売台数に基づいて、第1および第2エンティティに支払いを行うことができる。この支払いは一時払いとすることができ、または周期的な支払いにすることもできる。例えば、ユーザーが、ある時間期間には第1オペレーティング・システムを選択し、次いで第2オペレーティング・システムに切り替えることもあり得る。その場合、それらのオペレーティング・システムの使用に対して各エンティティに報酬を支払うことができる。代わりの構成では、この通知を製造業者に送ることができ、製造業者は、通知に基づいて、第1または第2エンティティに報酬を支払うことができる。
[0060] 以上で説明した方法は、図1〜13に関係付けて先に説明したシステムおよび/またはデバイスによって、および/または他のデバイスおよび/またはシステムによって実行することができる。これらの方法を説明した順序は、限定として解釈されることを意図しているのではなく、本方法または代替方法を実現するためには、説明したアクトを任意の数だけ、任意の順序で組み合わせることができる。更に、本方法は、デバイスがこの方法を実現できるように、任意の適したハードウェア、ソフトウェア、ファームウェア、またはその組み合わせで実現することができる。1つの場合には、本方法は、計算デバイスのプロセッサーによる実行が、この計算デバイスに本方法を実行させるように、1組の命令としてコンピューター読み取り可能記憶媒体上に格納される。
結論
[0061] 以上構造的特徴および/または方法論的アクトに特定的な文言で主題について説明したが、添付した特許請求の範囲において定められる主題は、必ずしも以上で説明した特定的な特徴やアクトには限定されないことは理解されよう。むしろ、以上で説明した特定的な特徴およびアクトは、特許請求の範囲を実現する形態例として開示したまでである。
[0061] 以上構造的特徴および/または方法論的アクトに特定的な文言で主題について説明したが、添付した特許請求の範囲において定められる主題は、必ずしも以上で説明した特定的な特徴やアクトには限定されないことは理解されよう。むしろ、以上で説明した特定的な特徴およびアクトは、特許請求の範囲を実現する形態例として開示したまでである。
Claims (10)
- デバイスであって、
多数の圧縮されたオペレーティング・システムが動作不能な形態で格納されている主ストレージと、
個々のオペレーティング・システムのユーザー選択を受けるように構成されたマルチオプション・ブート・ローダーを実行するように構成されたプロセッサーであって、前記マルチオプション・ブート・ローダーが、前記個々のオペレーティング・システムに特定的な構成で前記主ストレージ上にファイル・フォルダ構造をインストールし、前記ファイル・フォルダ構造に関係付けて、前記個々のオペレーティング・システムを前記主ストレージ上に動作可能な形態でインストールするように構成される、プロセッサーと、
を含む、デバイス。 - 請求項1に記載のデバイスにおいて、前記マルチオプション・ブート・ローダーが、前記デバイス上における唯一のブート・ローダーである、デバイス。
- 請求項1に記載のデバイスにおいて、前記マルチオプション・ブート・ローダーが、前記多数の圧縮されたオペレーティング・システムの内他のものに対する後続のユーザー選択を受け、前記個々のオペレーティング・システムの前記動作可能な形態および前記ファイル・フォルダ構造を削除し、前記他のオペレーティング・システムに固有の他のファイル・フォルダ構造をインストールし、前記他のオペレーティング・システムの動作不能な圧縮形態から、前記他のオペレーティング・システムの動作可能な形態をインストールするように構成される、デバイス。
- 請求項1に記載のデバイスにおいて、前記マルチオプション・ブート・ローダーが、前記多数の圧縮されたオペレーティング・システムの各々に対して、統一拡張可能ファームウェア・インターフェース(UEFI)に準拠したブート・ローダーを含む、デバイス。
- 請求項1に記載のデバイスにおいて、前記多数の圧縮されたオペレーティング・システムの前記動作不能な形態が、バイナリー・ファイルを含む、デバイス。
- 請求項1に記載のデバイスにおいて、前記デバイスが、スマート・フォン、タブレット、ウェアラブル・スマート・デバイス、またはパーソナル・コンピューターを含む、デバイス。
- 請求項1に記載のデバイスであって、更に、通信コンポーネントを含み、前記プロセッサーが、更に、前記個々のオペレーティング・システムが動作可能な形態でインストールされたことを示すメッセージを、前記通信コンポーネントに送らせるように構成される、デバイス。
- デバイスであって、
ディスプレイと、
ストレージと、
前記ストレージ上にインストールされた少なくとも2つの動作可能なオペレーティング・システムと、
個々のオペレーティング・システムのユーザー選択を受け、前記少なくとも2つのオペレーティング・システムの内他のものを削除し、前記削除されたオペレーティング・システムに専用であったストレージの部分をユーザー・データー・ストレージにフォーマットするように構成されたプロセッサーと、
を含む、デバイス。 - 請求項8に記載のデバイスにおいて、前記デバイスが、更に、前記少なくとも2つのオペレーティング・システムの動作不能な圧縮形態を維持するように構成され、前記動作不能な圧縮形態から、前記少なくとも2つの動作可能なオペレーティング・システムを復元することができる、デバイス。
- 請求項8に記載のデバイスにおいて、前記プロセッサーが、前記デバイス上にあるハードウェア・ボタンから前記ユーザー選択を受けるように構成される、デバイス。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/225,096 US9697010B2 (en) | 2014-03-25 | 2014-03-25 | User selectable operating systems |
US14/225,096 | 2014-03-25 | ||
PCT/US2015/021623 WO2015148280A1 (en) | 2014-03-25 | 2015-03-20 | User selectable operating systems |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017509085A true JP2017509085A (ja) | 2017-03-30 |
Family
ID=52815307
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016559309A Pending JP2017509085A (ja) | 2014-03-25 | 2015-03-20 | ユーザー選択可能なオペレーティング・システム |
Country Status (10)
Country | Link |
---|---|
US (1) | US9697010B2 (ja) |
EP (1) | EP3123310A1 (ja) |
JP (1) | JP2017509085A (ja) |
KR (1) | KR20160136441A (ja) |
CN (1) | CN106104473A (ja) |
AU (1) | AU2015236460A1 (ja) |
CA (1) | CA2939845A1 (ja) |
MX (1) | MX2016012121A (ja) |
RU (1) | RU2016137900A (ja) |
WO (1) | WO2015148280A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9703950B2 (en) * | 2012-03-30 | 2017-07-11 | Irdeto B.V. | Method and system for preventing and detecting security threats |
US9582393B2 (en) * | 2014-06-20 | 2017-02-28 | Dell Products, Lp | Method to facilitate rapid deployment and rapid redeployment of an information handling system |
KR20160049632A (ko) * | 2014-10-28 | 2016-05-10 | 삼성전자주식회사 | 렌즈를 인식하는 전자 장치 및 동작 방법 |
EP3062225B1 (en) * | 2015-02-24 | 2019-07-03 | Huawei Technologies Co., Ltd. | Multi-operating system device, notification device and methods thereof |
JP6512895B2 (ja) * | 2015-03-27 | 2019-05-15 | キヤノン株式会社 | 撮像装置、その制御方法及びプログラム |
CN104794014B (zh) * | 2015-04-08 | 2020-08-25 | 华为技术有限公司 | 系统运行的方法及智能终端 |
KR102494241B1 (ko) * | 2016-08-18 | 2023-02-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작 방법 |
US20180059650A1 (en) * | 2016-08-31 | 2018-03-01 | Esab Ab | Techniques for multiple application banks in a welding or cutting system |
CN106502675A (zh) * | 2016-10-27 | 2017-03-15 | 铭软件股份有限公司 | 一种用于管理同一台电脑上的多操作系统的方法 |
CN108062386A (zh) * | 2017-12-14 | 2018-05-22 | 易知成都数据服务有限公司 | 一种实现web页面地域跨级别多选的方法 |
CN113126575B (zh) * | 2019-12-31 | 2022-07-26 | 捷普电子(无锡)有限公司 | 用于装配操作流程的引导方法及引导系统 |
WO2021200926A1 (ja) * | 2020-04-01 | 2021-10-07 | パナソニックIpマネジメント株式会社 | ストレージシステム |
US11899949B2 (en) * | 2020-07-17 | 2024-02-13 | Dish Network Technologies India Private Limited | Methods and systems for dynamic configuration and effective usage for allocating memory in media presentations or like devices |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434695B1 (en) | 1998-12-23 | 2002-08-13 | Apple Computer, Inc. | Computer operating system using compressed ROM image in RAM |
US6727920B1 (en) | 1999-03-11 | 2004-04-27 | Micron Technology, Inc. | Multiple operating system quick boot utility |
US6401183B1 (en) | 1999-04-01 | 2002-06-04 | Flash Vos, Inc. | System and method for operating system independent storage management |
US6807665B2 (en) | 2001-01-18 | 2004-10-19 | Hewlett-Packard Development Company, L. P. | Efficient data transfer during computing system manufacturing and installation |
US6920555B1 (en) * | 2001-03-10 | 2005-07-19 | Powerquest Corporation | Method for deploying an image into other partition on a computer system by using an imaging tool and coordinating migration of user profile to the imaged computer system |
US8726294B2 (en) | 2010-10-01 | 2014-05-13 | Z124 | Cross-environment communication using application space API |
US9152582B2 (en) | 2010-10-01 | 2015-10-06 | Z124 | Auto-configuration of a docked system in a multi-OS environment |
US6928542B2 (en) | 2001-11-15 | 2005-08-09 | Inventec Corporation | Method and system for starting a multiple PDA operating system through a menu |
US7136994B2 (en) | 2003-05-13 | 2006-11-14 | Intel Corporation | Recovery images in an operational firmware environment |
CN1658185A (zh) | 2004-02-18 | 2005-08-24 | 国际商业机器公司 | 相互独立地共存多个操作系统的计算机系统与其切换方法 |
US7424601B2 (en) | 2004-07-07 | 2008-09-09 | Yongyong Xu | Methods and systems for running multiple operating systems in a single mobile device |
US20070011444A1 (en) * | 2005-06-09 | 2007-01-11 | Grobman Steven L | Method, apparatus and system for bundling virtualized and non-virtualized components in a single binary |
KR100725394B1 (ko) * | 2005-07-08 | 2007-06-07 | 삼성전자주식회사 | 복수의 운영체계에서 특정 운영체계를 선택적으로 설치하는컴퓨터 시스템 및 방법 |
US7818736B2 (en) | 2005-09-14 | 2010-10-19 | International Business Machines Corporation | Dynamic update mechanisms in operating systems |
KR100746025B1 (ko) | 2006-01-12 | 2007-08-06 | 삼성전자주식회사 | 운영체제 스위칭 장치 및 방법 |
KR101121641B1 (ko) | 2006-07-03 | 2012-04-16 | 엘지전자 주식회사 | 시스템 동작 제어 장치 및 방법 |
US7779243B2 (en) | 2006-12-29 | 2010-08-17 | Intel Corporation | Dual operating system computing system |
US9003173B2 (en) | 2007-09-28 | 2015-04-07 | Microsoft Technology Licensing, Llc | Multi-OS (operating system) boot via mobile device |
US20110098583A1 (en) | 2009-09-15 | 2011-04-28 | Texas Instruments Incorporated | Heart monitors and processes with accelerometer motion artifact cancellation, and other electronic systems |
US8499132B1 (en) * | 2008-02-12 | 2013-07-30 | Netapp, Inc. | Software module for using flash memory as a secondary permanent storage device |
US8868899B2 (en) | 2009-07-20 | 2014-10-21 | Motorola Mobility Llc | System and method for switching between environments in a multi-environment operating system |
US8762699B1 (en) | 2009-12-05 | 2014-06-24 | Cms Products Inc. | System, apparatus, and method for initiating a reboot of a personal computer system by pressing a button on an attached storage device and causing the operating system on the attached storage device to be booted |
US20120102314A1 (en) | 2010-04-01 | 2012-04-26 | Huizhou TCL Mobile Communications Co., Ltd. | Smart phone system and booting method thereof |
US8799631B2 (en) | 2010-11-11 | 2014-08-05 | Lsi Corporation | Dynamically select operating system (OS) to boot based on hardware states |
US9010641B2 (en) | 2010-12-07 | 2015-04-21 | Hand Held Products, Inc. | Multiple platform support system and method |
CN102045449A (zh) | 2010-12-31 | 2011-05-04 | 周良勇 | 一种多操作系统智能手机 |
TWI528162B (zh) | 2011-01-26 | 2016-04-01 | 威盛電子股份有限公司 | 電腦系統及其作業系統切換方法 |
TWI559167B (zh) * | 2011-11-04 | 2016-11-21 | 系微股份有限公司 | 統一可延伸韌體介面(uefi)相容計算裝置和用於在uefi相容計算裝置中管控一安全啓動之方法 |
CN103136052A (zh) * | 2011-11-25 | 2013-06-05 | 展讯通信(上海)有限公司 | 移动终端及安装有多个操作系统的移动终端的控制方法 |
WO2013142465A1 (en) | 2012-03-19 | 2013-09-26 | Sony Mobile Communications Ab | Device including a plurality of selectable operating systems |
US9342243B2 (en) | 2012-11-28 | 2016-05-17 | Lenovo (Beijing) Co., Ltd. | Method and electronic apparatus for implementing multi-operating system |
US9766944B2 (en) | 2014-03-25 | 2017-09-19 | Microsoft Technology Licensing, Llc | Dynamic partition dual boot mobile phone device |
US20150277934A1 (en) | 2014-03-25 | 2015-10-01 | Microsoft Technology Licensing, Llc | One time dual boot mobile phone device |
-
2014
- 2014-03-25 US US14/225,096 patent/US9697010B2/en active Active
-
2015
- 2015-03-20 CN CN201580016002.2A patent/CN106104473A/zh active Pending
- 2015-03-20 WO PCT/US2015/021623 patent/WO2015148280A1/en active Application Filing
- 2015-03-20 JP JP2016559309A patent/JP2017509085A/ja active Pending
- 2015-03-20 MX MX2016012121A patent/MX2016012121A/es unknown
- 2015-03-20 EP EP15715032.7A patent/EP3123310A1/en not_active Withdrawn
- 2015-03-20 KR KR1020167029800A patent/KR20160136441A/ko unknown
- 2015-03-20 CA CA2939845A patent/CA2939845A1/en not_active Abandoned
- 2015-03-20 RU RU2016137900A patent/RU2016137900A/ru not_active Application Discontinuation
- 2015-03-20 AU AU2015236460A patent/AU2015236460A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US9697010B2 (en) | 2017-07-04 |
CA2939845A1 (en) | 2015-10-01 |
AU2015236460A1 (en) | 2016-09-08 |
CN106104473A (zh) | 2016-11-09 |
EP3123310A1 (en) | 2017-02-01 |
US20150277929A1 (en) | 2015-10-01 |
WO2015148280A1 (en) | 2015-10-01 |
KR20160136441A (ko) | 2016-11-29 |
RU2016137900A (ru) | 2018-03-27 |
MX2016012121A (es) | 2016-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2017509085A (ja) | ユーザー選択可能なオペレーティング・システム | |
US10055218B2 (en) | System and method for adding and storing groups of firmware default settings | |
CN101650660B (zh) | 从中央存储装置引导计算机系统 | |
US20160180094A1 (en) | Method for optimizing boot time of an information handling system | |
US10810017B2 (en) | Systems and methods for handling firmware driver dependencies in host operating systems while applying updates from bootable image file | |
TWI279725B (en) | Computer system, system software installation method, and software installation method of portable computer | |
WO2016074127A1 (zh) | 计算机设备及计算机设备内存启动的方法 | |
US20170031692A1 (en) | Method for managing device and electronic device supporting the same | |
US10664598B1 (en) | Firmware security patch deployment | |
US7721078B2 (en) | Method and system to dynamically boot to a non-visible partition | |
US9672047B1 (en) | Systems and methods for accessing a bootable partition on a serial peripheral interface device | |
US10698696B2 (en) | Chipset fuse programming system | |
US11861349B2 (en) | Modular firmware updates in an information handling system | |
US9852029B2 (en) | Managing a computing system crash | |
US8499142B1 (en) | UEFI boot loader for loading non-UEFI compliant operating systems | |
US20140188949A1 (en) | Methods and systems for supply chain assurance of information handling system code | |
US11340882B2 (en) | Systems and methods for enforcing update policies while applying updates from bootable image file | |
US9778936B1 (en) | Booting a computing system into a manufacturing mode | |
TWI662419B (zh) | 具有儲存實體資源的本地磁碟的網路系統 | |
US20150143093A1 (en) | Plurality of interface files usable for access to bios | |
US20150212866A1 (en) | Management system for service of multiple operating environments, and methods thereof | |
TWI807384B (zh) | 儲存裝置 | |
US20150363712A1 (en) | Systems and methods for distinguishing information handling system provider-supported information handling resource via system license | |
US20150149144A1 (en) | Simulating non-volatile memory | |
US20230267045A1 (en) | System on a chip-agnostic dynamic firmware volumes for basic input/output extension |