JPWO2009113394A1 - マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 - Google Patents
マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 Download PDFInfo
- Publication number
- JPWO2009113394A1 JPWO2009113394A1 JP2010502762A JP2010502762A JPWO2009113394A1 JP WO2009113394 A1 JPWO2009113394 A1 JP WO2009113394A1 JP 2010502762 A JP2010502762 A JP 2010502762A JP 2010502762 A JP2010502762 A JP 2010502762A JP WO2009113394 A1 JPWO2009113394 A1 JP WO2009113394A1
- Authority
- JP
- Japan
- Prior art keywords
- boot loader
- context
- memory space
- storage unit
- boot
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 28
- 230000006870 function Effects 0.000 claims description 20
- 230000004075 alteration Effects 0.000 claims description 3
- 230000008859 change Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 230000004913 activation Effects 0.000 description 4
- 230000010076 replication Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/145—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2105—Dual mode as a secondary aspect
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2149—Restricted operating environment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
Description
第1のオペレーティングシステム(Operating System、以下OSという)と第2のOSとの少なくとも2つのOSを起動するマルチOS起動装置において、
(1)メモリ領域を有し、前記メモリ領域に対してメモリ空間が定義される1次記憶部と、
(2)セカンドブートローダと、前記第2のOSとを記憶する2次記憶部と、
(3)CPU(Central Processing Unit )に対する制御情報を示すコンテキストであって前記第1のOS用のコンテキストである第1のコンテキストで動作する前記第1のOSのもとで動作するファーストブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで動作させることにより、前記第1のOSが管理する第1のメモリ空間として前記第1のコンテキストにより前記1次記憶装置に対して定義された前記1次記憶部のメモリ領域に前記2次記憶部から前記セカンドブートローダと前記第2のOSとを前記ファーストブートローダにロードさせるOS実行部と、
(4)前記第1のメモリ空間として定義されたメモリ領域にロードされた前記セカンドブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで実行することにより前記第2のOSが管理する第2のメモリ空間として定義されるメモリ領域と前記セカンドブートローダ及び前記第2のOSがロードされたメモリ領域とを含む第3のメモリ空間を前記1次記憶部に対して定義する前記セカンドブートローダ用のコンテキストを前記セカンドブートローダに生成させると共に生成された前記セカンドブートローダ用のコンテキストへ前記第1のコンテキストから切り替えさせ、前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSを前記セカンドブートローダにロードさせると共に前記第2のOS用のコンテキストを生成させ、生成された前記第2のOS用のコンテキストへ前記セカンドブートローダ用のコンテキストから切り替えさせ、前記第2のOS用のコンテキストのもとで前記セカンドブートローダに前記第2のOSの起動を実行させるローダ実行部と
を備えたことを特徴とする。
暗号化されており、
前記2次記憶部に記憶されたセカンドブートローダは、
暗号化された前記第2のOSを復号する機能を有し、
前記ローダ実行部は、
前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより、前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた暗号化された前記第2のOSを前記セカンドブートローダに復号させ、前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に復号された前記第2のOSを前記セカンドブートローダにロードさせることを特徴とする。
前記セカンドブートローダの改ざんをチェックする機能を有し、
前記ローダ実行部は、
前記第1のコンテキストで動作中の前記第1のOSのもとで前記セカンドブートローダを実行することにより、前記セカンドブートローダ自信が改ざんされているかどうかを前記セカンドブートローダに判定させることを特徴とする。
前記第2のOSの改ざんをチェックする機能を有し、
前記ローダ実行部は、
前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより、前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSが改ざんされているかどうかを前記セカンドブートローダに判定させることを特徴とする。
前記第2のOSが複製かどうかをチェックする機能を有し、
前記ローダ実行部は、
前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより、前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSが改ざんされているかどうかを前記セカンドブートローダに判定させることを特徴とする。
第1のオペレーティングシステム(Operating System、以下OSという)と第2のOSとの少なくとも2つのOSを起動するコンピュータを、
(1)メモリ領域を有し、前記メモリ領域に対してメモリ空間が定義される1次記憶部、
(2)セカンドブートローダと、前記第2のOSとを記憶する2次記憶部、
(3)CPU(Central Processing Unit )に対する制御情報を示すコンテキストであって前記第1のOS用のコンテキストである第1のコンテキストで動作する前記第1のOSのもとで動作するファーストブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで動作させることにより、前記第1のOSが管理する第1のメモリ空間として前記第1のコンテキストにより前記1次記憶装置に対して定義された前記1次記憶部のメモリ領域に前記2次記憶部から前記セカンドブートローダと前記第2のOSとを前記ファーストブートローダにロードさせるOS実行部、
(4)前記第1のメモリ空間として定義されたメモリ領域にロードされた前記セカンドブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで実行することにより前記第2のOSが管理する第2のメモリ空間として定義されるメモリ領域と前記セカンドブートローダ及び前記第2のOSがロードされたメモリ領域とを含む第3のメモリ空間を前記1次記憶部に対して定義する前記セカンドブートローダ用のコンテキストを前記セカンドブートローダに生成させると共に生成された前記セカンドブートローダ用のコンテキストへ前記第1のコンテキストから切り替えさせ、前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSを前記セカンドブートローダにロードさせると共に前記第2のOS用のコンテキストを生成させ、生成された前記第2のOS用のコンテキストへ前記セカンドブートローダ用のコンテキストから切り替えさせ、前記第2のOS用のコンテキストのもとで前記セカンドブートローダに前記第2のOSの起動を実行させるローダ実行部、
として機能させることを特徴とする。
メモリ領域を有すると共に前記メモリ領域に対してメモリ空間が定義される1次記憶部を備えると共に、第1のオペレーティングシステム(Operating System、以下OSという)と第2のOSとの少なくとも2つのOSを起動するマルチOS起動装置が行うマルチOS起動方法において、
(1)2次記憶部が、セカンドブートローダと、前記第2のOSとを記憶し、
(2)OS実行部が、CPU(Central Processing Unit )に対する制御情報を示すコンテキストであって前記第1のOS用のコンテキストである第1のコンテキストで動作する前記第1のOSのもとで動作するファーストブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで動作させることにより、前記第1のOSが管理する第1のメモリ空間として前記第1のコンテキストにより前記1次記憶装置に対して定義された前記1次記憶部のメモリ領域に前記2次記憶部から前記セカンドブートローダと前記第2のOSとを前記ファーストブートローダにロードさせ、
(3)ローダ実行部が、前記第1のメモリ空間として定義されたメモリ領域にロードされた前記セカンドブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで実行することにより前記第2のOSが管理する第2のメモリ空間として定義されるメモリ領域と前記セカンドブートローダ及び前記第2のOSがロードされたメモリ領域とを含む第3のメモリ空間を前記1次記憶部に対して定義する前記セカンドブートローダ用のコンテキストを前記セカンドブートローダに生成させると共に生成された前記セカンドブートローダ用のコンテキストへ前記第1のコンテキストから切り替えさせ、前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSを前記セカンドブートローダにロードさせると共に前記第2のOS用のコンテキストを生成させ、生成された前記第2のOS用のコンテキストへ前記セカンドブートローダ用のコンテキストから切り替えさせ、前記第2のOS用のコンテキストのもとで前記セカンドブートローダに前記第2のOSの起動を実行させることを特徴とする。
図1は計算機100として実現される実施の形態1におけるマルチOS起動装置の構成図である。実施の形態1における計算機100(マルチOS起動装置)は、第2のOSのローディングを2段階に分けることで、第2のOSを第1のOSとは異なる空間にローディングし、第2のOSの内容を第1のOSから参照できないようにする。
(1)CPU110は、レジスタ群111、レジスタ群111の1つであるページテーブルの先頭物理アドレスを指定するPTBR(ページテーブルベースレジスタ)112、CPU110が1次記憶装置120をアクセスする際、PTBR112が指すページテーブルの設定にしたがって論理アドレスと物理アドレスの変換を実現するMMU(Memory Management Unit)113を備える。
(2)「ページテーブル」とは、論理アドレスと物理アドレスの対応表が記述されているものであり、ある命令がページテーブルに物理アドレスとの対応が記述されていない論理アドレスをアクセスした場合、MMU113は例外を発生させCPU110に通知する機能を持つ。この例外はOSによって処理され、例えば、対応する物理アドレスを見つけ出し、ページテーブルの対応表を書き換え、例外を発生させた命令を再度実行するなどの処理を行う。
1次記憶装置120は、OSまたはプログラムに割当てられた物理アドレス領域を持つ3つのメモリ空間である、第1のメモリ空間150、第2のメモリ空間160、第3のメモリ空間170が定義されている。これらのメモリ空間には、OSまたは、プログラムが管理するページテーブルが存在する。OSまたはプログラムは、自身の管理するメモリ空間の物理アドレスに対してのみ、論理アドレスとの対応付けを行う。すなわち、OSあるいはプログラムは、自身の管理するメモリ空間以外のメモリ空間にはアクセスできない。例えば、以下に説明する第1のOSは第1のメモリ空間150のみを管理対象とするので第1のメモリ空間150のみアクセス可能であり、後述する第2のメモリ空間160や第3のメモリ空間170にはアクセスできない。
(1)第1のメモリ空間150は、第1のOS151が動作するメモリ空間である。上記のように、第1のOS151は、第1のメモリ空間150のみを管理する。第1のページテーブル152は、第1のOS151によって管理される。第1のページテーブル152は、第1のメモリ空間150の構成が記述されている。
(2)ファイルシステムドライバ153は、第1のOS151が提供する機能であり、2次記憶装置130に格納されるファイルへのアクセス手段を提供する。
(3)ファーストブートローダ154は、第1のOS151上で動作する「特権モードのプログラム」であり、ファーストブートローダ実行ファイル132は2次記憶装置130に格納されている。「特権モードのプログラム」とは、例えば、カーネルモードのデバイスドライバなど、計算機のすべての資源にアクセス可能なプログラムのことをいう。ファーストブートローダ154は、ファイルシステムドライバ153を用いて、2次記憶装置130にある第2のOSイメージ131、セカンドブートローダ実行ファイル133を第1のメモリ空間上にロードするファイルロード部155を持つ。
第2のメモリ空間160は、第2のOS161が動作するメモリ空間である。後述のように第2のOS161の起動後は、第2のメモリ空間160は、第2のOS161により管理される。第2のページテーブル162は第2のOS161によって管理される。第2のページテーブル162は、第2のOSが起動する第2のメモリ空間160の構成が記述されている。
第3のメモリ空間170は、セカンドブートローダ171が動作するメモリ空間である。第3のページテーブル172は、セカンドブートローダ171によって管理される。すなわち、セカンドブートローダ171は第3のメモリ空間170を管理する。第3のページテーブル172は、第3のメモリ空間170の構成が記述されている。図2の説明で後述するが、第3のメモリ空間170は、第2のメモリ空間160を含む。セカンドブートローダ171は、ファーストブートローダ154によって起動されるプログラムであり、第2のOS161を起動するための処理を行う。
セカンドブートローダ171は、第3のページテーブル172、コンテキスト作成部173、コンテキスト変更部174、OSロード部175、OS起動部176を備える。
(1)コンテキスト作成部173は、セカンドブートローダ用のコンテキストを作成する。
(2)コンテキスト変更部174は、コンテキスト作成部173によって作成されたコンテキストをCPU110のレジスタ群111に設定する。ここでいうコンテキストとは、CPU110が持つレジスタ群111やそのレジスタ群111の設定に必要なメモリ領域(例えば、ページテーブル、スタック領域など)を指す。
(3)OSロード部175は、ファーストブートローダ154によって第1のメモリ空間上にロードされた第2のOSイメージを第2のメモリ空間上にロードする。
(4)OS起動部176は、第2のOSを起動させる。
(1)フェーズ1は、第1のOS151起動直後のメモリ空間である。
(2)フェーズ2は、セカンドブートローダ171起動直前のメモリ空間である。
(3)フェーズ3は、セカンドブートローダ171が自身のコンテキストに切り替えた後のメモリ空間である。したがって、セカンドブートローダ171は第1のメモリ空間150を参照できない。
(4)フェーズ4は、第2のOS161起動後のメモリ空間である。第1のOS151及び第1のOS151により実行されるプログラム(例えばファーストブートローダ154)からは、第2のメモリ空間160を参照できない。
第1のOS151は、起動時の初期化処理にて、第2のOS161が使用する第2のメモリ空間160を予約済みとし、第1のメモリ空間150のみを管理する。第1のOS151は、第2のメモリ空間160の構成に使用する第2のメモリ空間構成情報を予め保有している。
(1)1つは、BIOSから取得する1次記憶装置の容量を実際の値ではなく、第2のメモリ空間を引いた値を使用するようにOSのメモリ管理ルーチンを書き換える。
(2)もう1つは、OSのブートパラメータに1次記憶装置の容量を指定するオプションがある場合、実際に搭載されている1次記憶装置の容量から第2のメモリ空間を引いた値を指定する。
(3)もう1つは、BIOSのエミュレーションレイヤを作成し第2のメモリ空間を引いた値を返すようにする。後者の2通りの場合は、第1のOSを改変することなく本実施の形態が適用可能となる。これらの手段により、第1のOS151の、1次記憶装置120には第1のメモリ空間150しかないものとして動作させることが可能となる。
次に、図3のフローチャートを参照して、図2におけるフェーズ2で示す1次記憶装置120の構成が構築される手順を説明する。前述のように、図2のフェーズ2は、セカンドブートローダ171の起動直前を示している。図2のフェーズ2は、第1のOS151によって第1のメモリ空間150が管理されている状態である。
第1のOSは、2次記憶装置130に格納されているファーストブートローダ実行ファイル132を第1のOS151上で動作する特権モードのプログラムとして起動する(S100)。ファーストブートローダ実行ファイル132が第1のメモリ空間150上にロードされたものをファーストブートローダ154とする。次に、ファーストブートローダ154のファイルロード部155は、第1のOS151が提供する機能であるファイルシステムドライバ153を用いて、2次記憶装置130より第2のOSイメージ131とセカンドブートローダ実行ファイル133とを第1のメモリ空間150の一部の空間(部分空間)上にロードする(S101)。第1のメモリ空間150上にロードされたものをセカンドブートローダ171、第2のOSイメージ211とする。これらの手段により、図2の「フェーズ2」で示す1次記憶装置120の構成が構築される。なお、ファーストブートローダ154のファイルロード部155によってロードされた第2のOSイメージ211は、イメージファイルのバイナリ情報をそのまま第1のメモリ空間150上にロードしたものであり、実際に第2のメモリ空間160上で第2のOS161を起動するのはセカンドブートローダ171によって行われる。
次に、図2における「フェーズ3」で示す1次記憶装置120の構成が構築される手順を説明する。図2のフェーズ3は、前述のように、セカンドブートローダ171による自己のコンテキストへの切り替え後を示している。ファーストブートローダ154は、第1のメモリ空間150にロードされたセカンドブートローダ171を起動する(S102)。
セカンドブートローダ171の起動後は、動作の主体はセカンドブートローダ171に移る。
次に、図2における「フェーズ4」で示す1次記憶装置120の構成が構築される手順を説明する。図2のフェーズ4は、1次記憶装置120における第2のOS起動直後を示している。以下では、図2のフェーズ3からフェーズ4に至る過程を説明する。セカンドブートローダ171のOSロード部175は、S101でファーストブートローダ154のファイルロード部155によりロードされた第2のOSイメージ211を、第3のメモリ空間170から第2のメモリ空間160にロードする(S106)。第2のメモリ空間160は、図2のフェーズ3において、破線で示した領域である。すなわち、図2のフェーズ2に示す「第2のOSイメージ211」は、S101において第1のメモリ空間150にロードされたものである。また、フェーズ3の「第2のOSイメージ211」は、存在領域が第1のメモリ空間150から第3のメモリ空間170へとコンテキストによって切り替えられたのみであり、ロードされたわけではない。セカンドブートローダ171のOSロード部175は、図2のフェーズ3の状態において、第3のメモリ空間170における第2のメモリ空間160の領域に、第2のOSイメージ211をロードする。なお、セカンドブートローダ171は、第2のメモリ空間の構成に使用する第2のメモリ空間構成情報を予め第3のページテーブル172に保有している。セカンドブートローダ171は、図2のフェーズ3の状態における第3のメモリ空間170と、第3のメモリ空間170に含まれる第2のメモリ空間との対応関係も、第2のメモリ空間構成情報として第3のページテーブル172に保有している。セカンドブートローダ171のOSロード部175は、この第2のメモリ空間構成情報に従って、図2のフェーズ3に示すように、第3のメモリ空間170に存在する第2のOSイメージ211を、第2のメモリ空間160にロードする。
図4〜図6を用いて実施の形態2を説明する。以上の実施の形態1では、第2のOS161のロード時に第1のOS151、あるいは、第1のOS151上で動作するプログラムが、第2のメモリ空間160へのアクセスを防止するものであるが、次に第2のOSイメージ211の解析、改竄または複製を防止する実施の形態を示す。
(1)2次記憶装置には第2のOSの暗号化イメージ400が格納されている。第2のOSの暗号化イメージ400は、第2のOSイメージ131を、あらかじめソフトウェア作成者が暗号化したものである。
(2)セカンドブートローダ171が、あらたに改竄チェック部410及び複製チェック部412を備え、また、OSロード部175が復号機能を有するOS復号ロード部411となっている。改竄チェック部410は、セカンドブートローダ171の改竄をチェックし(自己改竄チェック機能)、また第2のOS161の改竄をチェックする(第2OS改竄チェック機能)。OS復号ロード部411は、第2のOSの暗号化イメージ400を復号化する。複製チェック部412は、ソフトウェア利用者による不正な第2のOSの複製をチェックする(複製チェック機能)。
ファーストブートローダ154のファイルロード部155は、第1のOS151が提供する機能であるファイルシステムドライバ153を用いて、2次記憶装置130より第2のOSの暗号化イメージ400とセカンドブートローダ実行ファイル133を第1のメモリ空間150上にロードする(S200)。第2のOSの暗号化イメージ400は、イメージファイルのバイナリ情報をそのまま第1のメモリ空間150にロードしたものであり、暗号化されたままの状態である。
次にファーストブートローダ154は、セカンドブートローダ171を起動(S102)する。そして、セカンドブートローダ171のコンテキスト変更部174が割込みを禁止(S103)した後、セカンドブートローダ171の改竄チェック部410が、自身のプログラム(セカンドブートローダ171)が改竄されていないかをチェックする(S201)。
セカンドブートローダ171自身の改竄をチェックする方法の一例として、自身のプログラムのコード情報をハッシュ化したものをソフトウェア作成時に埋め込んでおき、起動後にハッシュを計算し、前記埋め込んでおいた情報と一致しなければ、改竄されていることがチェック可能(自己改竄判定基準の一例)である。改竄されていることが検出されれば、改竄チェック部410は改竄されている旨をファーストブートローダ154にエラー通知し処理を終了する(S210)。
セカンドブートローダ171は、セカンドブートローダ用のコンテキストに切り替えた後(S105、図6のフェーズ3)、セカンドブートローダ171のOS復号ロード部411が、第2のOSの暗号化イメージ510を復号し、第2のメモリ空間160にロードする(S202)。
(1.第2のメモリ空間にロードされた第2のOS161の改竄チェック)
次に、セカンドブートローダ171の改竄チェック部410は、S201で行ったセカンドブートローダ171の改竄チェックと同様に、第2のOS161が改竄されていないかをチェックする(S203)。改竄されているかどうかの判定基準(第2OS改竄判定基準)は、セカンドブートローダ171の改竄チェックの場合と同様の手法を採ることができる。改竄されていることが検出されれば、セカンドブートローダ171の改竄チェック部410は、S105で保存していた第1のOS151のOSのコンテキストに切り替え、改竄されている旨をファーストブートローダ154にエラー通知し、処理を終了する(S210)。
次に、セカンドブートローダ171の複製チェック部412が、第2のOSが不正に複製されているかをチェックする(S204)。複製をチェックする方法(複製判定基準)の一例として、I/Oデバイス140の固有の情報であるシリアル番号(例えば、ネットワークカードのMACアドレスなど)や、1次記憶装置120、2次記憶装置130の容量や、CPU110の型番などの情報を第2のOSに予め埋め込んでおき、埋め込まれた情報に基づきチェックする。これによって、ソフトウェア作成者が意図した計算機以外での実行を検出することが可能である。以上の複製チェックにより、複製されていることが検出されれば、セカンドブートローダ171の複製チェック部412は、S105で保存した第1のOS151のOSのコンテキストに切り替え、複製されている旨をファーストブートローダ154にエラー通知し処理を終了する(S210)。
第1のOSの起動時に、第2のOSが使用する第2のメモリ空間を除いた第1のメモリ空間を用いて、第2のメモリ空間が第1のOSに管理されないように第2のOSを起動するマルチOS起動装置において、以下のファーストブートローダとセカンドブートローダとを備えるマルチOS起動装置。
(a)第1のOSのファイル読込み手順を用いて第1のメモリ空間内に、第2のOSをロードするためのプログラムであるセカンドブートローダと第2のOSイメージをロードするファーストブートローダ。
(b)ファーストブートローダによって起動されるプログラムであるとともに第1のメモリ空間内にあるセカンドブートローダであって、第2のOSイメージがロードされた第1のメモリ空間と、第2のメモリ空間を含む第3のメモリ空間内で動作し、前記ロードされた第2のOSイメージを第2のメモリ空間内にロードし、第2のOSを起動するセカンドブートローダ。
さらに、以下の手段を備えたマルチOS起動装置を説明した。
暗号化された第2のOSイメージを復号化、または、圧縮された第2のOSを展開し、第2のメモリ空間内にロードする手段を備えるセカンドブートローダのOS復号ロード部。
以下の手段(改竄チェック部)を備えたマルチOS起動装置を説明した。
第2のOSイメージが不正に改竄された場合、第2のOSのロードを中止するセカンドブートローダの改竄チェック部。
以下の手段(複製チェック部)を備えたマルチOS起動装置を説明した。
計算機が具備するハードウェアでソフトウェアから確認することができるハードウェア情報(シリアル番号、MACアドレスなど)を、あらかじめ第2のOSイメージに埋め込んでおき、第2のOSをロードする際に前記埋め込んだ情報とハードウェアから得た情報を比較し、一致したときにだけ第2のOSの起動を許可する手段を備えるセカンドブートローダの複製チェック部。
Claims (8)
- 第1のオペレーティングシステム(Operating System、以下OSという)と第2のOSとの少なくとも2つのOSを起動するマルチOS起動装置において、
(1)メモリ領域を有し、前記メモリ領域に対してメモリ空間が定義される1次記憶部と、
(2)セカンドブートローダと、前記第2のOSとを記憶する2次記憶部と、
(3)CPU(Central Processing Unit )に対する制御情報を示すコンテキストであって前記第1のOS用のコンテキストである第1のコンテキストで動作する前記第1のOSのもとで動作するファーストブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで動作させることにより、前記第1のOSが管理する第1のメモリ空間として前記第1のコンテキストにより前記1次記憶装置に対して定義された前記1次記憶部のメモリ領域に前記2次記憶部から前記セカンドブートローダと前記第2のOSとを前記ファーストブートローダにロードさせるOS実行部と、
(4)前記第1のメモリ空間として定義されたメモリ領域にロードされた前記セカンドブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで実行することにより前記第2のOSが管理する第2のメモリ空間として定義されるメモリ領域と前記セカンドブートローダ及び前記第2のOSがロードされたメモリ領域とを含む第3のメモリ空間を前記1次記憶部に対して定義する前記セカンドブートローダ用のコンテキストを前記セカンドブートローダに生成させると共に生成された前記セカンドブートローダ用のコンテキストへ前記第1のコンテキストから切り替えさせ、前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSを前記セカンドブートローダにロードさせると共に前記第2のOS用のコンテキストを生成させ、生成された前記第2のOS用のコンテキストへ前記セカンドブートローダ用のコンテキストから切り替えさせ、前記第2のOS用のコンテキストのもとで前記セカンドブートローダに前記第2のOSの起動を実行させるローダ実行部と
を備えたことを特徴とするマルチOS起動装置。 - 前記2次記憶部に記憶された前記第2のOSは、
暗号化されており、
前記2次記憶部に記憶されたセカンドブートローダは、
暗号化された前記第2のOSを復号する機能を有し、
前記ローダ実行部は、
前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより、前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた暗号化された前記第2のOSを前記セカンドブートローダに復号させ、前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に復号された前記第2のOSを前記セカンドブートローダにロードさせることを特徴とする請求項1記載のマルチOS起動装置。 - 前記2次記憶部に記憶されたセカンドブートローダは、
前記セカンドブートローダの改ざんをチェックする機能を有し、
前記ローダ実行部は、
前記第1のコンテキストで動作中の前記第1のOSのもとで前記セカンドブートローダを実行することにより、前記セカンドブートローダ自信が改ざんされているかどうかを前記セカンドブートローダに判定させることを特徴とする請求項1記載のマルチOS起動装置。 - 前記2次記憶部に記憶されたセカンドブートローダは、
前記第2のOSの改ざんをチェックする機能を有し、
前記ローダ実行部は、
前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより、前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSが改ざんされているかどうかを前記セカンドブートローダに判定させることを特徴とする請求項1記載のマルチOS起動装置。 - 前記2次記憶部に記憶されたセカンドブートローダは、
前記第2のOSが複製かどうかをチェックする機能を有し、
前記ローダ実行部は、
前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより、前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSが改ざんされているかどうかを前記セカンドブートローダに判定させることを特徴とする請求項1記載のマルチOS起動装置。 - 第1のオペレーティングシステム(Operating System、以下OSという)と第2のOSとの少なくとも2つのOSを起動するコンピュータを、
(1)メモリ領域を有し、前記メモリ領域に対してメモリ空間が定義される1次記憶部、
(2)セカンドブートローダと、前記第2のOSとを記憶する2次記憶部、
(3)CPU(Central Processing Unit )に対する制御情報を示すコンテキストであって前記第1のOS用のコンテキストである第1のコンテキストで動作する前記第1のOSのもとで動作するファーストブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで動作させることにより、前記第1のOSが管理する第1のメモリ空間として前記第1のコンテキストにより前記1次記憶装置に対して定義された前記1次記憶部のメモリ領域に前記2次記憶部から前記セカンドブートローダと前記第2のOSとを前記ファーストブートローダにロードさせるOS実行部、
(4)前記第1のメモリ空間として定義されたメモリ領域にロードされた前記セカンドブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで実行することにより前記第2のOSが管理する第2のメモリ空間として定義されるメモリ領域と前記セカンドブートローダ及び前記第2のOSがロードされたメモリ領域とを含む第3のメモリ空間を前記1次記憶部に対して定義する前記セカンドブートローダ用のコンテキストを前記セカンドブートローダに生成させると共に生成された前記セカンドブートローダ用のコンテキストへ前記第1のコンテキストから切り替えさせ、前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSを前記セカンドブートローダにロードさせると共に前記第2のOS用のコンテキストを生成させ、生成された前記第2のOS用のコンテキストへ前記セカンドブートローダ用のコンテキストから切り替えさせ、前記第2のOS用のコンテキストのもとで前記セカンドブートローダに前記第2のOSの起動を実行させるローダ実行部、
として機能させるマルチOS起動プログラム。 - 請求項6記載のマルチOS起動プログラムを記録したコンピュータ読み取り可能な記録媒体。
- メモリ領域を有すると共に前記メモリ領域に対してメモリ空間が定義される1次記憶部を備えると共に、第1のオペレーティングシステム(Operating System、以下OSという)と第2のOSとの少なくとも2つのOSを起動するマルチOS起動装置が行うマルチOS起動方法において、
(1)2次記憶部が、セカンドブートローダと、前記第2のOSとを記憶し、
(2)OS実行部が、CPU(Central Processing Unit )に対する制御情報を示すコンテキストであって前記第1のOS用のコンテキストである第1のコンテキストで動作する前記第1のOSのもとで動作するファーストブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで動作させることにより、前記第1のOSが管理する第1のメモリ空間として前記第1のコンテキストにより前記1次記憶装置に対して定義された前記1次記憶部のメモリ領域に前記2次記憶部から前記セカンドブートローダと前記第2のOSとを前記ファーストブートローダにロードさせ、
(3)ローダ実行部が、前記第1のメモリ空間として定義されたメモリ領域にロードされた前記セカンドブートローダを前記第1のコンテキストで動作中の前記第1のOSのもとで実行することにより前記第2のOSが管理する第2のメモリ空間として定義されるメモリ領域と前記セカンドブートローダ及び前記第2のOSがロードされたメモリ領域とを含む第3のメモリ空間を前記1次記憶部に対して定義する前記セカンドブートローダ用のコンテキストを前記セカンドブートローダに生成させると共に生成された前記セカンドブートローダ用のコンテキストへ前記第1のコンテキストから切り替えさせ、前記セカンドブートローダ用のコンテキストのもとで前記セカンドブートローダを実行することにより前記第3のメモリ空間に含まれる前記第2のメモリ空間として定義された前記1次記憶部のメモリ領域に前記ファーストブートローダによって前記1次記憶部のメモリ領域にロードされた前記第2のOSを前記セカンドブートローダにロードさせると共に前記第2のOS用のコンテキストを生成させ、生成された前記第2のOS用のコンテキストへ前記セカンドブートローダ用のコンテキストから切り替えさせ、前記第2のOS用のコンテキストのもとで前記セカンドブートローダに前記第2のOSの起動を実行させることを特徴とするマルチOS起動方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010502762A JP4916576B2 (ja) | 2008-03-14 | 2009-02-25 | マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008065910 | 2008-03-14 | ||
JP2008065910 | 2008-03-14 | ||
JP2010502762A JP4916576B2 (ja) | 2008-03-14 | 2009-02-25 | マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 |
PCT/JP2009/053394 WO2009113394A1 (ja) | 2008-03-14 | 2009-02-25 | マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2009113394A1 true JPWO2009113394A1 (ja) | 2011-07-21 |
JP4916576B2 JP4916576B2 (ja) | 2012-04-11 |
Family
ID=41065063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010502762A Expired - Fee Related JP4916576B2 (ja) | 2008-03-14 | 2009-02-25 | マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8484452B2 (ja) |
JP (1) | JP4916576B2 (ja) |
KR (1) | KR101288700B1 (ja) |
DE (1) | DE112009000612A5 (ja) |
WO (1) | WO2009113394A1 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003196096A (ja) * | 2001-12-07 | 2003-07-11 | Internatl Business Mach Corp <Ibm> | コンピュータシステム、その起動制御方法及びプログラム |
US8433889B2 (en) * | 2010-04-28 | 2013-04-30 | Acer Cloud Technology, Inc. | Operating system context switching |
US9804857B2 (en) * | 2010-12-17 | 2017-10-31 | Intel Corporation | Method and apparatus for multi-mode mobile computing devices and peripherals |
WO2012104950A1 (ja) * | 2011-01-31 | 2012-08-09 | パナソニック株式会社 | 起動制御装置、情報機器および起動制御方法 |
CN102135910B (zh) * | 2011-03-03 | 2014-05-14 | 威盛电子股份有限公司 | 切换操作系统的方法及使用此方法的电子装置 |
US20140115308A1 (en) * | 2011-05-30 | 2014-04-24 | Beijing Lenovo Software Ltd. | Control method, control device and computer system |
JP2013101550A (ja) * | 2011-11-09 | 2013-05-23 | Junko Suginaka | 情報処理空間管理方法、外部デバイス及び情報処理装置 |
US8615766B2 (en) | 2012-05-01 | 2013-12-24 | Concurix Corporation | Hybrid operating system |
JP5806187B2 (ja) * | 2012-09-14 | 2015-11-10 | レノボ・シンガポール・プライベート・リミテッド | 秘密情報の交換方法およびコンピュータ |
GB2508895A (en) * | 2012-12-14 | 2014-06-18 | Ibm | Bootloader for booting a computer into a second operating system that is hidden from a first host operating system |
JP5756144B2 (ja) * | 2013-04-22 | 2015-07-29 | レノボ・シンガポール・プライベート・リミテッド | オペレーティング・システムの管理方法、コンピュータ・プログラムおよびコンピュータ |
JP5819350B2 (ja) | 2013-06-13 | 2015-11-24 | 株式会社日立製作所 | 計算機システム及び起動方法 |
KR102116096B1 (ko) | 2013-12-20 | 2020-05-27 | 한화테크윈 주식회사 | 다중시스템 및 이의 부팅 방법 |
US9135029B2 (en) * | 2014-01-02 | 2015-09-15 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Securely reconfiguring a multi-node system to prevent firmware rollback |
US9977740B2 (en) | 2014-03-07 | 2018-05-22 | Hitachi, Ltd. | Nonvolatile storage of host and guest cache data in response to power interruption |
CN114692167A (zh) * | 2014-04-15 | 2022-07-01 | 麦利尔亚洲新加坡私人有限公司 | 可信根 |
US9910677B2 (en) * | 2014-07-07 | 2018-03-06 | Lenovo (Singapore) Pte. Ltd. | Operating environment switching between a primary and a secondary operating system |
EP3040896A1 (en) * | 2014-12-30 | 2016-07-06 | Gemalto Sa | Secure element |
DE102015001801A1 (de) * | 2015-02-16 | 2016-08-18 | IAD Gesellschaft für Informatik, Automatisierung und Datenverarbeitung mbH | Autonom bootendes System mit einer Verschlüsselung des gesamten Datenspeichers und Verfahren hierfür |
JP6458146B2 (ja) | 2015-07-08 | 2019-01-23 | 株式会社日立製作所 | 計算機及びメモリ領域管理方法 |
CN105045621B (zh) * | 2015-07-14 | 2018-04-13 | 河南科技大学 | 基于链式引导和动态修改分区表的任意多系统的安装方法 |
KR102400899B1 (ko) | 2015-07-15 | 2022-05-23 | 엘지전자 주식회사 | 차량 제어 장치 및 그 방법 |
DE102016009232A1 (de) * | 2016-07-28 | 2018-02-01 | Giesecke+Devrient Mobile Security Gmbh | Integriertes Teilnehmeridentitätsmodul mit Core-OS und Anwendungs-OS |
US11106781B2 (en) * | 2019-02-01 | 2021-08-31 | Dell Products L.P. | Secondary OS device unlocking system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11149385A (ja) * | 1997-09-12 | 1999-06-02 | Hitachi Ltd | マルチos構成方法 |
JP2001100983A (ja) * | 1999-09-28 | 2001-04-13 | Internatl Business Mach Corp <Ibm> | コンピュータの制御方法、コンピュータ及び記録媒体 |
JP2001236237A (ja) * | 2000-02-23 | 2001-08-31 | Hitachi Ltd | マルチos構成方法 |
JP2008046887A (ja) * | 2006-08-17 | 2008-02-28 | Ntt Docomo Inc | Os切替装置及びos切替方法 |
WO2008141100A2 (en) * | 2007-05-11 | 2008-11-20 | Echostar Technologies L.L.C. | Apparatus for controlling processor execution in a secure environment |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5771064A (en) * | 1995-11-29 | 1998-06-23 | Scientific-Atlanta, Inc. | Home communications terminal having an applications module |
JP4026667B2 (ja) | 1997-09-12 | 2007-12-26 | 株式会社日立製作所 | マルチos構成方法 |
US6996828B1 (en) | 1997-09-12 | 2006-02-07 | Hitachi, Ltd. | Multi-OS configuration method |
US6772419B1 (en) * | 1997-09-12 | 2004-08-03 | Hitachi, Ltd. | Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS |
US6718482B2 (en) | 1997-09-12 | 2004-04-06 | Hitachi, Ltd. | Fault monitoring system |
JP3659062B2 (ja) | 1999-05-21 | 2005-06-15 | 株式会社日立製作所 | 計算機システム |
JP2000347883A (ja) | 1999-06-03 | 2000-12-15 | Matsushita Electric Ind Co Ltd | 仮想計算機装置 |
US6963981B1 (en) * | 2001-01-29 | 2005-11-08 | Akamai Technologies, Inc. | Method and apparatus for remote installation of an operating system over a network connection |
JP2003241984A (ja) | 2002-02-15 | 2003-08-29 | Fujitsu Ltd | 複数osローディング方法および複数osローディングプログラム |
JP3863117B2 (ja) | 2003-02-27 | 2006-12-27 | 株式会社エヌ・ティ・ティ・データ | マルチオペレーティングシステム制御方法、およびその方法をコンピュータに実行させるプログラム、ならびにマルチオペレーティングシステム制御装置 |
JP2004303028A (ja) | 2003-03-31 | 2004-10-28 | Ntt Data Corp | オペレーティングシステムおよびオペレーティングシステム起動装置 |
CN1658185A (zh) * | 2004-02-18 | 2005-08-24 | 国际商业机器公司 | 相互独立地共存多个操作系统的计算机系统与其切换方法 |
JP2007004661A (ja) | 2005-06-27 | 2007-01-11 | Hitachi Ltd | 仮想計算機の制御方法及びプログラム |
TWI279724B (en) * | 2005-09-07 | 2007-04-21 | Mitac Technology Corp | Method for fast activating execution of computer multimedia playing from standby mode |
TWI279678B (en) * | 2005-09-07 | 2007-04-21 | Mitac Technology Corp | Method for fast switching between different operating systems in computer device with multiple operating systems |
-
2009
- 2009-02-25 KR KR1020107020422A patent/KR101288700B1/ko not_active IP Right Cessation
- 2009-02-25 JP JP2010502762A patent/JP4916576B2/ja not_active Expired - Fee Related
- 2009-02-25 WO PCT/JP2009/053394 patent/WO2009113394A1/ja active Application Filing
- 2009-02-25 DE DE112009000612T patent/DE112009000612A5/de not_active Withdrawn
- 2009-02-25 US US12/922,458 patent/US8484452B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11149385A (ja) * | 1997-09-12 | 1999-06-02 | Hitachi Ltd | マルチos構成方法 |
JP2001100983A (ja) * | 1999-09-28 | 2001-04-13 | Internatl Business Mach Corp <Ibm> | コンピュータの制御方法、コンピュータ及び記録媒体 |
JP2001236237A (ja) * | 2000-02-23 | 2001-08-31 | Hitachi Ltd | マルチos構成方法 |
JP2008046887A (ja) * | 2006-08-17 | 2008-02-28 | Ntt Docomo Inc | Os切替装置及びos切替方法 |
WO2008141100A2 (en) * | 2007-05-11 | 2008-11-20 | Echostar Technologies L.L.C. | Apparatus for controlling processor execution in a secure environment |
Also Published As
Publication number | Publication date |
---|---|
WO2009113394A1 (ja) | 2009-09-17 |
DE112009000612A5 (de) | 2012-08-02 |
DE112009000612T5 (de) | 2011-03-10 |
JP4916576B2 (ja) | 2012-04-11 |
US20110022832A1 (en) | 2011-01-27 |
US8484452B2 (en) | 2013-07-09 |
KR20100122924A (ko) | 2010-11-23 |
KR101288700B1 (ko) | 2013-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4916576B2 (ja) | マルチオペレーティングシステム(os)起動装置及びマルチos起動プログラム及び記録媒体及びマルチos起動方法 | |
JP3539907B2 (ja) | ブート可能プログラムを備えたコンピュータ | |
US10032029B2 (en) | Verifying integrity of backup file in a multiple operating system environment | |
JP5821034B2 (ja) | 情報処理装置、仮想マシン生成方法及びアプリ配信システム | |
KR101232558B1 (ko) | 컴퓨터 구현 방법 및 시스템 | |
US6996706B1 (en) | Booting an operating system or running other pre-boot code from a file stored under a different operating system | |
US10990690B2 (en) | Disk encryption | |
US9703635B2 (en) | Method, computer program, and computer for restoring set of variables | |
JP5740573B2 (ja) | 情報処理装置および情報処理方法 | |
US20080091874A1 (en) | System and method for loading programs from hdd independent of operating system | |
US20140351935A1 (en) | Method, apparatus and virtual machine for detecting malicious program | |
CN103718165A (zh) | Bios闪存攻击保护和通知 | |
JP2022545012A (ja) | メモリー・アパーチャのフラッシュ・オーダーを使用したデーター保存 | |
WO2013030967A1 (ja) | バックアップ方法、およびバックアッププログラム | |
CN101236499A (zh) | 一种借助USB设备启动在Windows操作系统中嵌入内核驱动程序的方法 | |
JP5716824B2 (ja) | マルチコアプロセッサシステム | |
CN112219202A (zh) | 用于客户操作系统的存储器分配 | |
WO2007022687A1 (fr) | Système et procédé de contrôle de sécurité de système d’exploitation | |
CN101236498B (zh) | 一种借助PCI卡启动在Windows操作系统中嵌入内核驱动程序的方法 | |
CN105653352B (zh) | 操作系统虚拟仿真取证的方法 | |
JP6462540B2 (ja) | ドライバ装置、情報処理システム、プログラムおよび方法 | |
JP5920509B2 (ja) | コントローラの制御プログラム、およびコントローラの制御方法 | |
WO2021161418A1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP2018036695A (ja) | 情報処理監視装置、情報処理監視方法、監視プログラム、記録媒体及び情報処理装置 | |
EP3408779B1 (en) | Disk encryption |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20111227 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120124 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150203 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4916576 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |