JP2005011336A - オペレーティングシステム切り替え可能な情報処理装置 - Google Patents
オペレーティングシステム切り替え可能な情報処理装置 Download PDFInfo
- Publication number
- JP2005011336A JP2005011336A JP2004159851A JP2004159851A JP2005011336A JP 2005011336 A JP2005011336 A JP 2005011336A JP 2004159851 A JP2004159851 A JP 2004159851A JP 2004159851 A JP2004159851 A JP 2004159851A JP 2005011336 A JP2005011336 A JP 2005011336A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- cpu
- switching
- area
- information processing
- 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
Abstract
【解決手段】第1のOS及び第2のOSを切り替え可能な情報処理装置であって、第1のOSから、第2のOSへの切替処理において、CPU内部をクリアし、第1のOSが管理するデータを記憶しているメモリ領域を遮断することにより、第1のOSが管理するデータを第2のOSから保護する。
【選択図】図6
Description
例えば特許文献1には、複数のオペレーティングシステムを保持した装置において、各オペレーティングシステムのカーネルを主記憶に常駐させておくことにより、オペレーティングシステムの切り替え処理の高速化をはかり、更に、切り替え処理時に、それまで動作していた状態を2次記憶に記憶させることにより、復帰したとき切り替え処理前の状態から継続した処理を行うことを可能にする技術が開示されている。
そこで本発明は、上記の問題点に鑑みなされたものであって、複数のオペレーティングシステムを保持して、各オペレーティングシステムを切り替えて処理を行う情報処理装置であって、あるオペレーティングシステムが所有している情報を他のオペレーティングシステムから保護することができる情報処理装置を提供することを目的とする。
この構成によると、第2領域は、第1のOSから第2のOSへ切り替わってから開放することにより、第1のOSから第2領域の内容を保護することができる。
この構成によると、情報処理装置は、当該装置が第1のOSの管理に従い動作しているとき、第2のOSが管理するプログラムへの処理要求により、第1のOSから第2のOSへ切り替わるとき、前記処理要求を、切替管理手段を介して第2のOSへ通知することができる。
ここで、前記情報処理装置は、前記第2割込みハンドラの処理、及び、前記第1割込みハンドラの処理を経て、第2のOSの管理下で動作中であって、前記リセットハンドラは、第2のOSから第1のOSへの復帰準備を行う命令を含み、前記CPUは、前記第1のOSへの復帰準備として、内部のリンクレジスタに第1のOSへ戻るプログラムの先頭番地をセットしたのち、第2のOSが管理するハードウェアを操作するデバイスドライバへ分岐し、前記デバイスドライバの処理の終了を検知すると、リンクレジスタにセットした前記先頭番地を、プログラムカウンタをセットする。
また、第1のOSに戻る処理は、第1のOSから第2のOSへの切替処理と同様の処理を行うことにより、第2のOSから第1のOSが管理するデータを保護することができる。
ここで、前記記憶手段は、更に、第2のOSが管理するデータを記憶している第4領域を備え、前記アクセス遮断機構は、更に、前記第4領域に対する外部からのアクセスの遮断及び開放を切り替え、前記切替管理手段は、前記リセットハンドラから、前記第4領域の開放指示を受け取ると、前記アクセス遮断機構に対して、前記第4領域の開放を指示する。
ここで、前記アクセス遮断機構は、前記第3領域に対する外部からのアクセスの遮断及び開放を切り替え、前記切替管理手段は、前記第1割込みハンドラから第1のOSから第2のOSへの切替指示を受け付けると、前記アクセス遮断機構に対して、前記第3領域の遮断を指示する。
ここで、前記第1割込みハンドラは、前記退避命令を実行した後、前記CPUに対し、省電力モードへの切り替えを指示し、前記CPUは、省電力モードへの切替処理を行い、前記切替処理が終了すると、前記切替管理手段へ省電力モードに切り替わったことを示す信号を出力し、前記切替管理手段は、前記CPUから省電力モードに切り替わったことを示す信号を受け取った後、前記CPUにリセットを指示する。
ここで、前記情報処理装置は、更に、プログラムカウンタを備え、プログラムカウンタにセットされる位置情報が示す命令を実行するCPUを備え、前記CPUが前記第2割込みハンドラを処理し、第2のOSから第1のOSに切り替える指示をする前に、前記CPUは、前記分岐命令保持部に第1のOSから第2のOSへのリターンアドレスを設定する。
ここで、前記第1割込みハンドラは、割込みをマスクし、前記切替管理手段に対して、第2のOS上で動作するプログラムの種類と前記プログラムに要求する処理内容とを通知し、前記CPUは、前記第1割込みハンドラから呼び出される前記第2割込みハンドラの前記復帰命令の位置を示す位置情報を、前記分岐命令保持部から読み出し、プログラムカウンタにセットし、前記切替管理手段は、前記第2割込みハンドラへ、前記プログラムの種類と前記処理内容とを通知する。
この構成によると、情報処理装置は、当該装置が第1のOSの管理に従い動作しているとき、第2のOSが管理するプログラムへの処理要求により、第1のOSから第2のOSへ切り替わるとき、前記処理要求を、切替管理手段を介して第2のOSに通知し、第2のOSは要求された処理を実行することができる。
ここで、前記情報処理装置は、更に、第1のOSが管理するハードウェアからの割込みを受け付ける第1信号線と、第2のOSが管理するハードウェアからの割込みを受け付ける第2信号線と、第1及び第2のOSが管理するハードウェアを操作するそれぞれのデバイスドライバの位置情報を記述したテーブルとを備えるベクタ割込みコントローラと、前記第2領域は、更に、前記第1のOSのブートコードを備え、前記CPUは、前記ブートコードの実行中に前記ベクタ割込みコントローラからのデバイスドライバの位置情報の取得を無効化し、第3領域に格納されている第2割込みハンドラの実行中に前記ベクタ割込みコントローラからのデバイスドライバの位置情報の取得を有効にする。
本発明に係る第1の実施形態として、情報処理装置100について図面を参照して説明する。なお、本明細書及び図面において、「オペレーティングシステム」を単に「OS」と記載することがある。
<構成>
図1は、情報処理装置100の構成を機能的に示す機能ブロック図である。
同図に示す様に、情報処理装置100のソフトウェアは、OS1(201)、OS1上で動作するプログラム1(202a)、プログラム2(202b)、・・・、プログラムN(202n)、及び、OS2(203)、OS2上で動作するプログラム1(204a)、プログラム2(204b)、・・・、プログラムN(204n)から構成される。さらに、OS1は、OS1管理のハードウェア108を操作するためのデバイスドライバ201aと、切替管理部106を操作するためのデバイスドライバ201bとを含み、OS2は、OS2管理のハードウェア109を操作するためのデバイスドライバ202aと、切替管理部106を操作するためのデバイスドライバ202bとを含む。
(1)CPU101
図3は、CPU101の構成を示す図である。同図に示す様に、CPU101は、CPUコア301、MMU(Memory Management Unit)302及びキャッシュ303から構成される。
MMU302は、論理アドレスを物理アドレスに変換することにより仮想記憶機能を実現する。論理アドレスと物理アドレスとは、メモリ102上に置かれたページテーブルにより対応付けられており、MMU302は、ページテーブルを参照してアドレス変換を行う。
なお、本実施例ではキャッシュ303として、物理アドレスキャッシュを想定しているが、本発明において、キャッシュは物理アドレスキャッシュに限定されず、仮想アドレスキャッシュであってもよい。
図4は、CPUコア301に含まれるレジスタファイル400を示す図である。レジスタファイル400は、複数のレジスタセットを備える。各レジスタセットは、CPU101の各モードに対応している。
レジスタセット402、レジスタセット403、・・・、レジスタセット404は、それぞれ、例外モードの内の一つのモードに対応したレジスタセットである。レジスタセット402は、ステータスレジスタ(sr_B)421、リンクレジスタ(lr_B)422、及び、スタックポインタ(sp_B)423から構成される。レジスタセット403から、レジスタセット404までのレジスタセットも同様に、ステータスレジスタ、リンクレジスタ及びスタックポインタから構成されるが、例えばレジスタセット403のように、汎用レジスタ(r_0_C〜r_n_C)を持つ場合もある。
CPU101は、Userモードのとき、レジスタセット401の内のカレントステータスレジスタ411のモードビット以外のレジスタにアクセス可能であり、例外モードのとき、全てのレジスタセットにアクセス可能である。
CPU101がUserモードのとき、割込み又は例外が発生しなければ(ステップS101でNO)、CPU101は、命令をフェッチし(ステップS102)、解読し(ステップS103)、実行し(ステップS104)、プログラムカウンタ(pc)412のアドレスを進める(ステップS105)。その後、ステップS101に戻り、処理を続ける。
なお、レジスタセット403やレジスタセット404など、他のレジスタセットを用いる例外が発生した場合も、CPU101は同様に動作する。
図6は、主記憶であるメモリ102の構成を示す図である。メモリ102は、バスインターフェース501、メモリ保護機構502及びメモリ領域から成り、同図に示す様に、メモリ領域は、OS1用例外ハンドラ領域503、OS1用メモリ領域504、OS2用例外ハンドラ領域505及びOS2用メモリ領域506に分割されている。
図7は、OS1用例外ハンドラ領域503を示す図である。
OS1用例外ハンドラ領域503は、リセットハンドラ511、デバイスドライバ201a、デバイスドライバ201b、割込みハンドラ512、ソフトウェア割込みハンドラ513、前のCPU状態514などを保持する。左側の(0000AAAA)、(0000AABB)などは、各プログラムが配置されているアドレスを示している。
OS1用例外ハンドラ領域503が保持するリセットハンドラ511は、実際にはコンピュータプログラムであるが、ここでは、説明の便宜のため、図8に示すフローチャートを用いて、リセットハンドラ511が実行されたときのCPU101の動作について説明する。
OS1がブートしている場合(ステップS201でYES)、CPU101は、メモリ102のOS1用例外ハンドラ領域503から前のCPU状態514を読み出し、CPU状態を復帰する(ステップS203)。なお、CPU状態には、MMU302の設定も含まれる。CPU101は、MMU302を有効化し(ステップS204)、キャッシュ303を有効化する(ステップS205)。その後、CPU101は、切替管理部106に対して、OS1用メモリ領域504の開放を指示し(ステップS206)、更に、切替管理部106に対して、遷移要因を問い合わせる。
遷移要因がOS1管理のハードウェア108からの割込みである場合(ステップS207でハードウェア)、CPU101は、OS2への復帰準備として、レジスタファイル400の割込みに対応するレジスタセットのリンクレジスタに、OS1からOS2への遷移プログラムの先頭アドレスをセットする(ステップS209)。その後、割込みハンドラ512へ分岐する。
割込みハンドラ512についてもリセットハンドラ511と同様、図9に示すフローチャートを用いて、割込みハンドラ512が実行されたときのCPU101の動作について説明する。
CPU101は、割込みコントローラ107に割込み要因を問い合わせる(ステップS501)。割込み要因が、OS1管理のハードウェア108によるものである場合(ステップS502でOS1管理のハードウェア)、CPU101は、デバイスドライバ201aに分岐し、デバイスドライバ201aによる処理を行う(ステップS504)。
(ソフトウェア割込みハンドラ513)
ソフトウェア割込みハンドラ513についても同様に、図10に示すフローチャートを用いて、ソフトウェア割込みハンドラが実行されたときのCPU101の動作について説明する。
その後、CPU101は、CPU状態をOS1用例外ハンドラ領域503に退避させ(ステップS304)、OS2上で動作するプログラムを指定する情報(図2の204aから204nのいずれか)と、そのプログラムに要求する処理内容を切替管理部106に出力する(ステップS305)。
(CPU省電力モード切替処理)
ここでは、図11に示すフローチャートを用いて、CPU101と切替管理部106との動作に基づき、CPU101の省電力モードへの切替処理について説明する。
CPU101はOS切替要求を実行した後、省電力モードへの切替処理(ステップS404)を実行する。その後、CPU101は省電力モードに切り替わると、省電力モードに切り替わったことを示す信号を切替管理部106に出力する(ステップS405)。
CPU101は切替管理部106から例外信号を受け取ると、CPU101内部の状態をクリアして、リセットハンドラの処理へ移行する(ステップS407)。
なお、ステップS404で省電力モードへの切替処理を行う前に、CPU101が外部のデバイスとやりとりをしているときは、その処理を終了してから、省電力モードへの切替処理を行う。
OS1用メモリ領域504には、OS1を構成するプログラム及びデータとOS1上で動作するプログラム(202aから202n)及びデータとがロードされる。
(c)OS2用例外ハンドラ領域505
OS2用例外ハンドラ領域505は、リセットハンドラ、割込みハンドラ、ソフトウェア割込みハンドラ、デバイスドライバ203a、デバイスドライバ203b、前のCPU状態などを保持する。
OS2用例外ハンドラ領域505が保持する割込みハンドラによる動作についても図示していないが、図9に示したフローチャートのステップS502、ステップS505、ステップS506、ステップS507及びステップS508の各ステップについて、「OS1」を「OS2」に変更し、「OS2」を「OS1」に変更し、更に、ステップS509について、「デバイスドライバ201a」を「デバイスドライバ203a」に変更すればよい。
(d)OS2用メモリ領域506
OS2用メモリ領域506には、OS2を構成するプログラム及びデータとOS2上で動作するプログラム(204aから204n)及びデータとがロードされる。
(3)例外テーブル切替部103
例外テーブル切替部103は、バス110とOS1用例外テーブル格納部104、及び、バス110とOS2用例外テーブル格納部105を接続するスイッチを備える。
図12(a)は、OS1用例外テーブル格納部104に格納されているOS1用例外テーブル601を示す図である。
同図に示すように、OS1用例外テーブル601のエントリには、それぞれ例外要因に対応付けられた分岐命令が記述されている。例えば、「リセット」に対応付けられた分岐命令は、「0000AAAA」のアドレスへの分岐を示す「BL0x0000AAAA」である。図7に示したように、「0000AAAA」のアドレスは、OS1用例外ハンドラ領域503内であって、リセットハンドラ511が配置されている。
(5)OS2用例外テーブル格納部105
図12(b)は、OS2用例外テーブル格納部105に格納されているOS2用例外テーブル602を示す図である。
(6)切替管理部106
図13は、切替管理部106の構成を示す図である。
システム状態管理部701は、バス110から受け取る情報、CPU101から受け取る省電力モードに切り替わったことを示す情報に応じて、メモリ保護制御部702、例外テーブル制御部703、例外制御部704及び割込み制御部705へ指示を出力する。
例外テーブル制御部703は、システム状態管理部701の指示に応じて、例外テーブル制御信号を例外テーブル切替部103に出力する。
例外制御部704は、システム状態管理部701の指示に応じて、CPU101にリセット信号を出力する。
図14は、OS1からOS2に遷移する場合のシステム状態管理部701の動作を示すシーケンスチャートである。図14では、紙面の左から右へ(t1からt5へ)向かって時間が経過するものとする。以下では、時間の流れに沿ってシステム状態管理部701の動作を説明する。
t2:バス110からOS2への切替を指示されると、システム状態管理部701は、割込み制御部705へ割込みをマスクする指示を出力する。
t5:システム状態管理部701はバス110からOS2用メモリ開放要求(S206)を受け取ると、メモリ保護制御部702に対して、OS2用メモリ領域の開放を指示する。
(7)割込みコントローラ107
割込みコントローラ107は、OS1管理のハードウェア108及びOS2管理のハードウェア109からの割込みを受け付けると、割込み線111により切替管理部106へ割込みの発生を伝える。また、割込みコントローラ107は、割込みハンドラ512(OS1用)及び割込みハンドラ(OS2用)からの割込み要因の問い合わせに対して、割込み要因を各ハンドラに伝える。
図15は、情報処理装置100全体の動作を示すフローチャートである。ここでは、図15に基づき、情報処理装置100の動作について説明する。なお、ここでは、説明の便宜上、ステップS702の処理から開始することとする。
情報処理装置100は、OS1のブートチェックを行う(ステップS702)。OS1がブートしていない場合(ステップS702でN)、OS1のブート処理を行い(ステップS703)、ステップS707へ進む。OS1がブートしている場合(ステップS702でY)、前のCPU状態をOS1用例外ハンドラ領域503から読み出して、OS1のCPU状態を復帰する(ステップS704)。
ここで、ステップS702からステップS706まで破線で囲まれた処理は、OS1のリセットハンドラ511を実行することによる処理であり、ステップS708のOS1退避処理は、OS1のソフトウェア割込みハンドラ513を実行することによる処理であり、ステップS710の割込み要因の確認処理は、OS1の割込みハンドラ512を実行することによる処理である。
本発明に係る、第2の実施形態として、情報処理装置100aについて、図面を参照して説明する。
<構成>
図16は、情報処理装置100aの構成を機能的に示す機能ブロック図である。
CPU101a、例外テーブル切替部103a、OS1用例外テーブル格納部104a、OS2用例外テーブル格納部105a、OS1管理のハードウェア108a、OS2管理のハードウェア109a及びバス110aは、それぞれ、第1の実施形態である情報処理装置100の、CPU101、例外テーブル切替部103、OS1用例外テーブル格納部104、OS2用例外テーブル格納部105、割込みコントローラ107、OS1管理のハードウェア108及びOS2管理のハードウェア109と同様の構成及び機能を有するため、ここでは説明を省略する。
図17は、メモリ102aの構成を示す図である。
メモリ102aは、メモリ102と同様に、バスインターフェース501a、メモリ保護機構502a、OS1用例外ハンドラ領域503a、OS1用メモリ領域504a、OS2用例外ハンドラ領域505a及びOS2用メモリ領域506aから構成される。
メモリ保護機構502aは、切替管理部106aから発行されるメモリ保護制御信号を受け取り、受け取ったメモリ保護制御信号に応じて、スイッチ509a及びスイッチ510aを開閉することにより、各スイッチと接続しているOS2用例外ハンドラ領域505a及びOS2用メモリ領域506aを遮断、又は、開放する。いま、図17では、スイッチ509aとスイッチ510aとが開いているので、OS2用例外ハンドラ領域505aとOS2用メモリ領域506aとが遮断されている状態を示している。保護されたこれらのメモリ領域は、バス110aからアクセス不可能であり、内部の情報が保護される。
OS1用例外ハンドラ領域503aは、リセットハンドラ、OS1管理のハードウェア108aを操作するためのデバイスドライバ、割込みハンドラ、OS1用ソフトウェア割込みハンドラ801及び802、前のCPU状態などを保持する。
OS1用例外ハンドラ領域503aが保持するリセットハンドラは、図8に示したリセットハンドラ511と異なるが、公知技術である通常のオペレーティングシステムのブート処理で実現可能であるため、説明を省略する。また、OS1用例外ハンドラ領域503aが保持する割込みハンドラは、図9に示した割込みハンドラ512のステップS509の「デバイスドライバ201a」を「OS1管理のハードウェア108aを操作するデバイスドライバ」に変更すればよい。
(OS1用ソフトウェア割込みハンドラ801)
CPU101aは、キャッシュを無効化し(ステップS901)、MMUを無効化する(ステップS902)。更に、CPUは、カレントステータスレジスタ(csr)の所定ビットをセットして割込みをマスクする(ステップS903)。
次に、CPU101aは、切替管理部106aに対して、戻り先番地を指示した後(S906)、OS2への切替を指示し(ステップS907)、続いて、省電力モードへの切替処理へ移行する(ステップS908)。
CPU101aは、OS1用例外ハンドラ領域503aから前のCPU状態を読み出し、OS1のCPU状態を復帰させる(ステップS911)。CPU101aは、切替管理部106aにデバッガの有効化を指示した後(ステップS912)、MMUを有効化し(ステップS913)、キャッシュを有効化する(ステップS914)。その後、CPU101aは、切替管理部106aに対して、遷移要因を問い合わせる。
遷移要因がOS1管理のハードウェア108aからの割込みである場合(ステップS915でハードウェア)、CPU101aは、割込みマスクを解除する(ステップS917)。
(b)OS2用例外ハンドラ領域505a
OS2用例外ハンドラ領域505aは、OS2用リセットハンドラ803、OS2管理のハードウェア109aを操作するためのデバイスドライバ、割込みハンドラ、OS2用ソフトウェア割込みハンドラ804、前のCPU状態などを保持する。
(OS2用リセットハンドラ803)
ここでは、図19に示すフローチャートを用いて、OS2用リセットハンドラ803が実行されたときのCPU101aの動作について説明する。
OS2がブートしている場合(ステップS1001でYES)、CPU101aは、メモリ102aのOS2用例外ハンドラ領域505aから前のCPU状態を読み出し、CPU状態を復帰する(ステップS1003)。CPU101aは、MMUを有効化し(ステップS1004)、キャッシュを有効化する(ステップS1005)。その後、CPU101aは、切替管理部106aに対して、OS2用メモリ領域506aの開放を指示し(ステップS1006)、更に、切替管理部106aに対して、遷移要因を問い合わせる。
遷移要因がOS2管理のハードウェア109aからの割込みである場合(ステップS1007でハードウェア)、CPU101aは、割込みマスクを解除する(ステップS1009)。割込み処理から復帰すると(ステップS1010)、CPU101aは、後述するOS2用ソフトウェア割込みハンドラ804へとび、処理を続ける。
ここでは、図20に示すフローチャートを用いて、OS2用ソフトウェア割込みハンドラ804が実行されたときのCPU101aの動作について説明する。
CPU101aは、キャッシュを無効化し(ステップS1021)、MMUを無効化する(ステップS1022)。更に、CPUは、カレントステータスレジスタ(csr)の所定ビットをセットして割込みをマスクする(ステップS1023)。
また、OS2用メモリ領域保護要求を切替管理部106aに出力し(ステップS1026)、後述する分岐コード格納部709aに格納されているOS1への分岐コードに分岐する(ステップS1027)。分岐コード格納部709aに格納されている分岐コードに含まれる分岐先アドレスは、図18に示すOS1用ソフトウェア割り込みハンドラ内のステップS906で指定されたアドレスである。
OS1用メモリ領域504aには、OS1を構成するプログラム及びデータとOS1上で動作するプログラム及びデータとがロードされる。
また、OS2用メモリ領域506aには、OS2を構成するプログラム及びデータとOS2上で動作するプログラム及びデータとがロードされる。
図21は、切替管理部106aの構成を示す図である。
同図に示す様に、切替管理部106は、システム状態管理部701a、メモリ保護制御部702a、例外テーブル制御部703a、例外制御部704a、割込み制御部705a、デバッガ制御部706a及びゲート707aから構成される。
メモリ保護制御部702aは、システム状態管理部701aの指示に応じて、スイッチ509a及び510aを制御するための信号をメモリ102aに出力する。
例外制御部704aは、システム状態管理部701aの指示に応じて、CPU101aにリセット信号を出力する。
割り込み制御部705aは、システム状態管理部701aの指示に応じて、ゲート707aを制御し、割込みコントローラ107aから受け取る割り込み信号111aのCPU101aへの出力を制御する。
t1以前:システム状態管理部701aは、メモリ保護制御部702aに対して、OS2用例外ハンドラ領域505aとOS2用メモリ領域506aとの遮断を指示する。また、システム状態管理部701aは、例外テーブル制御部703aに対して、OS1用例外テーブルへの接続を指示する。また、例外制御部704aに対して、リセット信号を出力しないよう指示する。また、割り込み制御部705aに対して割り込みをマスクしないよう指示する。また、デバッガ制御部706aにデバッガを有効にするよう指示する。
t2:システム状態管理部701aは、CPU101aから、省電力モードに切り替わったことを示す信号を受け取ると、例外制御部704aへ、CPU101へリセットをかける指示を出力する。また、メモリ保護制御部702に対して、OS2用例外ハンドラ領域の開放を指示する。また、例外テーブル制御部703aにOS2用例外テーブルに切り替えるよう指示する。
t4:システム状態管理部701aは、バス110aからOS2用メモリ領域開放要求(ステップS1006)を受け取ると、メモリ保護制御部702aに対して、OS2用メモリ領域の開放を指示する。
t1以前:システム状態管理部701aは、メモリ保護制御部702aに対して、OS2用例外ハンドラ領域505aとOS2用メモリ領域506aとの開放を指示する。また、システム状態管理部701aは、例外テーブル制御部703aに対して、OS2用例外テーブルへの接続を指示する。また、例外制御部704aに対して、リセット信号を出力しないよう指示する。また、割り込み制御部705aに対して割り込みをマスクしないよう指示する。また、デバッガ制御部706aにデバッガを無効にするよう指示する。
t2:システム状態管理部701aは、分岐コード格納部709aへのアクセスをフェッチ検知部708aが検知すると、メモリ保護制御部702aに対して、OS2用例外ハンドラ領域505aの遮断を指示する。また、例外テーブル制御部703aにOS1用例外テーブルに切り替えるよう指示する。
(3)デバッガ無効化回路112a及びデバッガインターフェース113a
デバッガ無効化回路112aは、CPU101aとデバッガインターフェース113aとの間に設けられ、CPU101aとデバッガインターフェース113aとを接続又は切断することができる。
CPU101aとデバッガインターフェース113aとが接続されているときは、デバッガインターフェース113aの外部に接続されるデバッガが有効であり、CPU101aとデバッガインターフェース113aとが切断されているときは、デバッガインターフェース113aの外部に接続されるデバッガが無効である。具体例として、デバッガ無効化回路112aは、図23に示す様なスイッチにより実現される。
図23は、デバッガ無効化回路112a、CPU101a及びメモリ102aの関係を説明するために、情報処理装置100の一部を簡略化して記載した図である。
(a)は、情報処理装置100aでOS1が動作している状態を示す。OS1が動作している状態において、メモリ102aは、切替管理部106aから出力されるメモリ保護制御信号により、OS2用例外ハンドラ領域505a及びOS2用メモリ領域506aが遮断されている。このときデバッガ無効化回路112aは、切替管理部106aから、「有効」を示すデバッガ制御信号を受け取り、デバッガインターフェース113aとCPU101aとを接続するよう、スイッチを閉状態にする。
(b)は、情報処理装置100aでOS2が動作している状態を示す。OS2が動作している状態において、メモリ102aは、切替管理部106aから出力されるメモリ保護制御信号により、OS2用例外ハンドラ領域505a及びOS2用メモリ領域506aが開放されている。このときデバッガ無効化回路112aは、切替管理部106aから、「無効」を示すデバッガ制御信号を受け取り、デバッガインターフェース113aとCPU101aとを切断するよう、スイッチを開状態にする。
図24は、情報処理装置100a全体の動作を示すフローチャートである。ここでは、図24に基づき、情報処理装置100aの動作について説明する。
情報処理装置100aは、OS1のブート処理を行い(ステップS1031)、OS1による処理を行う(ステップS1032)。その後、情報処理装置100aはOS1の退避処理を行う(ステップS1033)。
割込み要因が、OS1管理のハードウェア108aからの割込みである場合(ステップS1039で1)、情報処理装置100aは、デバイスドライバにより割込みに対応する処理を行い、割込み処理が終了すると、割込みを受け付けたコードの次のコードを実行し、割込みからの復帰処理を行う(ステップS1037)。情報処理装置100aは、割込みから復帰すると(ステップS1037)、ステップS1033へとび、OS1の退避処理を行う。
なお、情報処理装置100aがOS1に従い動作している状態(ステップS1032)において、OS1管理のハードウェア108aに係る割込みが発生した場合、情報処理装置100aは、公知技術である通常のオペレーティングシステムの割り込み処理を行うため、説明を省略する。
割込み要因が、OS2管理のハードウェア109aからの割込みである場合(ステップS1061で2)、情報処理装置100aは、デバイスドライバにより割込みに対応する処理を行い(ステップS1062)、割込み処理が終了すると、割込みを受け付けたコードの次のコードを実行し、割込みからの復帰処理を行う(ステップS1059)。情報処理装置100aは、割込みから復帰すると(ステップS1059)、ステップS1057へ進みOS2の退避処理を行う。
ここで、ステップS1033からステップS1037まで破線で囲まれた処理は、OS1用ソフトウェア割込みハンドラ801及び802を実行することによる処理であり、ステップS1039の割込み要因の確認処理は、OS1の割込みハンドラを実行することによる処理である。
上記第2の実施形態における情報処理装置100aは、割込み要因の確認を、ソフトウェアが割込みコントローラ107aに問い合わせる構成を有しているが、割込み要因の確認をハードウェアが実現するように構成してもよい。そこで、情報処理装置100aの変形例として、情報処理装置100bについて説明する。
同図に示す様に、情報処理装置100bは、CPU101b、メモリ102b、例外テーブル切替部103b、OS1用例外テーブル格納部104b、OS2用例外テーブル格納部105b、切替管理部106b、ベクタ割込みコントローラ107b、OS1管理のハードウェア108b、OS2管理のハードウェア109b、バス110b、デバッガ無効化回路112b及びデバッガインターフェース113bから構成される。
(1)ベクタ割込みコントローラ107b
ベクタ割込みコントローラ107bは、割込みコントローラ107aと同様に、OS1管理のハードウェア108bからの割込みを受け付ける割込み線、及び、OS2管理のハードウェア109bからの割込みを受け付ける割込み線を備える。
図26は、切替管理部106bの構成を示す図である。同図に示す様に、切替管理部106bは、システム状態管理部701b、メモリ保護制御部702b、例外テーブル制御部703b、例外制御部704b、割込み制御部705b、デバッガ制御部706b及びゲート707bから構成される。
システム状態管理部701bの動作は、図22に示したシステム状態管理部701aの動作と同様であるので、説明を省略する。
ここで、VEビットは、CPU101bに設定されるベクタ割込みコントローラ無効化ビットである。VE=0は、ベクタ割込みの受け付けの禁止、即ちベクタ割込みのマスクを示し、VE=1は、ベクタ割込みの受け付け許可を示す。VEビットは、ソフトウェアにより、CPU101bに設定される。CPU101bリセット後のVEビットの初期状態は、VE=0である。
ここで、nIRQは、割込みの発生をCPU101bへ伝える信号であり、切替管理部106b内のゲート707bより出力される信号である。nIRQ=0(LOW)のとき割り込みが発生している。
t1以前:情報処理装置100bは、OS2で動作しているとする。このとき、OS2はVE=1にしないのでVE=0であり、ベクタ割込みコントローラ107bからのベクタ割込みがマスクされている。また、I=0であり、割込みの受け付けが許可されている。
t2:図27では省略しているが、ベクタ割込みコントローラ107bは、割込み信号111bを駆動し、切替管理部106bに割込みの発生を伝える。割込みの発生が伝えられると、切替管理部106bは、nIRQをアサートして、CPU101bに割込みの発生を伝える。CPU101bは、nIRQ=0を受け取ると、IビットをI=1に設定し、割込みをマスクするする。
t4:システム状態管理部701bが図29に示した動作を行い、OS2からOS1へ遷移する。図24のステップS1036(割込みマスク解除)で、割込みマスクを解除する前に、CPU101bのVEビットはVE=1に設定される。
t6:CPU101bは、VE=1であるので、割込みを処理するため、ベクタ割込みコントローラ107bへデバイスドライバのアドレスを要求する。
t8:ベクタ割込みコントローラ107bは、CPU101bへデバイスドライバのアドレスを受け取ったか問い合わせる。
t9:CPU101bは、ベクタ割込みコントローラ107bへ、ACKを送信し、デバイスドライバのアドレスを受け取ったことを通知する。
t12:デバイスドライバは、処理終了後、CPU101bのcsrのIビットをI=0に設定する。
上記第2の実施形態である情報処理装置100aの変形例として、情報処理装置100dについて説明する。
図28は、情報処理装置100dの構成を機能的に示す機能ブロック図である。
同図に示す様に、情報処理装置100dは、CPU101d、メモリ102d、例外テーブル切替部103d、OS1用例外テーブル格納部104d、OS2用例外テーブル格納部105d、切替管理部106d、割込みコントローラ107d、OS1管理のハードウェア108d、OS2管理のハードウェア109d、バス110d、デバッガ無効化回路112d、デバッガインターフェース113d及びパワーオンリセット回路114dから構成される。
パワーオンリセット回路114dは、情報処理装置100dに電源が供給された場合、バグ、ノイズの発生等によりシステムの不具合が発生した場合に、情報処理装置100d全体にリセットを掛ける回路である。
パワーオンリセット回路114dからのリセット信号により、CPU101dにリセットが掛かると、CPU101dは内部をクリアし、OS1がブートする。また、メモリ102にリセットが掛かるときの処理については以下で述べる。
同図に示す様に、メモリ102dは、バスインターフェース501d、メモリ保護機構502d、メモリクリア回路511d及びメモリ領域から成る。メモリ保護機構502dは、バスインターフェース501dとOS2用例外ハンドラ領域505dとの間に設けられたスイッチ509d、及び、バスインターフェース501dとOS2用メモリ領域506dとの間に設けられたスイッチ510dを備える。また、メモリ領域は、OS1用例外ハンドラ領域503d、OS1用メモリ領域504d、OS2用例外ハンドラ領域505d及びOS2用メモリ領域506dに分割されている。メモリ102aとの構成上の違いは、メモリクリア回路511dを備える点である。
本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に限定されないのは勿論であり、以下の様な場合も本発明に含まれる。
(1)上記の実施形態では、情報処理装置は、OS1及びOS2の2個のオペレーティングシステムを保持しているが、本発明において、情報処理装置が保持するオペレーティングシステムは、2個に限定されないのは勿論であり、2個以上の複数個のオペレーティングシステムを保持する場合も本発明に含まれる。
(3)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、マイクロプロセッサとメモリとを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。
100a 情報処理装置
100b 情報処理装置
100d 情報処理装置
101 CPU
101a CPU
101b CPU
101d CPU
102 メモリ
102a メモリ
102b メモリ
102d メモリ
103 例外テーブル切替部
103a 例外テーブル切替部
103b 例外テーブル切替部
103d 例外テーブル切替部
104 OS1用例外テーブル格納部
104a OS1用例外テーブル格納部
104b OS1用例外テーブル格納部
104d OS1用例外テーブル格納部
105 OS2用例外テーブル格納部
105a OS2用例外テーブル格納部
105b OS2用例外テーブル格納部
105d OS2用例外テーブル格納部
106 切替管理部
106a 切替管理部
106b 切替管理部
106d 切替管理部
107 割込みコントローラ
107a 割込みコントローラ
107b ベクタ割込みコントローラ
107d ベクタ割込みコントローラ
108 OS1管理のハードウェア
108a OS1管理のハードウェア
108b OS1管理のハードウェア
108d OS1管理のハードウェア
109 OS2管理のハードウェア
109a OS2管理のハードウェア
109b OS2管理のハードウェア
109d OS2管理のハードウェア
110 バス
110a バス
110b バス
110d バス
112a デバッガ無効化回路
112b デバッガ無効化回路
112d デバッガ無効化回路
113a デバッガインターフェース
113b デバッガインターフェース
113d デバッガインターフェース
114d パワーオンリセット回路
Claims (19)
- 第1のOS及び第2のOSの管理に従い動作する情報処理装置であって、
第1のOSが管理するデータを記憶している第1領域と、
第2のOSの復帰命令と第2のOSへの分岐命令とを含むリセットハンドラを記憶している第2領域と、
第1領域に対する外部からのアクセスの遮断及び開放を切り替えるアクセス遮断機構とから構成される記憶手段と、
前記リセットハンドラの第2領域における位置を示す位置情報を格納している例外テーブル格納手段と、
第1のOSの管理下で動作中に、第1のOSから第2のOSへの切替指示を受け付けると、前記アクセス遮断機構に対して第1領域の遮断を指示し、CPUに対してリセットを指示する切替管理手段と、
プログラムカウンタを備え、プログラムカウンタにセットされた位置情報が示す位置の命令を実行し、切替管理手段からリセットの指示を受けると、内部を初期化し、プログラムカウンタに前記リセットハンドラの位置を示す位置情報をセットするCPUと
を備えることを特徴とする情報処理装置。 - 前記記憶手段のアクセス遮断機構は、更に、前記第2領域に対する外部からのアクセスの遮断及び開放を切り替え、
前記切替管理手段は、前記切替指示を受け付けると、前記アクセス遮断機構に対して第1領域の遮断に続き、第2領域の開放を指示する
ことを特徴とする請求項1に記載の情報処理装置。 - 前記記憶手段は、更に、第2のOSへの切替前の第1のOSのCPU状態を退避させる退避命令を含む第1割込みハンドラを記憶している第3領域を備え、
前記アクセス遮断機構は、更に、前記第3領域に対する外部からのアクセスの遮断及び開放を切り替え、
前記例外テーブル格納手段は、前記第1割込みハンドラの前記第3領域における位置を示す位置情報を格納しており、
前記CPUは、第1のOSの管理下で実行中のプログラムから前記第1割込みハンドラが呼び出されると、プログラムカウンタに、前記第1割込みハンドラの位置を示す位置情報をセットし、
前記切替管理手段は、前記第1割込みハンドラから、第1のOSから第2のOSへの前記切替指示を受け付ける
ことを特徴とする請求項2に記載の情報処理装置。 - 前記切替管理手段は、
前記第1割込みハンドラから、第2のOS上で動作するプログラムの種類と前記プログラムに要求する処理内容とを受け取り、
前記リセットハンドラへ、前記プログラムの種類と前記処理要求とを通知する
ことを特徴とする請求項3に記載の情報処理装置。 - 前記記憶手段の第3領域は、第2割込みハンドラを記憶しており、
前記第2割込みハンドラは、
発生したハードウェア割込みが、第1のOSが管理するハードウェアからの割込み又は第2のOSが管理するハードウェアからの割込みの何れであるか判断する判断命令と、
第2のOSが管理するハードウェアからの割込みであると判断する場合に、前記第1割込みハンドラに分岐する命令とを含み、
前記例外テーブル格納手段は、前記第2割込みハンドラの前記第3領域における位置を示す位置情報を格納しており、
前記CPUは、第1のOSの管理下で動作中に割込みを受け付けると、プログラムカウンタに前記第2割込みハンドラの位置を示す位置情報をセットする
ことを特徴とする請求項4に記載の情報処理装置。 - 前記情報処理装置は、前記第2割込みハンドラの処理、及び、前記第1割込みハンドラの処理を経て、第2のOSの管理下で動作中であって、
前記リセットハンドラは、第2のOSから第1のOSへの復帰準備を行う命令を含み、
前記CPUは、
前記第1のOSへの復帰準備として、内部のリンクレジスタに第1のOSへ戻るプログラムの先頭番地をセットしたのち、第2のOSが管理するハードウェアを操作するデバイスドライバへ分岐し、
前記デバイスドライバの処理の終了を検知すると、リンクレジスタにセットした前記先頭番地を、プログラムカウンタにセットする
ことを特徴とする請求項5に記載の情報処理装置。 - 前記第2割込みハンドラは、更に、
第1のOSが管理するハードウェアからの割込みであると判断する場合に、第1のOSが管理するハードウェアを操作するデバイスドライバへ分岐する分岐命令を含み、
前記CPUは、
割込みが発生すると、プログラムカウンタに、前記第2割込みハンドラの位置を示す位置情報をセットし、第1のOSが管理するハードウェアからの割込みであると判断すると、前記第2割込みハンドラから呼び出される前記デバイスドライバの位置を示す位置情報を、プログラムカウンタにセットする
ことを特徴とする請求項5に記載の情報処理装置。 - 前記記憶手段は、更に、第2のOSが管理するデータを記憶している第4領域を備え、
前記アクセス遮断機構は、更に、前記第4領域に対する外部からのアクセスの遮断及び開放を切り替え、
前記切替管理手段は、前記リセットハンドラから、前記第4領域の開放指示を受け取ると、前記アクセス遮断機構に対して、前記第4領域の開放を指示する
ことを特徴とする請求項3に記載の情報処理装置。 - 前記情報処理装置は、更に、前記例外テーブル格納手段と外部との接続を切り替える例外テーブル切替手段を備え、
前記例外テーブル格納手段は、前記第1割込みハンドラ及び前記第3割込みハンドラの格納位置を示す位置情報を含む第1例外テーブルと、前記リセットハンドラの格納位置を示す位置情報を含む第2例外テーブルとを格納しており、
前記切替管理手段は、前記CPUが第1のOSの管理下で動作中の場合、第1例外テーブルの接続を指示し、第2のOSの管理下で動作中の場合、第2例外テーブルの接続を指示し、
前記例外テーブル切替手段は、前記切替管理手段からの指示を受けて、前記第1例外テーブル又は前記第2例外テーブルを外部と接続する
ことを特徴とする請求項4に記載の情報処理装置。 - 前記アクセス遮断機構は、前記第3領域に対する外部からのアクセスの遮断及び開放を切り替え、
前記切替管理手段は、前記第1割込みハンドラから、第1のOSから第2のOSへの切替指示を受け付けると、前記アクセス遮断機構に対して、前記第3領域の遮断を指示する
ことを特徴とする請求項3に記載の情報処理装置。 - 前記第1割込みハンドラは、
前記退避命令を実行した後、前記CPUに対し、省電力モードへの切り替えを指示し、
前記CPUは、
省電力モードへの切替処理を行い、前記切替処理が終了すると、前記切替管理手段へ省電力モードに切り替わったことを示す信号を出力し、
前記切替管理手段は、
前記CPUから、省電力モードに切り替わったことを示す信号を受け取った後、前記CPUにリセットを指示する
ことを特徴とする請求項3に記載の情報処理装置。 - 第1のOS及び第2のOSの管理に従い動作する情報処理装置であって
第1のOSが管理するデータを記憶している第1領域と、
第1のOSから第2のOSへの切替に係る退避命令、及び、第2のOSへの分岐命令に分岐する命令を含む第1割込みハンドラを記憶している第2領域と、
第2のOSの退避命令及び第2のOSへの復帰命令を含む第2割込みハンドラを記憶している第3領域と、
前記第1領域及び前記第2領域に対する外部からのアクセスの遮断及び開放を切り替えるアクセス遮断機構とから構成される記憶手段と、
前記第1割込みハンドラへの分岐を示す分岐命令を保持する分岐命令保持部と、
前記分岐命令がフェッチされたことを検知するフェッチ検知部とから構成される切替管理手段とを備え、
前記フェッチ検知部が前記分岐命令のフェッチを検知すると、前記アクセス遮断機構に対して、前記第1領域の遮断を指示する
ことを特徴とする情報処理装置。 - 前記情報処理装置は、更に、
プログラムカウンタを備え、プログラムカウンタにセットされる位置情報が示す命令を実行するCPUを備え、
前記CPUは、前記第2割込みハンドラを処理し、第2のOSから第1のOSに切り替える指示をする前に、前記分岐命令保持部に、第1のOSから第2のOSへのリターンアドレスを設定する
ことを特徴とする請求項12に記載の情報処理装置。 - 前記第1割込みハンドラは、割込みをマスクし、前記切替管理手段に対して、第2のOS上で動作するプログラムの種類と前記プログラムに要求する処理内容とを通知し、
前記CPUは、前記第1割込みハンドラから呼び出される前記第2割込みハンドラの前記復帰命令の位置を示す位置情報を、前記分岐命令保持部から読み出し、プログラムカウンタにセットし、
前記切替管理手段は、前記第2割込みハンドラへ、前記プログラムの種類と前記処理内容とを通知する
ことを特徴とする請求項13に記載の情報処理装置。 - 前記第2割込みハンドラは、第1のOSから第2のOSへの切替要因を確認し、前記切替要因が第2のOSが管理するプログラムへの処理要求である場合に、前記プログラムへ分岐し、
前記CPUは、前記第2割込みハンドラから呼び出される前記プログラムの位置を示す位置情報をプログラムカウンタにセットする
ことを特徴とする請求項14に記載の情報処理装置。 - 前記第2割込みハンドラは、第1のOSから第2のOSへの切替要因を確認し、前記切替要因が第2のOSが管理するハードウェアからの割込みである場合に、割込みマスクを解除し、第2のOSが管理するハードウェアを操作するデバイスドライバの位置を示す位置情報を、前記CPUのプログラムカウンタにセットし、
前記CPUは、前記デバイスドライバの処理の終了を検知すると、プログラムカウンタに、前記第2割込みハンドラの前記復帰命令の位置を示す位置情報をプログラムカウンタにセットする
ことを特徴とする請求項14に記載の情報処理装置。 - 前記情報処理装置は、更に、前記切替管理手段からの指示を受け、外部のデバッガと前記CPUとを接続又は遮断するデバッガ無効化回路を備え、
前記切替管理手段は、前記CPUが第1のOSの管理に従い動作しているときは、前記デバッガ無効化回路に対して遮断を指示し、前記CPUが第2のOSの管理に従い動作しているときは、デバッガ無効化回路に対して接続を指示する
ことを特徴とする請求項12に記載の情報処理装置。 - 前記情報処理装置は、更に、
第1のOSが管理するハードウェアからの割込みを受け付ける第1信号線と、
第2のOSが管理するハードウェアからの割込みを受け付ける第2信号線と、
第1及び第2のOSが管理するハードウェアを操作するそれぞれのデバイスドライバの位置情報を記述したテーブルとを備えるベクタ割込みコントローラを備え、
前記第2領域は、更に、前記第1のOSのブートコードを備え、
前記CPUは、
前記ブートコードの実行中に、前記ベクタ割込みコントローラからのデバイスドライバの位置情報の取得を無効化し、第3領域に格納されている第2割込みハンドラの実行中に、前記ベクタ割込みコントローラからのデバイスドライバの位置情報の取得を有効にする
ことを特徴とする請求項17に記載の情報処理装置。 - 前記情報処理装置は、更に、パワーオンリセット回路を備え、
前記記憶手段は、更に、記憶内容消去手段を備え、
前記パワーオンリセット回路は、前記CPU及び前記記憶手段を初期化するリセット信号を、前記CPU及び前記記憶内容消去手段に出力し、
前記CPUは、前記パワーオンリセット回路からリセット信号を受けると、内部を初期化し、
前記記憶内容消去手段は、前記パワーオンリセット回路から、リセット信号を受けると、前記記憶手段が記憶している記憶内容を破棄し、
前記リセット信号を受けてから、前記記憶内容の破棄を終了するまでの間、外部から前記記憶手段へのアクセスを遮断する
ことを特徴とする請求項17に記載の情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004159851A JP2005011336A (ja) | 2003-05-29 | 2004-05-28 | オペレーティングシステム切り替え可能な情報処理装置 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003153270 | 2003-05-29 | ||
JP2004159851A JP2005011336A (ja) | 2003-05-29 | 2004-05-28 | オペレーティングシステム切り替え可能な情報処理装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010148952A Division JP4876181B2 (ja) | 2003-05-29 | 2010-06-30 | オペレーティングシステム切り替え可能な情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005011336A true JP2005011336A (ja) | 2005-01-13 |
Family
ID=34106793
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004159851A Pending JP2005011336A (ja) | 2003-05-29 | 2004-05-28 | オペレーティングシステム切り替え可能な情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005011336A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007086909A (ja) * | 2005-09-20 | 2007-04-05 | Nec Corp | コンピュータ、携帯端末装置、電力制御方法、電力制御プログラム |
EP1821539A2 (en) * | 2006-02-15 | 2007-08-22 | Matsushita Electric Industrial Co., Ltd. | Decoding apparatus and integrated circuit |
WO2011114655A1 (ja) | 2010-03-16 | 2011-09-22 | パナソニック株式会社 | 情報処理装置、仮想マシン生成方法及びアプリ配信システム |
WO2011138852A1 (ja) | 2010-05-07 | 2011-11-10 | パナソニック株式会社 | 情報処理装置、情報処理方法、及びプログラム配信システム |
US8060716B2 (en) | 2006-12-22 | 2011-11-15 | Panasonic Corporation | Information processing device for securely processing data that needs to be protected using a secure memory |
JP5249920B2 (ja) * | 2007-07-05 | 2013-07-31 | パナソニック株式会社 | データ処理装置、データ処理方法、データ処理プログラム、記録媒体及び集積回路 |
US9483278B2 (en) | 2013-05-11 | 2016-11-01 | Lenovo (Singapore) Pte. Ltd. | Arrangement for secure independent operating environments in a computer |
US10372487B2 (en) | 2015-02-27 | 2019-08-06 | Samsung Electronics Co., Ltd. | Device and method of running multiple operating systems and presenting multiple operation screens |
US11243802B2 (en) | 2015-02-27 | 2022-02-08 | Samsung Electronics Co., Ltd. | Device and method of running multiple operating systems and presenting multiple operation screens using locking of host operating system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01140255A (ja) * | 1987-11-26 | 1989-06-01 | Matsushita Electric Ind Co Ltd | メモリ保護方法 |
JPH07105091A (ja) * | 1993-10-01 | 1995-04-21 | Hitachi Ltd | キャッシュの制御装置および制御方法 |
JPH08227356A (ja) * | 1994-12-21 | 1996-09-03 | Tec Corp | データ処理装置 |
JP2000076087A (ja) * | 1998-08-28 | 2000-03-14 | Hitachi Ltd | マルチオペレーティングシステム制御方法 |
JP2002140138A (ja) * | 2000-08-22 | 2002-05-17 | Canon Inc | 省電力移行制御装置、情報処理装置、省電力移行制御方法及び記憶媒体 |
-
2004
- 2004-05-28 JP JP2004159851A patent/JP2005011336A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01140255A (ja) * | 1987-11-26 | 1989-06-01 | Matsushita Electric Ind Co Ltd | メモリ保護方法 |
JPH07105091A (ja) * | 1993-10-01 | 1995-04-21 | Hitachi Ltd | キャッシュの制御装置および制御方法 |
JPH08227356A (ja) * | 1994-12-21 | 1996-09-03 | Tec Corp | データ処理装置 |
JP2000076087A (ja) * | 1998-08-28 | 2000-03-14 | Hitachi Ltd | マルチオペレーティングシステム制御方法 |
JP2002140138A (ja) * | 2000-08-22 | 2002-05-17 | Canon Inc | 省電力移行制御装置、情報処理装置、省電力移行制御方法及び記憶媒体 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007086909A (ja) * | 2005-09-20 | 2007-04-05 | Nec Corp | コンピュータ、携帯端末装置、電力制御方法、電力制御プログラム |
EP1821539A2 (en) * | 2006-02-15 | 2007-08-22 | Matsushita Electric Industrial Co., Ltd. | Decoding apparatus and integrated circuit |
EP1821539A3 (en) * | 2006-02-15 | 2009-08-05 | Panasonic Corporation | Decoding apparatus and integrated circuit |
US8060716B2 (en) | 2006-12-22 | 2011-11-15 | Panasonic Corporation | Information processing device for securely processing data that needs to be protected using a secure memory |
JP5249920B2 (ja) * | 2007-07-05 | 2013-07-31 | パナソニック株式会社 | データ処理装置、データ処理方法、データ処理プログラム、記録媒体及び集積回路 |
WO2011114655A1 (ja) | 2010-03-16 | 2011-09-22 | パナソニック株式会社 | 情報処理装置、仮想マシン生成方法及びアプリ配信システム |
US9081596B2 (en) | 2010-03-16 | 2015-07-14 | Panasonic Intellectual Property Management Co., Ltd. | Information processing device, virtual machine creation method, and application distribution system |
WO2011138852A1 (ja) | 2010-05-07 | 2011-11-10 | パナソニック株式会社 | 情報処理装置、情報処理方法、及びプログラム配信システム |
US8904518B2 (en) | 2010-05-07 | 2014-12-02 | Panasonic Corporation | Information processing device, information processing method, and program distribution system |
US9483278B2 (en) | 2013-05-11 | 2016-11-01 | Lenovo (Singapore) Pte. Ltd. | Arrangement for secure independent operating environments in a computer |
US10372487B2 (en) | 2015-02-27 | 2019-08-06 | Samsung Electronics Co., Ltd. | Device and method of running multiple operating systems and presenting multiple operation screens |
US11243802B2 (en) | 2015-02-27 | 2022-02-08 | Samsung Electronics Co., Ltd. | Device and method of running multiple operating systems and presenting multiple operation screens using locking of host operating system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4876181B2 (ja) | オペレーティングシステム切り替え可能な情報処理装置 | |
KR100242484B1 (ko) | 캐쉬 메모리 시스템의 성능 최적화 방법 및 장치 | |
US6209085B1 (en) | Method and apparatus for performing process switching in multiprocessor computer systems | |
CN108780396B (zh) | 程序循环控制 | |
JP2005521924A (ja) | シングルスレッドプログラムのマルチスレッドでのインプリシットな実行を可能にするマルチスレッドプロセッサ | |
CN108885549B (zh) | 分支指令 | |
EP0948768A1 (en) | System for facilitating data i/o between usb input device and non-usb cognition application | |
JP6508382B1 (ja) | 情報処理装置、情報処理方法、プログラム | |
JP2004520662A (ja) | 共通の名前を有する複数のレジスタへの選択的なアクセス | |
JP3226055B2 (ja) | 情報処理装置 | |
JPH0564813B2 (ja) | ||
TW201337572A (zh) | 推測式快取修改技術 | |
JP2005011336A (ja) | オペレーティングシステム切り替え可能な情報処理装置 | |
JPH1021074A (ja) | 割り込み制御方式、プロセッサ及び計算機システム | |
JPWO2012053095A1 (ja) | 割込み信号受付け装置及びコンピュータ装置 | |
JPH0340047A (ja) | キヤツシユ・ライン・ストア方法 | |
JPH0316660B2 (ja) | ||
JPH05257808A (ja) | マイクロプロセッサ及びその動作変換方法 | |
US6339823B1 (en) | Method and apparatus for selective writing of incoherent MMX registers | |
JPH01213732A (ja) | データ処理システム | |
JP3670646B2 (ja) | レジスタ転送オペレーション | |
JPH1049373A (ja) | パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置 | |
EP1235139B1 (en) | System and method for supporting precise exceptions in a data processor having a clustered architecture | |
JPH0715667B2 (ja) | データ処理装置 | |
JP5555514B2 (ja) | プロセッサシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070403 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090519 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090715 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100330 |