JPH1069393A - 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体 - Google Patents

仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体

Info

Publication number
JPH1069393A
JPH1069393A JP14254097A JP14254097A JPH1069393A JP H1069393 A JPH1069393 A JP H1069393A JP 14254097 A JP14254097 A JP 14254097A JP 14254097 A JP14254097 A JP 14254097A JP H1069393 A JPH1069393 A JP H1069393A
Authority
JP
Japan
Prior art keywords
machine
output
input
interrupt
instruction
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
Application number
JP14254097A
Other languages
English (en)
Inventor
Takayuki Miyashita
隆行 宮下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HOKKAIDO NIPPON DENKI SOFTWARE KK
NEC Solution Innovators Ltd
Original Assignee
HOKKAIDO NIPPON DENKI SOFTWARE KK
NEC Software Hokkaido Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HOKKAIDO NIPPON DENKI SOFTWARE KK, NEC Software Hokkaido Ltd filed Critical HOKKAIDO NIPPON DENKI SOFTWARE KK
Priority to JP14254097A priority Critical patent/JPH1069393A/ja
Publication of JPH1069393A publication Critical patent/JPH1069393A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】ベースマシン用のOSおよびBIOSを用い
て、ベースマシン上でターゲットマシンを効率良くエミ
ュレートする。 【解決手段】ベースマシン上で、異なるアーキテクチャ
のターゲットマシン上で動作するAPを動作させる仮想
計算機エミュレータであって、該APがターゲットマシ
ン用のOSおよびBIOSに対してファンクションコー
ルを発行した場合にはS/W割り込みエミュレータを用
いて、または該APがターゲットマシンの周辺制御装置
に対するI/O命令を発行した場合にはターゲットマシ
ン用表示制御部またはベースマシン用周辺装置制御部を
用いて、または該APがターゲットマシン用の割り込み
ベクトルテーブルやBIOSのデータ領域に対するメモ
リアクセス命令を発行した場合にはベースマシンのOS
およびBIOSを用いて該APの動作をエミュレートす
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、パーソナルコンピ
ュータやワークステーション等の計算機と、該計算機上
で実現される、異なるアーキテクチャを有する仮想計算
機との間において、アプリケーションプログラム(以
下、APとする)の実行に係る互換性を保証する仮想計
算機エミュレータ、仮想計算機エミュレート方法および
仮想計算機エミュレートプログラムを記録した記録媒体
に関する。
【0002】
【従来の技術】パーソナルコンピュータ等の計算機を構
成するオペレーティングシステム(以下、OSとす
る)、基本入出力システム(以下、BIOSとする)、
メモリマップ、入出力(以下、I/Oとする)マップや
LSI等には、それぞれに様々なアーキテクチャが存在
している。このように、計算機間でアーキテクチャが異
なると、あるアーキテクチャに基づく計算機上で開発さ
れたAPを、他のアーキテクチャに基づく計算機上で実
行することができないという問題が発生する。
【0003】従来の技術においては、このような問題を
解決するために、あるアーキテクチャの計算機(以下、
ベースマシンとする)上で他のアーキテクチャの計算機
(以下、ターゲットマシンとする)のエミュレーション
を行い、該ターゲットマシン上で開発されたAPをベー
スマシン上でそのまま実行することができるようにして
いる。
【0004】この従来のエミュレーション方式には、A
Pの構成に応じて、以下の3つのレベルの方式が存在し
ている。 (1)OSとBIOSを呼び出す命令を含むAP(以
下、レベル1とする)のエミュレーション (2)さらにI/O命令を含むAP(以下、レベル2と
する)のエミュレーション (3)さらに割り込み処理プログラムのアドレスを格納
する割り込みベクトルテーブルを直接アクセスするため
の命令とBIOSのデータ領域を直接アクセスするため
の命令とを含むAP(以下、レベル3とする)のエミュ
レーション 特開平5−46406号公報には、ベースマシンのメモ
リマップ、I/Oマップ、I/Oポート番号、DOSお
よびBIOSをターゲットマシンと互換にして、ベース
マシン上でレベル3のターゲットマシン用APを正しく
実行する技術が開示されている。
【0005】より具体的には、ベースマシン上にハード
ウェアで実現したメモリ管理機構を備えて、ターゲット
マシンの割り込みベクトルテーブルやBIOSのデータ
領域を管理するターゲットマシン用のメモリマップへの
アクセスを可能にし、また、ベースマシン上にターゲッ
トマシン用の表示制御部やI/Oエミュレータを備え
て、ターゲットマシンのI/OマップとI/Oポート番
号へのアクセスを可能にし、さらに、ベースマシン上に
ターゲットマシン用のDOSを備えて、ターゲットマシ
ンのDOSを使用できるようにし、さらにまた、ベース
マシン上にターゲットマシン用のBIOSエミュレータ
を備えて、ターゲットマシンのBIOSを使用できるよ
うにしている。
【0006】
【発明が解決しようとする課題】特開平5−46406
号公報記載の技術においては、ベースマシン上でターゲ
ットマシン用のOSをそのまま動作させているため、該
ターゲットマシン用のOSが実行するBIOSを呼び出
す命令やI/O命令をBIOSエミュレータやI/Oエ
ミュレータが処理しなければならず、その分、各エミュ
レータの実行性能が劣化するという問題があった。
【0007】また、該技術においては、ベースマシン上
でターゲットマシン用のAPが動作する場合には、さら
に各エミュレータ、ターゲットマシン用のOSおよびタ
ーゲットマシン用のドライバのみが動作する事ができ、
ベースマシン用のOS、ベースマシン用のドライバおよ
びベースマシン用のBIOSはベースマシン上で動作す
ることができない。そのため、ベースマシン用のドライ
バで制御されるベースマシン用の拡張周辺機器を、ター
ゲットマシン用のAPが使用することができないという
問題があった。
【0008】さらに、該技術においては、I/Oハード
ウェアから発生する割り込みに関して考慮していないた
め、該I/Oハードウェアから発生する割り込みを処理
する命令を含むターゲットマシン用のAP(以下、レベ
ル4とする)を実行することができないという問題があ
った。
【0009】本発明の目的は、ベースマシン用のOS、
ベースマシン用のBIOSおよびベースマシン用のドラ
イバを用いて、ベースマシン上でターゲットマシンを効
率良くエミュレートすることができるようにすることに
ある。
【0010】本発明の他の目的は、ベースマシン上でベ
ースマシン用の拡張周辺機器を使用するターゲットマシ
ン用のAPを実行することができるようにすることにあ
る。
【0011】本発明の他の目的は、ベースマシン上でレ
ベル4のターゲットマシン用のAPを実行することがで
きるようにすることにある。
【0012】
【課題を解決するための手段】本発明の第1の仮想計算
機エミュレータは、任意のアーキテクチャに基づいて動
作するベースマシンにおいて、前記ベースマシンのオペ
レーティングシステムおよび基本入出力システムを用い
て該ベースマシンとは異なるアーキテクチャに基づいて
動作するターゲットマシン用のアプリケーションプログ
ラムを実行させるエミュレート手段を含むことを特徴と
する。
【0013】本発明の第2の仮想計算機エミュレータ
は、第1の仮想計算機エミュレータにおいて、前記ベー
スマシンが、前記ターゲットマシンの表示に係る入出力
制御を行うターゲットマシン用表示制御部と、該ベース
マシンの表示以外に係る入出力制御を行うベースマシン
用周辺装置制御部とを備え、前記エミュレート手段が、
前記アプリケーションプログラムがソフトウェア割り込
み命令を用いて発行するファンクションコールが前記タ
ーゲットマシンの基本入出力システムに対するものの場
合、該ファンクションコールに対応する処理が表示に係
るものであれば、該ファンクションコールに対応する処
理を前記ターゲットマシン用表示制御部に対して行い、
また、該ファンクションコールに対応する処理が表示以
外の入出力に係るものであれば、該ファンクションコー
ルに対応する処理を前記ベースマシン用周辺装置制御部
に対して行うソフトウェア割り込みエミュレータを含む
ことを特徴とする。
【0014】本発明の第3の仮想計算機エミュレータ
は、第1の仮想計算機エミュレータにおいて、前記エミ
ュレート手段が、前記アプリケーションプログラムがソ
フトウェア割り込み命令を用いて発行するファンクショ
ンコールが前記ターゲットマシンのオペレーティングシ
ステムに対するものの場合、該ファンクションコールに
対応する処理が該ターゲットマシンのオペレーティング
システムと前記ベースマシンのオペレーティングシステ
ムとの差の部分に対するものであれば、該ベースマシン
のオペレーティングシステムと基本入出力システムとを
用いて該ファンクションコールに対応する処理を行い、
また、前記ファンクションコールに対応する処理が該タ
ーゲットマシンのオペレーティングシステムと前記ベー
スマシンのオペレーティングシステムとの差の部分に対
するものでない場合には、該ベースマシンのオペレーテ
ィングシステムを用いて該ファンクションコールに対応
する処理を行うソフトウェア割り込みエミュレータを含
むことを特徴とする。
【0015】本発明の第4の仮想計算機エミュレータ
は、第1の仮想計算機エミュレータにおいて、前記エミ
ュレート手段が、前記アプリケーションプログラムが前
記ターゲットマシンの割り込みベクトルテーブルや基本
入出力システムのデータ領域に対してメモりアクセス命
令を発行した場合、別に用意したターゲットマシン用の
割り込みベクトルテーブルや基本入出力システムのデー
タ領域へアクセスするように該メモリアクセス命令が指
すアドレスを変換するメモリエミュレータを含むことを
特徴とする。
【0016】本発明の第5の仮想計算機エミュレータ
は、第1の仮想計算機エミュレータにおいて、前記ベー
スマシンが、前記ターゲットマシンの表示に係る入出力
制御を行うターゲットマシン用表示制御部と、該ベース
マシンの表示以外に係る入出力制御を行うベースマシン
用周辺装置制御部とを備え、前記エミュレート手段が、
前記アプリケーションプログラムが前記ターゲットマシ
ンへの入出力命令を発行した場合、該入出力命令が表示
に係るものであれば該入出力命令を前記ターゲットマシ
ン用表示制御部への入出力命令に変換し、該入出力命令
が表示以外に係るものであれば該入出力命令を前記ベー
スマシン用周辺装置制御部への入出力命令に変換する入
出力エミュレータを含むことを特徴とする。
【0017】本発明の第6の仮想計算機エミュレータ
は、第1の仮想計算機エミュレータにおいて、前記ベー
スマシンが、該ベースマシンの表示以外に係る入出力制
御を行うベースマシン用周辺装置制御部を備え、前記エ
ミュレート手段が、前記ベースマシン用周辺装置制御部
からの割り込みを受けた場合、該割り込みの番号を前記
ターゲットマシンにおける割り込みの番号に変換し、変
換した割り込みの番号がアプリケーションプログラムか
らマスクされている番号でない場合には、該変換した割
り込みの番号に対応するアプリケーションプログラムに
前記ベースマシン用周辺装置制御部から割り込みを受け
た旨を通知し、また、該変換した割り込み番号がアプリ
ケーションプログラムからマスクされている場合にはア
プリケーションプログラムに該ベースマシン用周辺装置
制御部からの割り込みを通知しないハードウェア割り込
みエミュレータを含むことを特徴とする。
【0018】本発明の第7の仮想計算機エミュレータ
は、第1の仮想計算機エミュレータにおいて、前記ベー
スマシンが、前記ターゲットマシンの表示に係る入出力
制御を行うターゲットマシン用表示制御部と、該ベース
マシンの表示以外に係る入出力制御を行うベースマシン
用周辺装置制御部とを備え、前記エミュレート手段が、
前記アプリケーションプログラムがソフトウェア割り込
み命令を用いて発行するファンクションコールが前記タ
ーゲットマシンの基本入出力システムに対するものの場
合、該ファンクションコールに対応する処理が表示に係
るものであれば、該ファンクションコールに対応する処
理を前記ターゲットマシン用表示制御部に対して行い、
また、該ファンクションコールに対応する処理が表示以
外の入出力に係るものであれば、該ファンクションコー
ルに対応する処理を前記ベースマシン用周辺装置制御部
に対して行うとともに、該ファンクションコールが前記
ターゲットマシンのオペレーティングシステムに対する
ものの場合、該ファンクションコールに対応する処理が
該ターゲットマシンのオペレーティングシステムと前記
ベースマシンのオペレーティングシステムとの差の部分
に対するものであれば、該ベースマシンのオペレーティ
ングシステムと基本入出力システムとを用いて該ファン
クションコールに対応する処理を行い、また、前記ファ
ンクションコールに対応する処理が該ターゲットマシン
のオペレーティングシステムと前記ベースマシンのオペ
レーティングシステムとの差の部分に対するものでない
場合には、該ベースマシンのオペレーティングシステム
を用いて該ファンクションコールに対応する処理を行う
ソフトウェア割り込みエミュレータと、前記ターゲット
マシン用の割り込みベクトルテーブルや基本入出力シス
テムのデータ領域を有し、前記アプリケーションプログ
ラムが前記ターゲットマシンの割り込みベクトルテーブ
ルや基本入出力システムのデータ領域に対してメモりア
クセス命令を発行した場合、別に用意したターゲットマ
シン用の割り込みベクトルテーブルや基本入出力システ
ムのデータ領域へアクセスするように該メモリアクセス
命令が指すアドレスを変換するメモリエミュレータと、
前記アプリケーションプログラムが前記ターゲットマシ
ンへの入出力命令を発行した場合、該入出力命令が表示
に係るものであれば該入出力命令を前記ターゲットマシ
ン用表示制御部への入出力命令に変換し、該入出力命令
が表示以外に係るものであれば該入出力命令を前記ベー
スマシン用周辺装置制御部への入出力命令に変換する入
出力エミュレータと、前記ベースマシン用周辺装置制御
部からの割り込みを受けた場合、該割り込みの番号を前
記ターゲットマシンにおける割り込みの番号に変換し、
変換した割り込みの番号がアプリケーションプログラム
からマスクされている番号でない場合には、該変換した
割り込みの番号に対応するアプリケーションプログラム
に前記ベースマシン用周辺装置制御部から割り込みを受
けた旨を通知し、また、該変換した割り込み番号がアプ
リケーションプログラムからマスクされている場合には
アプリケーションプログラムに該ベースマシン用周辺装
置制御部からの割り込みを通知しないハードウェア割り
込みエミュレータとを含むことを特徴とする。
【0019】本発明の第8の仮想計算機エミュレータ
は、第7の仮想計算機エミュレータにおいて、前記エミ
ュレート手段が、該エミュレート手段の起動時に、入出
力命令の例外、ソフトウェア割り込み命令の例外、割り
込みベクトルテーブルの例外、および基本入出力システ
ムのデータ領域の例外を設定する初期化部と、前記ソフ
トウェア割り込みエミュレータが前記ベースマシンのオ
ペレーティングシステムまたは基本入出力システムを呼
び出す際に、該オペレーティングシステムまたは基本入
出力システムを呼び出すことによって例外が発生しない
ように、また、該オペレーティングシステムから該基本
入出力システムを呼び出すことによって例外が発生しな
いように、また、該基本入出力システムから前記ベース
マシンの表示以外に係る入出力制御で例外が発生しない
ように、また、該基本入出力システムから前記ベースマ
シンの基本入出力システムのデータ領域へのアクセスで
例外が発生しないように、前記初期化部が設定した例外
を取り消し、該オペレーティングシステムまたは基本入
出力システムの処理の終了後に前記初期化部によって再
度例外の設定を行う例外割り込み解除復帰部とを含むこ
とを特徴とする。
【0020】本発明の第9の仮想計算機エミュレータ
は、第8の仮想計算機エミュレータにおいて、前記アプ
リケーションプログラムが、前記ターゲットマシンの入
出力制御を行うターゲットマシン用ドライバを含み、前
記ソフトウェア割り込みエミュレータが、前記アプリケ
ーションプログラムが所望する入出力処理を行うために
発行するソフトウェア割り込み命令により起動される該
入出力処理に対応する前記ターゲットマシン用ドライバ
からジャンプ命令によって呼び出され、前記ターゲット
マシンの基本入出力システムにより該入出力処理を行っ
た後、該アプリケーションプログラムの該ソフトウェア
割り込み命令の次の命令に制御を戻すことを特徴とす
る。
【0021】本発明の第1の仮想計算機エミュレート方
法は、任意のアーキテクチャに基づいて動作するベース
マシンにおいて、前記ベースマシンのオペレーティング
システムおよび基本入出力システムを用いて該ベースマ
シンとは異なるアーキテクチャに基づいて動作するター
ゲットマシン用のアプリケーションプログラムを実行さ
せることを特徴とする。
【0022】本発明の第2の仮想計算機エミュレート方
法は、第1の仮想計算機エミュレート方法において、前
記アプリケーションプログラムがソフトウェア割り込み
命令を用いて発行するファンクションコールが前記ター
ゲットマシンの基本入出力システムに対するものの場
合、該ファンクションコールに対応する処理が表示に係
るものであれば、該ファンクションコールに対応する処
理を前記ターゲットマシンの表示に係る入出力制御を行
うターゲットマシン用表示制御部に対して行い、また、
該ファンクションコールに対応する処理が表示以外の入
出力に係るものであれば、該ファンクションコールに対
応する処理を前記ベースマシンの表示以外に係る入出力
制御を行うベースマシン用周辺装置制御部に対して行う
ことを特徴とする。
【0023】本発明の第3の仮想計算機エミュレート方
法は、第1の仮想計算機エミュレート方法において、前
記アプリケーションプログラムがソフトウェア割り込み
命令を用いて発行するファンクションコールが前記ター
ゲットマシンのオペレーティングシステムに対するもの
の場合、該ファンクションコールに対応する処理が該タ
ーゲットマシンのオペレーティングシステムと前記ベー
スマシンのオペレーティングシステムとの差の部分に対
するものであれば、該ベースマシンのオペレーティング
システムと基本入出力システムとを用いて該ファンクシ
ョンコールに対応する処理を行い、また、前記ファンク
ションコールに対応する処理が該ターゲットマシンのオ
ペレーティングシステムと前記ベースマシンのオペレー
ティングシステムとの差の部分に対するものでない場合
には、該ベースマシンのオペレーティングシステムを用
いて該ファンクションコールに対応する処理を行うこと
を特徴とする。
【0024】本発明の第4の仮想計算機エミュレート方
法は、第1の仮想計算機エミュレート方法において、前
記アプリケーションプログラムが前記ターゲットマシン
の割り込みベクトルテーブルや基本入出力システムのデ
ータ領域に対してメモりアクセス命令を発行した場合、
別に用意したターゲットマシン用の割り込みベクトルテ
ーブルや基本入出力システムのデータ領域へアクセスす
るように該メモリアクセス命令が指すアドレスを変換す
ることを特徴とする。
【0025】本発明の第5の仮想計算機エミュレート方
法は、第1の仮想計算機エミュレート方法において、前
記アプリケーションプログラムが前記ターゲットマシン
への入出力命令を発行した場合、該入出力命令が表示に
係るものであれば該入出力命令を前記ターゲットマシン
の表示に係る入出力制御を行うターゲットマシン用表示
制御部への入出力命令に変換し、該入出力命令が表示以
外に係るものであれば該入出力命令を前記ベースマシン
の表示以外に係る入出力制御を行うベースマシン用周辺
装置制御部への入出力命令に変換することを特徴とす
る。
【0026】本発明の第6の仮想計算機エミュレート方
法は、第1の仮想計算機エミュレート方法において、前
記ベースマシンの表示以外に係る入出力制御を行うベー
スマシン用周辺装置制御部からの割り込みを受けた場
合、該割り込みの番号を前記ターゲットマシンにおける
割り込みの番号に変換し、変換した割り込みの番号がア
プリケーションプログラムからマスクされている番号で
ない場合には、該変換した割り込みの番号に対応するア
プリケーションプログラムに前記ベースマシン用周辺装
置制御部から割り込みを受けた旨を通知し、また、該変
換した割り込み番号がアプリケーションプログラムから
マスクされている場合にはアプリケーションプログラム
に該ベースマシン用周辺装置制御部からの割り込みを通
知しないことを特徴とする。
【0027】本発明の第7の仮想計算機エミュレート方
法は、第1の仮想計算機エミュレート方法において、前
記アプリケーションプログラムがソフトウェア割り込み
命令を用いて発行するファンクションコールが前記ター
ゲットマシンの基本入出力システムに対するものの場
合、該ファンクションコールに対応する処理が表示に係
るものであれば、該ファンクションコールに対応する処
理を前記ターゲットマシンの表示に係る入出力制御を行
うターゲットマシン用表示制御部に対して行い、また、
該ファンクションコールに対応する処理が表示以外の入
出力に係るものであれば、該ファンクションコールに対
応する処理を前記ベースマシンの表示以外に係る入出力
制御を行うベースマシン用周辺装置制御部に対して行う
とともに、該ファンクションコールが前記ターゲットマ
シンのオペレーティングシステムに対するものの場合、
該ファンクションコールに対応する処理が該ターゲット
マシンのオペレーティングシステムと前記ベースマシン
のオペレーティングシステムとの差の部分に対するもの
であれば、該ベースマシンのオペレーティングシステム
と基本入出力システムとを用いて該ファンクションコー
ルに対応する処理を行い、また、前記ファンクションコ
ールに対応する処理が該ターゲットマシンのオペレーテ
ィングシステムと前記ベースマシンのオペレーティング
システムとの差の部分に対するものでない場合には、該
ベースマシンのオペレーティングシステムを用いて該フ
ァンクションコールに対応する処理を行うソフトウェア
割り込みエミュレートステップと、前記アプリケーショ
ンプログラムが前記ターゲットマシンの割り込みベクト
ルテーブルや基本入出力システムのデータ領域に対して
メモりアクセス命令を発行した場合、別に用意したター
ゲットマシン用の割り込みベクトルテーブルや基本入出
力システムのデータ領域へアクセスするように該メモリ
アクセス命令が指すアドレスを変換するメモリエミュレ
ートステップと、前記アプリケーションプログラムが前
記ターゲットマシンへの入出力命令を発行した場合、該
入出力命令が表示に係るものであれば該入出力命令を前
記ターゲットマシン用表示制御部への入出力命令に変換
し、該入出力命令が表示以外に係るものであれば該入出
力命令を前記ベースマシン用周辺装置制御部への入出力
命令に変換する入出力エミュレートステップと、前記ベ
ースマシン用周辺装置制御部からの割り込みを受けた場
合、該割り込みの番号を前記ターゲットマシンにおける
割り込みの番号に変換し、変換した割り込みの番号がア
プリケーションプログラムからマスクされている番号で
ない場合には、該変換した割り込みの番号に対応するア
プリケーションプログラムに前記ベースマシン用周辺装
置制御部が割り込みを発生した旨を通知し、また、該変
換した割り込み番号がアプリケーションプログラムから
マスクされている場合にはアプリケーションプログラム
に該ベースマシン用周辺装置制御部からの割り込みを通
知しないハードウェア割り込みステップとを含むことを
特徴とする。
【0028】本発明の第8の仮想計算機エミュレート方
法は、第7の仮想計算機エミュレート方法において、さ
らに、前記アプリケーションプログラムの起動時に、入
出力命令の例外、ソフトウェア割り込み命令の例外、割
り込みベクトルテーブルの例外、および基本入出力シス
テムのデータ領域の例外を設定する初期化ステップと、
前記ソフトウェア割り込みエミュレートステップにおい
て、前記ベースマシンのオペレーティングシステムまた
は基本入出力システムが呼び出される際に例外が発生し
ないように、また、該オペレーティングシステムから該
基本入出力システムを呼び出すことによって例外が発生
しないように、また、該基本入出力システムから前記ベ
ースマシンの表示以外に係る入出力制御で例外が発生し
ないように、また、該基本入出力システムから前記ベー
スマシンの基本入出力システムのデータ領域へのアクセ
スで例外が発生しないように、前記初期化ステップにお
いて設定した例外を取り消し、該オペレーティングシス
テムまたは基本入出力システムの処理の終了後に再度前
記初期化ステップにおいて例外の設定を行う例外割り込
み解除復帰ステップとを含むことを特徴とする。
【0029】本発明の第9の仮想計算機エミュレート方
法は、第8の仮想計算機エミュレート方法において、前
記ソフトウェア割り込みエミュレートステップが、前記
アプリケーションプログラムが所望する入出力処理を行
うために発行するソフトウェア割り込み命令により起動
される該入出力処理に対応する前記ターゲットマシン用
ドライバからジャンプ命令によって呼び出され、前記タ
ーゲットマシンの基本入出力システムにより該入出力処
理を行った後、該アプリケーションプログラムの該ソフ
トウェア割り込み命令の次の命令に制御を戻すことを特
徴とする。
【0030】本発明の第1の記録媒体は、任意のアーキ
テクチャに基づいて動作するベースマシンにおいて、該
ベースマシンのオペレーティングシステムおよび基本入
出力システムを用いて該ベースマシンとは異なるアーキ
テクチャに基づいて動作するターゲットマシン用のアプ
リケーションプログラムを実行させることを該ベースマ
シン上の仮想計算機エミュレータに行わせるプログラム
を記録したことを特徴とする。
【0031】本発明の第2の記録媒体は、第1の記録媒
体において、前記アプリケーションプログラムがソフト
ウェア割り込み命令を用いて発行するファンクションコ
ールが前記ターゲットマシンの基本入出力システムに対
するものの場合、該ファンクションコールに対応する処
理が表示に係るものであれば、該ファンクションコール
に対応する処理を前記ターゲットマシンの表示に係る入
出力制御を行うターゲットマシン用表示制御部に対して
行い、また、該ファンクションコールに対応する処理が
表示以外の入出力に係るものであれば、該ファンクショ
ンコールに対応する処理を前記ベースマシンの表示以外
に係る入出力制御を行うベースマシン用周辺装置制御部
に対して行うことを前記仮想計算機エミュレータに行わ
せるプログラムを記録したことを特徴とする。
【0032】本発明の第3の記録媒体は、第1の記録媒
体において、前記アプリケーションプログラムがソフト
ウェア割り込み命令を用いて発行するファンクションコ
ールが前記ターゲットマシンのオペレーティングシステ
ムに対するものの場合、該ファンクションコールに対応
する処理が該ターゲットマシンのオペレーティングシス
テムと前記ベースマシンのオペレーティングシステムと
の差の部分に対するものであれば、該ベースマシンのオ
ペレーティングシステムと基本入出力システムとを用い
て該ファンクションコールに対応する処理を行い、ま
た、前記ファンクションコールに対応する処理が該ター
ゲットマシンのオペレーティングシステムと前記ベース
マシンのオペレーティングシステムとの差の部分に対す
るものでない場合には、該ベースマシンのオペレーティ
ングシステムを用いて該ファンクションコールに対応す
る処理を行うことを前記仮想計算機エミュレータに行わ
せるプログラムを記録したことを特徴とする。
【0033】本発明の第4の記録媒体は、第1の記録媒
体において、前記アプリケーションプログラムが前記タ
ーゲットマシンの割り込みベクトルテーブルや基本入出
力システムのデータ領域に対してメモりアクセス命令を
発行した場合、別に用意したターゲットマシン用の割り
込みベクトルテーブルや基本入出力システムのデータ領
域へアクセスするように該メモリアクセス命令が指すア
ドレスを変換することを前記仮想計算機エミュレータに
行わせるプログラムを記録したことを特徴とする。
【0034】本発明の第5の記録媒体は、第1の記録媒
体において、前記アプリケーションプログラムが前記タ
ーゲットマシンへの入出力命令を発行した場合、該入出
力命令が表示に係るものであれば該入出力命令を前記タ
ーゲットマシンの表示に係る入出力制御を行うターゲッ
トマシン用表示制御部への入出力命令に変換し、該入出
力命令が表示以外に係るものであれば該入出力命令を前
記ベースマシンの表示以外に係る入出力制御を行うベー
スマシン用周辺装置制御部への入出力命令に変換するこ
とを前記仮想計算機エミュレータに行わせるプログラム
を記録したことを特徴とする。
【0035】本発明の第6の記録媒体は、第1の記録媒
体において、前記ベースマシンの表示以外に係る入出力
制御を行うベースマシン用周辺装置制御部からの割り込
みを受けた場合、該割り込みの番号を前記ターゲットマ
シンにおける割り込みの番号に変換し、変換した割り込
みの番号がアプリケーションプログラムからマスクされ
ている番号でない場合には、該変換した割り込みの番号
に対応するアプリケーションプログラムに前記ベースマ
シン用周辺装置制御部から割り込みを受けた旨を通知
し、また、該変換した割り込み番号がアプリケーション
プログラムからマスクされている場合にはアプリケーシ
ョンプログラムに該ベースマシン用周辺装置制御部から
の割り込みを通知しないことを前記仮想計算機エミュレ
ータに行わせるプログラムを記録したことを特徴とす
る。
【0036】本発明の第7の記録媒体は、第1の記録媒
体において、前記アプリケーションプログラムがソフト
ウェア割り込み命令を用いて発行するファンクションコ
ールが前記ターゲットマシンの基本入出力システムに対
するものの場合、該ファンクションコールに対応する処
理が表示に係るものであれば、該ファンクションコール
に対応する処理を前記ターゲットマシンの表示に係る入
出力制御を行うターゲットマシン用表示制御部に対して
行い、また、該ファンクションコールに対応する処理が
表示以外の入出力に係るものであれば、該ファンクショ
ンコールに対応する処理を前記ベースマシンの表示以外
に係る入出力制御を行うベースマシン用周辺装置制御部
に対して行うとともに、該ファンクションコールが前記
ターゲットマシンのオペレーティングシステムに対する
ものの場合、該ファンクションコールに対応する処理が
該ターゲットマシンのオペレーティングシステムと前記
ベースマシンのオペレーティングシステムとの差の部分
に対するものであれば、該ベースマシンのオペレーティ
ングシステムと基本入出力システムとを用いて該ファン
クションコールに対応する処理を行い、また、前記ファ
ンクションコールに対応する処理が該ターゲットマシン
のオペレーティングシステムと前記ベースマシンのオペ
レーティングシステムとの差の部分に対するものでない
場合には、該ベースマシンのオペレーティングシステム
を用いて該ファンクションコールに対応する処理を行う
ソフトウェア割り込みエミュレート処理と、前記アプリ
ケーションプログラムが前記ターゲットマシンの割り込
みベクトルテーブルや基本入出力システムのデータ領域
に対してメモりアクセス命令を発行した場合、別に用意
したターゲットマシン用の割り込みベクトルテーブルや
基本入出力システムのデータ領域へアクセスするように
該メモリアクセス命令が指すアドレスを変換するメモリ
エミュレート処理と、前記アプリケーションプログラム
が前記ターゲットマシンへの入出力命令を発行した場
合、該入出力命令が表示に係るものであれば該入出力命
令を前記ターゲットマシン用表示制御部への入出力命令
に変換し、該入出力命令が表示以外に係るものであれば
該入出力命令を前記ベースマシン用周辺装置制御部への
入出力命令に変換する入出力エミュレート処理と、前記
ベースマシン用周辺装置制御部からの割り込みを受けた
場合、該割り込みの番号を前記ターゲットマシンにおけ
る割り込みの番号に変換し、変換した割り込みの番号が
アプリケーションプログラムからマスクされている番号
でない場合には、該変換した割り込みの番号に対応する
アプリケーションプログラムに前記ベースマシン用周辺
装置制御部が割り込みを発生した旨を通知し、また、該
変換した割り込み番号がアプリケーションプログラムか
らマスクされている場合にはアプリケーションプログラ
ムに該ベースマシン用周辺装置制御部からの割り込みを
通知しないハードウェア割り込み処理とを前記仮想計算
機エミュレータに行わせるプログラムを記録したことを
特徴とする。
【0037】本発明の第8の記録媒体は、第7の記録媒
体において、さらに、前記アプリケーションプログラム
の起動時に、入出力命令の例外、ソフトウェア割り込み
命令の例外、割り込みベクトルテーブルの例外、および
基本入出力システムのデータ領域の例外を設定する初期
化処理と、前記ソフトウェア割り込みエミュレート処理
において、前記ベースマシンのオペレーティングシステ
ムまたは基本入出力システムが呼び出される際に例外が
発生しないように、また、該オペレーティングシステム
から該基本入出力システムを呼び出すことによって例外
が発生しないように、また、該基本入出力システムから
前記ベースマシンの表示以外に係る入出力制御で例外が
発生しないように、また、該基本入出力システムから前
記ベースマシンの基本入出力システムのデータ領域への
アクセスで例外が発生しないように、前記初期化処理に
おいて設定した例外を取り消し、該オペレーティングシ
ステムまたは基本入出力システムの処理の終了後に再度
前記初期化処理において例外の設定を行う例外割り込み
解除復帰処理とを前記仮想計算機エミュレータに行わせ
るプログラムを記録したことを特徴とする。
【0038】本発明の第9の記録媒体は、第8の記録媒
体において、前記ソフトウェア割り込みエミュレート処
理が、前記アプリケーションプログラムが所望する入出
力処理を行うために発行するソフトウェア割り込み命令
により起動される該入出力処理に対応する前記ターゲッ
トマシン用ドライバからジャンプ命令によって呼び出さ
れ、前記ターゲットマシンの基本入出力システムにより
該入出力処理を行った後、該アプリケーションプログラ
ムの該ソフトウェア割り込み命令の次の命令に制御を戻
すことを特徴とする。
【0039】
【発明の実施の形態】次に本発明の第1の実施の形態に
ついて図面を参照して詳細に説明する。
【0040】図1を参照すると、本発明の第1の実施の
形態は、プログラム制御により動作するベースマシン1
00が、仮想計算機エミュレータ1、ターゲットマシン
用AP10、ターゲットマシンの表示に係るI/O制御
を行うハードウェアのみを取り出したターゲットマシン
用表示制御部11、ベースマシン用OS12、ベースマ
シンの拡張周辺機器を制御するベースマシン用ドライバ
13、ベースマシン用BIOS14、およびベースマシ
ンの表示以外のI/O制御を行うハードウェアであるベ
ースマシン用周辺装置制御部15とを含む。
【0041】ターゲットマシン用AP10は、ターゲッ
トマシン用ドライバ101と割り込みルーチン102と
を含む。
【0042】仮想計算機エミュレータ1は、初期化部
2、制御割り込み受け付け部3、例外割り込み解除/復
帰部4、メモリエミュレータ5、I/Oエミュレータ
6、S/W割り込みエミュレータ7、H/W割り込みエ
ミュレータ8、およびS/W割り込みエミュレータ呼び
出し部9を含む。
【0043】H/W割り込みエミュレータ8は、割り込
みマスクテーブル84を含む。
【0044】初期化部2は、仮想計算機エミュレータ1
を起動する際に、I/O命令の例外の設定、S/W割り
込み命令の例外の設定、割り込みベクトルテーブルの例
外の設定、BIOSデータ領域の例外の設定、制御割り
込み受け付け部3の設定、およびターゲットマシン用表
示制御部11の初期化を行う。
【0045】制御割り込み受け付け部3は、ターゲット
マシン用AP10やS/W割り込みエミュレータ呼び出
し部9がS/W割り込み命令を用いたファンクションコ
ールやI/O命令を発行した場合、およびメモリ上の割
り込みベクトルテーブルやBIOSデータ領域に対する
メモリアクセス命令を実行した場合に発生する例外割り
込みを受け付け、該例外割り込みの内容に対応するエミ
ュレート処理(S/W割り込みエミュレータ7、I/O
エミュレータ6、またはメモリエミュレータ5)を呼び
出す。また、ベースマシン用周辺装置制御部15から割
り込みが発生した場合には、その割り込みを受け付け、
H/W割り込みエミュレータ8を起動する。
【0046】例外割り込み解除/復帰部4は、S/W割
り込みエミュレータ7またはH/W割り込みエミュレー
タ8から、ベースマシン用OS12、ベースマシン用ド
ライバ13、およびベースマシン用BIOS14のいず
れかに制御を渡す際に、これらのいずれかにおけるS/
W割り込み命令を用いたファンクションコールやI/O
命令やメモリアクセス命令の発行により例外割り込みが
発生して、仮想計算機エミュレータ1に制御が移行して
しまわないように、これらに制御を渡す前に初期化部2
が設定したI/O命令の例外、S/W割り込み命令の例
外、割り込みベクトルテーブルの例外、およびBIOS
データ領域の例外を取り消し、これらの処理が終了した
後に再度設定する。
【0047】メモリエミュレータ5は、ターゲットマシ
ン用AP10から割り込みベクトルテーブルやBIOS
データ領域に対してメモリアクセス命令が発行された場
合、ベースマシン用の割り込みベクトルテーブルやBI
OSデータ領域へアクセスするのではなく、メモリエミ
ュレータ5内のターゲットマシン用の割り込みベクトル
テーブルやターゲットマシン用BIOSデータ領域へア
クセスするようにメモリアクセス命令が指すアドレスを
変換する。また、ターゲットマシン用BIOSデータ領
域は、S/W割り込みエミュレータ7内でターゲットマ
シンのBIOSをエミュレートした結果を格納する。
【0048】I/Oエミュレータ6は、ターゲットマシ
ン用AP10が発行したI/O命令を解析し、該I/O
命令がターゲットマシンの表示に係るI/O制御を行う
ハードウェアに対するものであれば、該I/O命令をタ
ーゲットマシン用表示制御部11へのI/O命令に変換
し、それ以外の周辺装置に対するI/O命令であれば、
該I/O命令をベースマシン用周辺装置制御部15への
I/O命令に変換する。また、割り込みコントローラの
割り込みマスク情報を変更するI/O命令の場合は、ベ
ースマシン用周辺装置制御部15を操作せずに、H/W
割り込みエミュレータ8内の割り込みマスクテーブル8
4を該I/O命令で更新する。
【0049】S/W割り込みエミュレータ7は、ターゲ
ットマシン用AP10が発行するファンクションコール
に指定された機能番号がターゲットマシンのBIOSに
対するものであればターゲットマシンのBIOSのエミ
ュレートを行い、ターゲットマシンのOSに対するもの
であれば、該ファンクションコールがターゲットマシン
用OSとベースマシン用OS12との差の部分に対する
ものか否かを判定する。差の部分に対するものの場合に
は、ベースマシン用OS12やベースマシン用BIOS
14を用いてエミュレートを行い、差の部分に対するも
のでない場合には、ベースマシン用OS12に制御を渡
す。
【0050】この時、ベースマシン用OS12およびベ
ースマシン用BIOS14に制御を渡す場合には、例外
割り込み解除/復帰部4を介して制御を移行する。ま
た、ターゲットマシン用ドライバ101が割り込みベク
トルテーブルに登録されていて、このターゲットマシン
用ドライバ101に対するファンクションが発行された
場合には、ターゲットマシン用ドライバ101に制御を
渡す。また、ターゲットマシン用ドライバ101からタ
ーゲットマシン用BIOSに制御を移行する場合には、
S/W割り込みエミュレータ呼び出し部9を経てS/W
割り込みエミュレータ7に制御を移行し、BIOSのエ
ミュレートを行う。
【0051】H/W割り込みエミュレータ8は、ベース
マシン用周辺装置制御部15から発生する割り込みを受
け、ベースマシン用ドライバ13またはベースマシン用
BIOS14に例外割り込み解除/復帰部4を介して通
知した後、割り込み番号をターゲットマシンの割り込み
番号に変換して、メモリエミュレート5内のターゲット
マシン用割り込みベクトルテーブルの該当割り込み番号
に登録されているターゲットマシン用AP10の割り込
みルーチン102に通知する。ここで、割り込みルーチ
ン102に通知する際に割り込みマスクテーブル84を
参照し、マスクされている割り込み番号の割り込みは割
り込みルーチン102に通知せずに終了し、マスクされ
ていない割り込み番号の割り込みのみを通知する。
【0052】S/W割り込みエミュレータ呼び出し部9
は、ターゲットマシン用AP10の置かれる1MB以下
のメモリ領域に位置し、ターゲットマシン用ドライバ1
01からターゲットマシン用BIOSを呼び出す際に、
1MBより上のメモリ領域に置かれる仮想計算機エミュ
レータ1内のS/W割り込みエミュレート7をS/W割
り込み命令を用いて呼び出す。
【0053】次に、本発明の第1の実施の形態の動作に
ついて、図1〜図13を参照して詳細に説明する。
【0054】まず、仮想計算機エミュレータ1は、CP
Uの保護機能による例外割り込みを用いてターゲットマ
シン用AP10の発行するI/O命令、メモリアクセス
命令、S/W割り込み命令やベースマシン用周辺装置制
御部15から発生する割り込みを検出し、これらを仮想
計算機エミュレータ1内でエミュレートする。具体的に
は以下の4項目についてエミュレートする。 (1)I/O命令 ターゲットマシン用表示制御部11やベースマシン用周
辺装置制御部15に変換して実行する。 (2)S/W割り込み命令 ベースマシン用OS12やベースマシン用BIOS14
に変換して実行する。
【0055】(3)割り込みベクトルテーブルやBIO
Sデータ領域へのメモリアクセス命令 仮想計算機エミュレータ1内のデータ領域に変換して実
行する。 (4)ベースマシン用周辺装置制御部15から発生する
割り込み ターゲットマシンの割り込み番号に変換してターゲット
マシン用AP10に通知する。
【0056】図2は初期化部2の動作を表した流れ図で
ある。初期化部2は仮想計算機エミュレータ1の起動時
に、I/O命令の例外設定(ステップ21)、S/W割
り込み命令の例外設定(ステップ22)、割り込みベク
トルテーブルの例外設定(ステップ23)、BIOSデ
ータ領域の例外設定(ステップ24)を行う。また、例
外割り込み及びベースマシン用周辺装置制御部15から
の割り込みの受け付け部である制御割り込み受け付け部
3を設定して(ステップ25)、各命令の検出を可能に
し、またターゲットマシン用表示制御部11の初期化を
行う(ステップ26)。
【0057】図3は初期化部2が完了し、ターゲットマ
シン用AP10をメモリ上に読み込んだ状態でのメモリ
マップである。すなわち、物理メモリマップ18は、ベ
ースマシン用割込ベクトルテーブル16、ベースマシン
用BIOSデータ領域17、ベースマシン用OS12、
ベースマシン用ドライバ13、仮想計算機エミュレータ
1の一部であるS/W割り込みエミュレータ呼び出し部
9、ターゲットマシン用ドライバ101、ターゲットマ
シン用AP10、ターゲットマシン用表示制御部11に
搭載されているターゲットマシン用VRAM18、ベー
スマシン用BIOS14、および仮想計算機エミュレー
タ1を含む。仮想計算機エミュレータ1は、ターゲット
マシン用割込ベクトルテーブル52、ターゲットマシン
用BIOSデータ領域53、制御割り込み受け付け部
3、S/W割り込みエミュレート7、I/Oエミュレー
ト6、メモリエミュレート5、H/W割り込みエミュレ
ート8、例外割り込み解除/復帰部4、および初期化部
2を含む。
【0058】また、図3のメモリマップに示すように仮
想計算機エミュレータ1は1MBより上のメモリ領域に
置かれ、APが動作する1MB以下のメモリ領域にはS
/Wエミュレータ呼び出し部9とターゲットマシン用V
RAM18以外はベースマシンの環境のままであり、ベ
ースマシン用OS12やベースマシン用BIOS14が
動作する状態を維持したまま、ターゲットマシン用AP
10の実行するOSやBIOSのファンクションコー
ル、I/O命令、メモリアクセス命令を仮想計算機エミ
ュレータ1上でエミュレートする。
【0059】図4は制御割り込み受け付け部3の動作を
表した流れ図である。まず、ターゲットマシン用AP1
0において、BIOSやOSに対するファンクションコ
ールのためのS/W割り込み命令、I/O命令、割り込
みベクトルテーブル、またはBIOSデータ領域に対す
るメモリアクセス命令が発行され、例外割り込み、S/
W割り込みエミュレータ呼び出し部9からのS/W割り
込み命令により発生する例外割り込み、およびベースマ
シン用周辺装置制御部15からの割り込みが発生した場
合に、制御割り込み受け付け部3が起動される。
【0060】制御割り込み受け付け部3においては、起
動要因がベースマシン用周辺装置制御部15からのH/
W割り込みによるものか否かを判定し(ステップ3
1)、H/W割り込みによるものならば、H/W割り込
みエミュレータ8を起動する。一方、H/W割り込みに
よるものでなければ、例外割り込みが発生したものと判
定して例外割り込みが発生した命令コードからその命令
が何の命令であるかを命令解析処理32で解析し、さら
にその命令がS/W割り込み命令か否かを判定する(ス
テップ33)。この判定の結果、S/W割り込み命令な
らばS/W割り込みエミュレータ7を起動し、S/W割
り込み命令でなければ、さらにその命令がメモリアクセ
ス命令か否かを判定し(ステップ34)、メモリアクセ
ス命令ならばメモリエミュレータ5を起動し、メモリア
クセス命令でなければI/O命令であると判断してI/
Oエミュレータ6を起動する。
【0061】図5は例外割り込み解除/復帰部4の動作
を表した流れ図である。S/W割り込みエミュレータ7
およびH/W割り込みエミュレータ8では、エミュレー
ト処理においてベースマシン用OS12、ベースマシン
用ドライバ13、またはベースマシン用BIOS14を
呼び出す場合がある。この時、ベースマシン用OS1
2、ベースマシン用ドライバ13、またはベースマシン
用BIOS14の処理において使用するBIOSファン
クションコールによるS/W割り込み命令、I/O命
令、またはメモリアクセス命令で例外割り込みが発生し
て仮想計算機エミュレータ1に制御が移行すると、エミ
ュレータによるオーバヘッドが大きくなってしまう。そ
こで、各エミュレータ7、8からベースマシン用OS1
2、ベースマシン用ドライバ13、またはベースマシン
用BIOS14を呼び出す前に、例外割り込み解除部4
1で初期化部2が設定した例外(図2の21、22、2
3、24)を取り消し、ベースマシン用OS12、ベー
スマシン用ドライバ13、またはベースマシン用BIO
S14の処理が終了して仮想計算機エミュレータ1に制
御が戻ってきたときに、例外割り込み復帰部42で例外
を再度設定する。
【0062】図6(A)はメモリエミュレータ5の動作
を表した流れ図である。ターゲットマシン用AP10が
メモリ上の割り込みベクトルテーブルまたはBIOSデ
ータ領域に対するメモリアクセス命令を実行しようとす
ると、例外割り込みが発生して制御割り込み受け付け部
3が起動され、メモリアクセス命令に対する例外割り込
みと判定されてメモリエミュレータ5が起動される。こ
こで、例外となったメモリアクセス命令のアクセス先の
メモリアドレスを、アドレス変換51でターゲットマシ
ン用割り込みベクトルテーブル52またはターゲットマ
シン用BIOSデータ領域53内のアドレスに変換して
該メモリアクセス命令を実行する。
【0063】図6(B)はメモリエミュレータ5内のタ
ーゲットマシン用割り込みベクトルテーブル52の初期
設定状態を表した図である。ここで、ターゲットマシン
用BIOSの割り込み番号及びターゲットマシン用OS
の割り込み番号にはS/W割り込みエミュレータ呼び出
し部9のアドレスが初期値として登録されており、それ
以上の空き割り込み番号には割り込み終了処理のアドレ
スが登録されている。この割り込み終了処理は、S/W
割り込み命令で呼び出された処理から、呼び出し元であ
るターゲットマシン用AP10に戻るための命令が格納
されているプログラムである。図7はI/Oエミュレー
タ6の動作を表した流れ図である。ターゲットマシン用
AP10がI/O装置に対して、I/O命令を実行しよ
うとすると、例外割り込みが発生して制御割り込み受け
付け部3が起動され、I/O命令に対する例外割り込み
と判定されてI/Oエミュレータ6が起動される。I/
Oエミュレータ6では、例外となったI/O命令のI/
Oポート番号に基づいて該I/O命令が割り込みマスク
制御に係るI/O命令か否かを判定し(ステップ6
1)、割り込みマスク制御に係るI/O命令であると判
定した場合はH/W割り込みエミュレート8内の割り込
みマスクテーブル84を該I/O命令で更新する。ま
た、割り込みマスク制御に係るI/O命令でないと判定
した場合は表示制御部に対するI/O命令か否かを判定
し(ステップ62)、表示制御部に対するI/O命令で
あると判定した場合には該I/O命令をターゲットマシ
ン用表示制御部11に対するI/O命令に変換して実行
し(ステップ63)、表示制御部に対するI/O命令で
ないと判定した場合にはベースマシン用周辺装置制御部
15に対するI/O命令に変換して実行する(ステップ
64)。
【0064】図8はS/W割り込みエミュレータ7の動
作を表した流れ図である。ターゲットマシン用AP10
がS/W割り込み命令を実行するのは、ターゲットマシ
ン用のOSまたはBIOSに対してファンクションコー
ルを発行する場合(ケースA)とターゲットマシン用ド
ライバ101に対するファンクションコールを発行する
場合(ケースB)との二種類がある。
【0065】まず、ケースAについて説明する。ターゲ
ットマシン用AP10がOSまたはBIOSに対するフ
ァンクションコールとしてS/W割り込み命令を実行し
ようとすると、例外割り込みが発生して制御割り込み受
け付け部3が起動され、S/W割り込み命令に対する例
外割り込みと判定されてS/W割り込みエミュレータ7
が起動される。S/W割り込みエミュレータ7では、該
S/W割り込み命令がS/W割り込みエミュレータ呼び
出し部9からのものか否かを判定し(ステップ71)、
ケースAでは例外となったS/W割り込み命令の割り込
み番号がS/W割り込みエミュレート呼び出し部9が実
行するS/W割り込み番号と一致しないため、該S/W
割り込み命令がS/W割り込みエミュレート呼び出し部
9からのものでないと判定される。さらにメモリエミュ
レータ5内のターゲットマシン用割り込みベクトルテー
ブル52に登録されている処理がS/W割り込みエミュ
レータ呼び出し部9か否かを判定する(ステップ7
2)。ケースAでは、S/W割り込み命令はOSまたは
BIOSに対するファンクションコールとして実行され
たものであり、ターゲットマシン用割り込みベクトルテ
ーブル52内の対応するエントリにはS/W割り込みエ
ミュレータ呼び出し部9のアドレスが登録(図6
(B))されているので、該S/W割り込みエミュレー
タ呼び出し部9の割り込み番号に対応するエミュレート
処理を呼び出す(ステップ73)。
【0066】ここで、対象となるエミュレート処理がB
IOS内の表示処理に係るファンクションコールであれ
ば、ターゲットマシン用表示制御部11を用いてエミュ
レートを行う(ステップ74)。また、表示処理以外の
BIOSに対するファンクションコールであれば、ベー
スマシン用BIOS14またはベースマシン用周辺装置
制御部15を用いてエミュレートを行う(ステップ7
5)。
【0067】また、OSに対するファンクションコール
であれば、該ファンクションコールがターゲットマシン
用OSとベースマシン用OS12との差の部分に対する
ものであるか否かを判定し(ステップ77)、差の部分
に対するものでなければベースマシン用OS12に制御
を移行し、差の部分に対するものであればベースマシン
用OS12またはベースマシン用BIOS14を用いて
エミュレートを行って処理を終了する(ステップ7
8)。ここで、ステップ75およびステップ76からベ
ースマシン用OS12またはベースマシン用BIOS1
4を呼び出す場合は、例外割り込み解除/復帰部4を経
由する。
【0068】次は、ケースBについて説明する。ターゲ
ットマシン用AP10がターゲットマシン用ドライバ1
01に対するファンクションコールとしてS/W割り込
み命令を実行しようとすると、例外割り込みが発生して
制御割り込み受け付け部3が起動され、S/W割り込み
命令に対する例外割り込みと判定されてS/W割り込み
エミュレータ7が起動される。S/W割り込みエミュレ
ータ7では、該S/W割り込み命令がS/W割り込みエ
ミュレータ呼び出し部9からのものであるか否かを判定
し(ステップ71)、ケースBでは該S/W割り込み命
令がS/W割り込みエミュレータ呼び出し部9からのも
のではないと判定される。さらにメモリエミュレータ5
内のターゲットマシン用割り込みベクトルテーブル52
に登録されている処理がS/W割り込みエミュレータ呼
び出し部9か否かを判定する(ステップ72)。ケース
Bでは該S/W割り込み命令は、ターゲットマシン用ド
ライバ101に対するファンクションコールとして実行
されたものであり、ターゲットマシン用割り込みベクト
ルテーブル52内の対応するエントリにはターゲットマ
シン用ドライバ101のアドレスが登録されているの
で、ターゲットマシン用ドライバ101に制御を移行し
て(ステップ79)、処理を終了する。
【0069】また、ターゲットマシン用ドライバ101
の終了後にターゲットマシン用BIOSやターゲットマ
シン用OSを呼び出す場合(ケースC)は、ケースBで
ターゲットマシン用ドライバ101の処理が終了する
と、初期値としてターゲットマシン用割り込みベクトル
テーブル52に登録されているS/W割り込みエミュレ
ータ呼び出し部9に制御を移行する。S/W割り込みエ
ミュレータ呼び出し部9はS/W割り込み命令を用いて
仮想計算機エミュレータ1に制御を移し、制御割り込み
受け付け部3からS/W割り込みエミュレータ7を起動
する。ここで、S/W割り込みエミュレータ7は、S/
W割り込みエミュレート呼び出し部9のS/W割り込み
命令によって起動されたものであるか否かを判定し(ス
テップ71)、その場合には対応するBIOSエミュレ
ート処理(ステップ74、ステップ75)またはOSエ
ミュレート処理(ステップ76)を呼び出して処理を実
行する(ステップ73)。
【0070】次に、ターゲットマシン用AP10からS
/W割り込み命令を実行したときの動作を図9、図1
0、図11、図12を用いて説明する。まず、図9はタ
ーゲットマシン用ドライバ101を起動するときの動作
を表した図である。ここで、200、201は動作の流
れを表す。ドライバをメモリ上に読み込む際には、ドラ
イバの処理が終了したときに該ドライバが起動される前
に実行されていたBIOS等に制御を戻すことができる
ように、割り込みベクトルテーブルに登録されているB
IOS等のアドレスをドライバ内に保管してから、割り
込みベクトルテーブルにドライバの処理開始アドレスを
登録する。これにより、APからS/W割り込み命令が
発行された場合、まずドライバが呼び出され、次に元
々、割り込みベクトルテーブルに登録されていたBIO
S等が呼び出されるようになる。
【0071】より具体的に説明すると、ターゲットマシ
ン用ドライバ101を割り込み番号XXhで登録するた
めに、ターゲットマシン用割込ベクトルテーブル52の
割り込み番号XXhの飛び先アドレスに元々登録されて
いるアドレスをターゲットマシン用ドライバ101内に
保管し(200)、ターゲットマシン用ドライバ101
の処理開始アドレスをターゲットマシン用割り込みベク
トルテーブル52の割り込み番号XXhの飛び先アドレ
スに登録する(201)。ここで、ターゲットマシン用
割り込みベクトルテーブル52には、BIOS及びOS
の割り込み番号にS/W割り込みエミュレート呼び出し
部9のアドレスが登録されており、それ以外には割り込
み終了処理のアドレスが登録されている(図6の
(B))。なお、ターゲットマシン用ドライバ101か
らターゲットマシン用割り込みベクトルテーブル52へ
のメモリアクセスはメモリエミュレータ5で実現する。
【0072】図10はケースAに相当し、ターゲットマ
シン用AP10からターゲットマシン用BIOSを呼び
出すときの動作を表した図である。なお、ターゲットマ
シン用OSの場合でもS/W割り込みエミュレータ7内
で制御を移行するエミュレート処理が異なるだけで動作
は同じである。ここで、202〜205は動作の流れを
表す。ターゲットマシン用AP10がS/W割り込み命
令で割り込み番号XXhを実行しようとすると(20
2)、例外割り込みが発生して仮想計算機エミュレータ
1に制御が移行する(203)。仮想計算機エミュレー
タ1では制御割り込み受け付け部3からS/W割り込み
エミュレータ7に制御が移行し(204)、表示処理以
外のBIOSのエミュレートを行う。表示処理以外の処
理に係るBIOSのエミュレート処理が終了すると、タ
ーゲットマシン用AP10のS/W割り込み命令の次の
命令に戻り(205)、エミュレートを完了する。
【0073】図11はケースBに相当し、ターゲットマ
シン用AP10からターゲットマシン用ドライバ101
を呼び出したときの動作を表した図である。図11では
ターゲットマシン用ドライバ101はBIOSやOSが
登録されていない空きの割り込み番号に登録されたもの
とする。ここで、206〜211は動作の流れを表す。
ターゲットマシン用AP10がS/W割り込み命令で割
り込み番号XXhを実行しようとすると(206)、例
外割り込みが発生して仮想計算機エミュレータ1に制御
が移行する(207)。仮想計算機エミュレータ1では
制御割り込み受け付け部3からS/W割り込みエミュレ
ータ7に制御が移行し(208)、S/W割り込みエミ
ュレータ7内のターゲットマシン用ドライバ呼び出し7
9からターゲットマシン用割り込みベクトルテーブル5
2に登録されているターゲットマシン用ドライバ101
に制御が移行する(209)。ターゲットマシン用ドラ
イバ101の処理が終了すると、予め保管してあったタ
ーゲットマシン用割り込みベクトルテーブル52に元々
登録されていたアドレスを用いて割り込み終了処理に制
御を移行する(210)。そして、割り込みが終了する
と、ターゲットマシン用AP10のS/W割り込み命令
の次の命令に戻り(211)、エミュレートを完了す
る。
【0074】図12はケースCに相当し、ターゲットマ
シン用AP10からターゲットマシン用ドライバ101
を呼び出したときの動作を表したもので、ターゲットマ
シン用ドライバ101は処理終了後にターゲットマシン
用の表示処理以外の処理に係るBIOSを呼び出すもの
である。なお、ターゲットマシン用の表示処理に係るB
IOSの場合やターゲットマシン用OSの場合でも、S
/W割り込みエミュレータ7内で制御を移行するエミュ
レート処理が異なるだけで動作は同じである。ここで、
212〜221は動作の流れを表す。ターゲットマシン
用AP10がS/W割り込み命令で割り込み番号XXh
を実行しようとすると(212)、例外割り込みが発生
して仮想計算機エミュレータ1に制御が移行する(21
3)。仮想計算機エミュレータ1では制御割り込み受け
付け部3からS/W割り込みエミュレータ7に制御が移
行し(214)、S/W割り込みエミュレータ7内のタ
ーゲットマシン用ドライバ呼び出し79からターゲット
マシン用ドライバ101に制御が移行する(215)。
【0075】ターゲットマシン用ドライバ101の処理
が終了すると、予め保管してあったターゲットマシン用
割り込みベクトルテーブル52に元々登録されていたア
ドレスを用いてS/W割り込みエミュレート呼び出し部
9に制御を移行する(216)。S/W割り込みエミュ
レート呼び出し部9はS/W割り込みエミュレータ7に
制御を移行するため、割り込み番号YYhのS/W割り
込み命令を実行しようとし(217)、例外割り込みが
発生して仮想計算機エミュレータ1に制御が移行する
(218)。仮想計算機エミュレータ1では制御割り込
み受け付け部3からS/W割り込みエミュレータ7に制
御が移行し(219)、S/W割り込みエミュレータ7
において表示処理以外の処理に係るBIOSのエミュレ
ートを行う(ステップ75)。その後、S/W割り込み
エミュレータ呼び出し部9のS/W割り込み命令の次の
命令に戻って(220)、割り込み終了処理を行い、タ
ーゲットマシン用AP10のS/W割り込み命令の次の
命令に戻り(221)、エミュレートを完了する。
【0076】図13はH/W割り込みエミュレータ8の
動作を表した流れ図である。ベースマシン用周辺装置制
御部15から割り込みが発生すると、制御割り込み受け
付け部3が起動され、周辺装置制御部からのH/W割り
込みと判定されてH/W割り込みエミュレータ8が起動
される。ここで、H/W割り込みエミュレータ8におい
ては、まずベースマシン用割り込みベクトルテーブル1
6に登録されているベースマシン用ドライバ13または
ベースマシン用BIOS14を呼び出し(ステップ8
1)、その後ターゲットマシン用の割り込み番号に変換
して(ステップ82)、その割り込み番号がターゲット
マシン用AP10からマスクされているか否かを割り込
みマスクテーブル84で判定する(ステップ83)。こ
こで、割り込みがマスクされている場合は割り込みを終
了し(ステップ85)、割り込みがマスクされていなけ
ればターゲットマシン用割り込みベクトルテーブル52
に登録されているターゲットマシン用AP10の割り込
みルーチン102を起動する。
【0077】本実施形態では、以上の説明のように初期
化部により設定されたCPUの保護機能により、ターゲ
ットマシン用APの実行するI/O命令、メモリアクセ
ス命令およびS/W割り込み命令から発生する割り込み
を例外割り込みとして検出するとともに、さらにベース
マシン用周辺装置制御部から発生する割り込みを検出し
ている。
【0078】メモリエミュレータは、S/W割り込みエ
ミュレータで使用するベースマシン用OSやベースマシ
ン用BIOSを正常に動作させるために、ベースマシン
用割込ベクトルテーブルやベースマシン用BIOSデー
タ領域を使用せずに、別にターゲットマシン用割り込み
ベクトルテーブルとターゲットマシン用BIOSデータ
領域を用意し、これらの領域に対するターゲットマシン
用APからのメモリアクセス命令をエミュレートしてい
る。これによって、ベースマシンにおけるOSの動作環
境を維持してベースマシン用OS及びベースマシン用B
IOSを動作可能にしており、また、ベースマシン用ド
ライバも動作可能にすることができるため、ターゲット
マシン用APからベースマシン用の拡張周辺機器を使用
することが可能となる。
【0079】S/W割り込みエミュレータは、ターゲッ
トマシン用OSやターゲットマシン用BIOSに対する
S/W割り込み命令によるファンクションコールがター
ゲットマシン用APから実行される時に、例外割り込み
によって仮想計算機エミュレータの制御割り込み受け付
け部を経由して動作し、ベースマシン用OSやベースマ
シン用BIOS、及びベースマシン用周辺装置制御部や
ターゲットマシン用表示制御部を用いてS/W割り込み
のエミュレートを行っている。ここで、ベースマシン用
OSとターゲットマシン用OSとで同等の機能の場合、
及びOSやBIOSのエミュレータでベースマシン用O
Sやベースマシン用BIOSを利用可能な場合には、ベ
ースマシン用OS及びベースマシン用BIOSに制御を
移行して実行する。このとき、例外割り込み解除/復帰
部はベースマシン用OS内やベースマシン用ドライバ内
やベースマシン用BIOS内で実行する、I/O命令や
メモリアクセス命令やS/W割り込み命令で例外割り込
みが発生して仮想計算機エミュレータに制御が移行する
のを防いでいる。これによって、ベースマシン用OSや
ベースマシン用BIOSやベースマシン用ドライバを利
用して行うエミュレートを高速化している。
【0080】H/W割り込みエミュレータは、ベースマ
シン用周辺装置制御部から発生する割り込みを受け、ベ
ースマシン用ドライバ、またはベースマシン用BIOS
に例外割り込み解除/復帰部を介して通知した後、ター
ゲットマシンの割り込みレベルに変換してターゲットマ
シン用APの割り込みルーチンに通知している。これに
よって、ターゲットマシン用APは周辺装置制御部から
発生する割り込みを認識することができ、レベル4のA
Pが実行可能となる。
【0081】以上により、本発明の第1の実施の形態の
動作が完了する。
【0082】次に、本発明の第2の実施の形態について
図面を参照して詳細に説明する。
【0083】図1を参照すると、本発明の第2の実施の
形態は、第1の実施の形態に加えて、ベースマシン10
0に上述した処理を実行させるためのプログラムを記録
する記録媒体103を備える。
【0084】該プログラムは、記録媒体103からベー
スマシン100に読み込まれ、該ベースマシン100に
おける仮想計算機エミュレータ1の動作を制御する。仮
想計算機エミュレータ1は、該プログラムの制御によ
り、第1の実施の形態における仮想計算機エミュレータ
1による処理、すなわち初期化部2、制御割り込み受け
付け部3、例外割り込み解除/復帰部4、メモリエミュ
レータ5、I/Oエミュレータ6、S/W割り込みエミ
ュレータ7、H/W割り込みエミュレータ8、およびS
/W割り込みエミュレータ呼び出し部9と同一の処理を
実行する。
【0085】以上により、第2の実施の形態の処理が完
了する。
【0086】
【発明の効果】以上説明したように、本発明によれば、
ベースマシン用のOS、ベースマシン用のBIOSおよ
びベースマシン用のドライバを用いて、ベースマシン上
でターゲットマシンを効率良くエミュレートすることが
できる効果を有している。
【0087】また、ベースマシン上でベースマシン用の
拡張周辺機器を使用するターゲットマシン用のAPを実
行することができる効果を有している。
【0088】さらに、ベースマシン上でレベル4のター
ゲットマシン用のAPを実行することができる効果を有
している。
【図面の簡単な説明】
【図1】本発明の第1および第2の実施の形態を示すブ
ロック図である。
【図2】本発明の第1および第2の実施の形態における
初期化部2の処理を示す流れ図である。
【図3】本発明の第1および第2の実施の形態におい
て、初期化部2が完了し、ターゲットマシン用AP10
をメモリ上に読み込んだ状態でのメモリの内容を示すメ
モリマップである。
【図4】本発明の第1および第2の実施の形態における
制御割り込み受け付け部3の処理を示す流れ図である。
【図5】本発明の第1および第2の実施の形態における
例外割り込み解除/復帰部4の処理を示す流れ図であ
る。
【図6】本発明の第1および第2の実施の形態における
メモリエミュレータ5の処理とターゲットマシン用割り
込みベクトルテーブル52の初期設定状態を示す図であ
る。
【図7】本発明の第1および第2の実施の形態における
I/Oエミュレータ6の処理を示す流れ図である。
【図8】本発明の第1および第2の実施の形態における
S/W割り込みエミュレータ7の処理を示す流れ図であ
る。
【図9】本発明の第1および第2の実施の形態における
ターゲットマシン用ドライバ101の起動処理を示す図
である。
【図10】本発明の第1および第2の実施の形態におけ
るターゲットマシン用BIOSを呼び出す処理を示す図
である。
【図11】本発明の第1および第2の実施の形態におけ
るターゲットマシン用ドライバ101を呼び出す処理を
示す図である。
【図12】本発明の第1および第2の実施の形態におけ
るターゲットマシン用ドライバ101を呼び出す処理を
示す図である。
【図13】本発明の第1および第2の実施の形態におけ
るH/W割り込みエミュレート8の処理を示す流れ図で
ある。
【符号の説明】
1 仮想計算機エミュレータ 2 初期化部 3 制御割り込み受け付け部 4 例外割り込み解除/復帰部 5 メモリエミュレータ 6 I/Oエミュレータ 7 S/W割り込みエミュレータ 8 H/W割り込みエミュレータ 9 S/W割り込みエミュレータ呼び出し部 10 ターゲットマシン用AP 11 ターゲットマシン用表示制御部 12 ベースマシン用OS 13 ベースマシン用ドライバ 14 ベースマシン用BIOS 15 ベースマシン用周辺装置制御部 100 ベースマシン 101 ターゲットマシン用ドライバ 102 割り込みルーチン 103 記録媒体

Claims (27)

    【特許請求の範囲】
  1. 【請求項1】 任意のアーキテクチャに基づいて動作す
    るベースマシンにおいて、前記ベースマシンのオペレー
    ティングシステムおよび基本入出力システムを用いて該
    ベースマシンとは異なるアーキテクチャに基づいて動作
    するターゲットマシン用のアプリケーションプログラム
    を実行させるエミュレート手段を含むことを特徴とする
    仮想計算機エミュレータ。
  2. 【請求項2】 前記ベースマシンが、 前記ターゲットマシンの表示に係る入出力制御を行うタ
    ーゲットマシン用表示制御部と、 該ベースマシンの表示以外に係る入出力制御を行うベー
    スマシン用周辺装置制御部とを備え、 前記エミュレート手段が、 前記アプリケーションプログラムがソフトウェア割り込
    み命令を用いて発行するファンクションコールが前記タ
    ーゲットマシンの基本入出力システムに対するものの場
    合、該ファンクションコールに対応する処理が表示に係
    るものであれば、該ファンクションコールに対応する処
    理を前記ターゲットマシン用表示制御部に対して行い、
    また、該ファンクションコールに対応する処理が表示以
    外の入出力に係るものであれば、該ファンクションコー
    ルに対応する処理を前記ベースマシン用周辺装置制御部
    に対して行うソフトウェア割り込みエミュレータを含む
    ことを特徴とする請求項1記載の仮想計算機エミュレー
    タ。
  3. 【請求項3】 前記エミュレート手段が、 前記アプリケーションプログラムがソフトウェア割り込
    み命令を用いて発行するファンクションコールが前記タ
    ーゲットマシンのオペレーティングシステムに対するも
    のの場合、該ファンクションコールに対応する処理が該
    ターゲットマシンのオペレーティングシステムと前記ベ
    ースマシンのオペレーティングシステムとの差の部分に
    対するものであれば、該ベースマシンのオペレーティン
    グシステムと基本入出力システムとを用いて該ファンク
    ションコールに対応する処理を行い、また、前記ファン
    クションコールに対応する処理が該ターゲットマシンの
    オペレーティングシステムと前記ベースマシンのオペレ
    ーティングシステムとの差の部分に対するものでない場
    合には、該ベースマシンのオペレーティングシステムを
    用いて該ファンクションコールに対応する処理を行うソ
    フトウェア割り込みエミュレータを含むことを特徴とす
    る請求項1記載の仮想計算機エミュレータ。
  4. 【請求項4】 前記エミュレート手段が、 前記アプリケーションプログラムが前記ターゲットマシ
    ンの割り込みベクトルテーブルや基本入出力システムの
    データ領域に対してメモりアクセス命令を発行した場
    合、別に用意したターゲットマシン用の割り込みベクト
    ルテーブルや基本入出力システムのデータ領域へアクセ
    スするように該メモリアクセス命令が指すアドレスを変
    換するメモリエミュレータを含むことを特徴とする請求
    項1記載の仮想計算機エミュレータ。
  5. 【請求項5】 前記ベースマシンが、 前記ターゲットマシンの表示に係る入出力制御を行うタ
    ーゲットマシン用表示制御部と、 該ベースマシンの表示以外に係る入出力制御を行うベー
    スマシン用周辺装置制御部とを備え、 前記エミュレート手段が、 前記アプリケーションプログラムが前記ターゲットマシ
    ンへの入出力命令を発行した場合、該入出力命令が表示
    に係るものであれば該入出力命令を前記ターゲットマシ
    ン用表示制御部への入出力命令に変換し、該入出力命令
    が表示以外に係るものであれば該入出力命令を前記ベー
    スマシン用周辺装置制御部への入出力命令に変換する入
    出力エミュレータを含むことを特徴とする請求項1記載
    の仮想計算機エミュレータ。
  6. 【請求項6】 前記ベースマシンが、 該ベースマシンの表示以外に係る入出力制御を行うベー
    スマシン用周辺装置制御部を備え、 前記エミュレート手段が、 前記ベースマシン用周辺装置制御部からの割り込みを受
    けた場合、該割り込みの番号を前記ターゲットマシンに
    おける割り込みの番号に変換し、変換した割り込みの番
    号がアプリケーションプログラムからマスクされている
    番号でない場合には、該変換した割り込みの番号に対応
    するアプリケーションプログラムに前記ベースマシン用
    周辺装置制御部から割り込みを受けた旨を通知し、ま
    た、該変換した割り込み番号がアプリケーションプログ
    ラムからマスクされている場合にはアプリケーションプ
    ログラムに該ベースマシン用周辺装置制御部からの割り
    込みを通知しないハードウェア割り込みエミュレータを
    含むことを特徴とする請求項1記載の仮想計算機エミュ
    レータ。
  7. 【請求項7】 前記ベースマシンが、 前記ターゲットマシンの表示に係る入出力制御を行うタ
    ーゲットマシン用表示制御部と、 該ベースマシンの表示以外に係る入出力制御を行うベー
    スマシン用周辺装置制御部とを備え、 前記エミュレート手段が、 前記アプリケーションプログラムがソフトウェア割り込
    み命令を用いて発行するファンクションコールが前記タ
    ーゲットマシンの基本入出力システムに対するものの場
    合、該ファンクションコールに対応する処理が表示に係
    るものであれば、該ファンクションコールに対応する処
    理を前記ターゲットマシン用表示制御部に対して行い、
    また、該ファンクションコールに対応する処理が表示以
    外の入出力に係るものであれば、該ファンクションコー
    ルに対応する処理を前記ベースマシン用周辺装置制御部
    に対して行うとともに、該ファンクションコールが前記
    ターゲットマシンのオペレーティングシステムに対する
    ものの場合、該ファンクションコールに対応する処理が
    該ターゲットマシンのオペレーティングシステムと前記
    ベースマシンのオペレーティングシステムとの差の部分
    に対するものであれば、該ベースマシンのオペレーティ
    ングシステムと基本入出力システムとを用いて該ファン
    クションコールに対応する処理を行い、また、前記ファ
    ンクションコールに対応する処理が該ターゲットマシン
    のオペレーティングシステムと前記ベースマシンのオペ
    レーティングシステムとの差の部分に対するものでない
    場合には、該ベースマシンのオペレーティングシステム
    を用いて該ファンクションコールに対応する処理を行う
    ソフトウェア割り込みエミュレータと、 前記ターゲットマシン用の割り込みベクトルテーブルや
    基本入出力システムのデータ領域を有し、前記アプリケ
    ーションプログラムが前記ターゲットマシンの割り込み
    ベクトルテーブルや基本入出力システムのデータ領域に
    対してメモりアクセス命令を発行した場合、別に用意し
    たターゲットマシン用の割り込みベクトルテーブルや基
    本入出力システムのデータ領域へアクセスするように該
    メモリアクセス命令が指すアドレスを変換するメモリエ
    ミュレータと、 前記アプリケーションプログラムが前記ターゲットマシ
    ンへの入出力命令を発行した場合、該入出力命令が表示
    に係るものであれば該入出力命令を前記ターゲットマシ
    ン用表示制御部への入出力命令に変換し、該入出力命令
    が表示以外に係るものであれば該入出力命令を前記ベー
    スマシン用周辺装置制御部への入出力命令に変換する入
    出力エミュレータと、 前記ベースマシン用周辺装置制御部からの割り込みを受
    けた場合、該割り込みの番号を前記ターゲットマシンに
    おける割り込みの番号に変換し、変換した割り込みの番
    号がアプリケーションプログラムからマスクされている
    番号でない場合には、該変換した割り込みの番号に対応
    するアプリケーションプログラムに前記ベースマシン用
    周辺装置制御部から割り込みを受けた旨を通知し、ま
    た、該変換した割り込み番号がアプリケーションプログ
    ラムからマスクされている場合にはアプリケーションプ
    ログラムに該ベースマシン用周辺装置制御部からの割り
    込みを通知しないハードウェア割り込みエミュレータと
    を含むことを特徴とする請求項1記載の仮想計算機エミ
    ュレータ。
  8. 【請求項8】 前記エミュレート手段が、 該エミュレート手段の起動時に、入出力命令の例外、ソ
    フトウェア割り込み命令の例外、割り込みベクトルテー
    ブルの例外、および基本入出力システムのデータ領域の
    例外を設定する初期化部と、 前記ソフトウェア割り込みエミュレータが前記ベースマ
    シンのオペレーティングシステムまたは基本入出力シス
    テムを呼び出す際に、該オペレーティングシステムまた
    は基本入出力システムを呼び出すことによって例外が発
    生しないように、また、該オペレーティングシステムか
    ら該基本入出力システムを呼び出すことによって例外が
    発生しないように、また、該基本入出力システムから前
    記ベースマシンの表示以外に係る入出力制御で例外が発
    生しないように、また、該基本入出力システムから前記
    ベースマシンの基本入出力システムのデータ領域へのア
    クセスで例外が発生しないように、前記初期化部が設定
    した例外を取り消し、該オペレーティングシステムまた
    は基本入出力システムの処理の終了後に前記初期化部に
    よって再度例外の設定を行う例外割り込み解除復帰部と
    を含むことを特徴とする請求項7記載の仮想計算機エミ
    ュレータ。
  9. 【請求項9】 前記アプリケーションプログラムが、 前記ターゲットマシンの入出力制御を行うターゲットマ
    シン用ドライバを含み、 前記ソフトウェア割り込みエミュレータが、 前記アプリケーションプログラムが所望する入出力処理
    を行うために発行するソフトウェア割り込み命令により
    起動される該入出力処理に対応する前記ターゲットマシ
    ン用ドライバからジャンプ命令によって呼び出され、前
    記ターゲットマシンの基本入出力システムにより該入出
    力処理を行った後、該アプリケーションプログラムの該
    ソフトウェア割り込み命令の次の命令に制御を戻すこと
    を特徴とする請求項8記載の仮想計算機エミュレータ。
  10. 【請求項10】 任意のアーキテクチャに基づいて動作
    するベースマシンにおいて、前記ベースマシンのオペレ
    ーティングシステムおよび基本入出力システムを用いて
    該ベースマシンとは異なるアーキテクチャに基づいて動
    作するターゲットマシン用のアプリケーションプログラ
    ムを実行させることを特徴とする仮想計算機エミュレー
    ト方法。
  11. 【請求項11】 前記アプリケーションプログラムがソ
    フトウェア割り込み命令を用いて発行するファンクショ
    ンコールが前記ターゲットマシンの基本入出力システム
    に対するものの場合、該ファンクションコールに対応す
    る処理が表示に係るものであれば、該ファンクションコ
    ールに対応する処理を前記ターゲットマシンの表示に係
    る入出力制御を行うターゲットマシン用表示制御部に対
    して行い、また、該ファンクションコールに対応する処
    理が表示以外の入出力に係るものであれば、該ファンク
    ションコールに対応する処理を前記ベースマシンの表示
    以外に係る入出力制御を行うベースマシン用周辺装置制
    御部に対して行うことを特徴とする請求項10記載の仮
    想計算機エミュレート方法。
  12. 【請求項12】 前記アプリケーションプログラムがソ
    フトウェア割り込み命令を用いて発行するファンクショ
    ンコールが前記ターゲットマシンのオペレーティングシ
    ステムに対するものの場合、該ファンクションコールに
    対応する処理が該ターゲットマシンのオペレーティング
    システムと前記ベースマシンのオペレーティングシステ
    ムとの差の部分に対するものであれば、該ベースマシン
    のオペレーティングシステムと基本入出力システムとを
    用いて該ファンクションコールに対応する処理を行い、
    また、前記ファンクションコールに対応する処理が該タ
    ーゲットマシンのオペレーティングシステムと前記ベー
    スマシンのオペレーティングシステムとの差の部分に対
    するものでない場合には、該ベースマシンのオペレーテ
    ィングシステムを用いて該ファンクションコールに対応
    する処理を行うことを特徴とする請求項10記載の仮想
    計算機エミュレート方法。
  13. 【請求項13】 前記アプリケーションプログラムが前
    記ターゲットマシンの割り込みベクトルテーブルや基本
    入出力システムのデータ領域に対してメモりアクセス命
    令を発行した場合、別に用意したターゲットマシン用の
    割り込みベクトルテーブルや基本入出力システムのデー
    タ領域へアクセスするように該メモリアクセス命令が指
    すアドレスを変換することを特徴とする請求項10記載
    の仮想計算機エミュレート方法。
  14. 【請求項14】 前記アプリケーションプログラムが前
    記ターゲットマシンへの入出力命令を発行した場合、該
    入出力命令が表示に係るものであれば該入出力命令を前
    記ターゲットマシンの表示に係る入出力制御を行うター
    ゲットマシン用表示制御部への入出力命令に変換し、該
    入出力命令が表示以外に係るものであれば該入出力命令
    を前記ベースマシンの表示以外に係る入出力制御を行う
    ベースマシン用周辺装置制御部への入出力命令に変換す
    ることを特徴とする請求項10記載の仮想計算機エミュ
    レート方法。
  15. 【請求項15】 前記ベースマシンの表示以外に係る入
    出力制御を行うベースマシン用周辺装置制御部からの割
    り込みを受けた場合、該割り込みの番号を前記ターゲッ
    トマシンにおける割り込みの番号に変換し、変換した割
    り込みの番号がアプリケーションプログラムからマスク
    されている番号でない場合には、該変換した割り込みの
    番号に対応するアプリケーションプログラムに前記ベー
    スマシン用周辺装置制御部から割り込みを受けた旨を通
    知し、また、該変換した割り込み番号がアプリケーショ
    ンプログラムからマスクされている場合にはアプリケー
    ションプログラムに該ベースマシン用周辺装置制御部か
    らの割り込みを通知しないことを特徴とする請求項10
    記載の仮想計算機エミュレート方法。
  16. 【請求項16】 前記アプリケーションプログラムがソ
    フトウェア割り込み命令を用いて発行するファンクショ
    ンコールが前記ターゲットマシンの基本入出力システム
    に対するものの場合、該ファンクションコールに対応す
    る処理が表示に係るものであれば、該ファンクションコ
    ールに対応する処理を前記ターゲットマシンの表示に係
    る入出力制御を行うターゲットマシン用表示制御部に対
    して行い、また、該ファンクションコールに対応する処
    理が表示以外の入出力に係るものであれば、該ファンク
    ションコールに対応する処理を前記ベースマシンの表示
    以外に係る入出力制御を行うベースマシン用周辺装置制
    御部に対して行うとともに、該ファンクションコールが
    前記ターゲットマシンのオペレーティングシステムに対
    するものの場合、該ファンクションコールに対応する処
    理が該ターゲットマシンのオペレーティングシステムと
    前記ベースマシンのオペレーティングシステムとの差の
    部分に対するものであれば、該ベースマシンのオペレー
    ティングシステムと基本入出力システムとを用いて該フ
    ァンクションコールに対応する処理を行い、また、前記
    ファンクションコールに対応する処理が該ターゲットマ
    シンのオペレーティングシステムと前記ベースマシンの
    オペレーティングシステムとの差の部分に対するもので
    ない場合には、該ベースマシンのオペレーティングシス
    テムを用いて該ファンクションコールに対応する処理を
    行うソフトウェア割り込みエミュレートステップと、 前記アプリケーションプログラムが前記ターゲットマシ
    ンの割り込みベクトルテーブルや基本入出力システムの
    データ領域に対してメモりアクセス命令を発行した場
    合、別に用意したターゲットマシン用の割り込みベクト
    ルテーブルや基本入出力システムのデータ領域へアクセ
    スするように該メモリアクセス命令が指すアドレスを変
    換するメモリエミュレートステップと、 前記アプリケーションプログラムが前記ターゲットマシ
    ンへの入出力命令を発行した場合、該入出力命令が表示
    に係るものであれば該入出力命令を前記ターゲットマシ
    ン用表示制御部への入出力命令に変換し、該入出力命令
    が表示以外に係るものであれば該入出力命令を前記ベー
    スマシン用周辺装置制御部への入出力命令に変換する入
    出力エミュレートステップと、 前記ベースマシン用周辺装置制御部からの割り込みを受
    けた場合、該割り込みの番号を前記ターゲットマシンに
    おける割り込みの番号に変換し、変換した割り込みの番
    号がアプリケーションプログラムからマスクされている
    番号でない場合には、該変換した割り込みの番号に対応
    するアプリケーションプログラムに前記ベースマシン用
    周辺装置制御部が割り込みを発生した旨を通知し、ま
    た、該変換した割り込み番号がアプリケーションプログ
    ラムからマスクされている場合にはアプリケーションプ
    ログラムに該ベースマシン用周辺装置制御部からの割り
    込みを通知しないハードウェア割り込みステップとを含
    むことを特徴とする請求項10記載の仮想計算機エミュ
    レート方法。
  17. 【請求項17】 さらに、前記アプリケーションプログ
    ラムの起動時に、入出力命令の例外、ソフトウェア割り
    込み命令の例外、割り込みベクトルテーブルの例外、お
    よび基本入出力システムのデータ領域の例外を設定する
    初期化ステップと、 前記ソフトウェア割り込みエミュレートステップにおい
    て、前記ベースマシンのオペレーティングシステムまた
    は基本入出力システムが呼び出される際に例外が発生し
    ないように、また、該オペレーティングシステムから該
    基本入出力システムを呼び出すことによって例外が発生
    しないように、また、該基本入出力システムから前記ベ
    ースマシンの表示以外に係る入出力制御で例外が発生し
    ないように、また、該基本入出力システムから前記ベー
    スマシンの基本入出力システムのデータ領域へのアクセ
    スで例外が発生しないように、前記初期化ステップにお
    いて設定した例外を取り消し、該オペレーティングシス
    テムまたは基本入出力システムの処理の終了後に再度前
    記初期化ステップにおいて例外の設定を行う例外割り込
    み解除復帰ステップとを含むことを特徴とする請求項1
    6記載の仮想計算機エミュレート方法。
  18. 【請求項18】 前記ソフトウェア割り込みエミュレー
    トステップが、 前記アプリケーションプログラムが所望する入出力処理
    を行うために発行するソフトウェア割り込み命令により
    起動される該入出力処理に対応する前記ターゲットマシ
    ン用ドライバからジャンプ命令によって呼び出され、前
    記ターゲットマシンの基本入出力システムにより該入出
    力処理を行った後、該アプリケーションプログラムの該
    ソフトウェア割り込み命令の次の命令に制御を戻すこと
    を特徴とする請求項17記載の仮想計算機エミュレート
    方法。
  19. 【請求項19】 任意のアーキテクチャに基づいて動作
    するベースマシンにおいて、該ベースマシンのオペレー
    ティングシステムおよび基本入出力システムを用いて該
    ベースマシンとは異なるアーキテクチャに基づいて動作
    するターゲットマシン用のアプリケーションプログラム
    を実行させることを該ベースマシン上の仮想計算機エミ
    ュレータに行わせるプログラムを記録したことを特徴と
    する記録媒体。
  20. 【請求項20】 前記アプリケーションプログラムがソ
    フトウェア割り込み命令を用いて発行するファンクショ
    ンコールが前記ターゲットマシンの基本入出力システム
    に対するものの場合、該ファンクションコールに対応す
    る処理が表示に係るものであれば、該ファンクションコ
    ールに対応する処理を前記ターゲットマシンの表示に係
    る入出力制御を行うターゲットマシン用表示制御部に対
    して行い、また、該ファンクションコールに対応する処
    理が表示以外の入出力に係るものであれば、該ファンク
    ションコールに対応する処理を前記ベースマシンの表示
    以外に係る入出力制御を行うベースマシン用周辺装置制
    御部に対して行うことを前記仮想計算機エミュレータに
    行わせるプログラムを記録したことを特徴とする請求項
    19記載の記録媒体。
  21. 【請求項21】 前記アプリケーションプログラムがソ
    フトウェア割り込み命令を用いて発行するファンクショ
    ンコールが前記ターゲットマシンのオペレーティングシ
    ステムに対するものの場合、該ファンクションコールに
    対応する処理が該ターゲットマシンのオペレーティング
    システムと前記ベースマシンのオペレーティングシステ
    ムとの差の部分に対するものであれば、該ベースマシン
    のオペレーティングシステムと基本入出力システムとを
    用いて該ファンクションコールに対応する処理を行い、
    また、前記ファンクションコールに対応する処理が該タ
    ーゲットマシンのオペレーティングシステムと前記ベー
    スマシンのオペレーティングシステムとの差の部分に対
    するものでない場合には、該ベースマシンのオペレーテ
    ィングシステムを用いて該ファンクションコールに対応
    する処理を行うことを前記仮想計算機エミュレータに行
    わせるプログラムを記録したことを特徴とする請求項1
    9記載の記録媒体。
  22. 【請求項22】 前記アプリケーションプログラムが前
    記ターゲットマシンの割り込みベクトルテーブルや基本
    入出力システムのデータ領域に対してメモりアクセス命
    令を発行した場合、別に用意したターゲットマシン用の
    割り込みベクトルテーブルや基本入出力システムのデー
    タ領域へアクセスするように該メモリアクセス命令が指
    すアドレスを変換することを前記仮想計算機エミュレー
    タに行わせるプログラムを記録したことを特徴とする請
    求項19記載の記録媒体。
  23. 【請求項23】 前記アプリケーションプログラムが前
    記ターゲットマシンへの入出力命令を発行した場合、該
    入出力命令が表示に係るものであれば該入出力命令を前
    記ターゲットマシンの表示に係る入出力制御を行うター
    ゲットマシン用表示制御部への入出力命令に変換し、該
    入出力命令が表示以外に係るものであれば該入出力命令
    を前記ベースマシンの表示以外に係る入出力制御を行う
    ベースマシン用周辺装置制御部への入出力命令に変換す
    ることを前記仮想計算機エミュレータに行わせるプログ
    ラムを記録したことを特徴とする請求項19記載の記録
    媒体。
  24. 【請求項24】 前記ベースマシンの表示以外に係る入
    出力制御を行うベースマシン用周辺装置制御部からの割
    り込みを受けた場合、該割り込みの番号を前記ターゲッ
    トマシンにおける割り込みの番号に変換し、変換した割
    り込みの番号がアプリケーションプログラムからマスク
    されている番号でない場合には、該変換した割り込みの
    番号に対応するアプリケーションプログラムに前記ベー
    スマシン用周辺装置制御部から割り込みを受けた旨を通
    知し、また、該変換した割り込み番号がアプリケーショ
    ンプログラムからマスクされている場合にはアプリケー
    ションプログラムに該ベースマシン用周辺装置制御部か
    らの割り込みを通知しないことを前記仮想計算機エミュ
    レータに行わせるプログラムを記録したことを特徴とす
    る請求項19記載の記録媒体。
  25. 【請求項25】 前記アプリケーションプログラムがソ
    フトウェア割り込み命令を用いて発行するファンクショ
    ンコールが前記ターゲットマシンの基本入出力システム
    に対するものの場合、該ファンクションコールに対応す
    る処理が表示に係るものであれば、該ファンクションコ
    ールに対応する処理を前記ターゲットマシンの表示に係
    る入出力制御を行うターゲットマシン用表示制御部に対
    して行い、また、該ファンクションコールに対応する処
    理が表示以外の入出力に係るものであれば、該ファンク
    ションコールに対応する処理を前記ベースマシンの表示
    以外に係る入出力制御を行うベースマシン用周辺装置制
    御部に対して行うとともに、該ファンクションコールが
    前記ターゲットマシンのオペレーティングシステムに対
    するものの場合、該ファンクションコールに対応する処
    理が該ターゲットマシンのオペレーティングシステムと
    前記ベースマシンのオペレーティングシステムとの差の
    部分に対するものであれば、該ベースマシンのオペレー
    ティングシステムと基本入出力システムとを用いて該フ
    ァンクションコールに対応する処理を行い、また、前記
    ファンクションコールに対応する処理が該ターゲットマ
    シンのオペレーティングシステムと前記ベースマシンの
    オペレーティングシステムとの差の部分に対するもので
    ない場合には、該ベースマシンのオペレーティングシス
    テムを用いて該ファンクションコールに対応する処理を
    行うソフトウェア割り込みエミュレート処理と、 前記アプリケーションプログラムが前記ターゲットマシ
    ンの割り込みベクトルテーブルや基本入出力システムの
    データ領域に対してメモりアクセス命令を発行した場
    合、別に用意したターゲットマシン用の割り込みベクト
    ルテーブルや基本入出力システムのデータ領域へアクセ
    スするように該メモリアクセス命令が指すアドレスを変
    換するメモリエミュレート処理と、 前記アプリケーションプログラムが前記ターゲットマシ
    ンへの入出力命令を発行した場合、該入出力命令が表示
    に係るものであれば該入出力命令を前記ターゲットマシ
    ン用表示制御部への入出力命令に変換し、該入出力命令
    が表示以外に係るものであれば該入出力命令を前記ベー
    スマシン用周辺装置制御部への入出力命令に変換する入
    出力エミュレート処理と、 前記ベースマシン用周辺装置制御部からの割り込みを受
    けた場合、該割り込みの番号を前記ターゲットマシンに
    おける割り込みの番号に変換し、変換した割り込みの番
    号がアプリケーションプログラムからマスクされている
    番号でない場合には、該変換した割り込みの番号に対応
    するアプリケーションプログラムに前記ベースマシン用
    周辺装置制御部が割り込みを発生した旨を通知し、ま
    た、該変換した割り込み番号がアプリケーションプログ
    ラムからマスクされている場合にはアプリケーションプ
    ログラムに該ベースマシン用周辺装置制御部からの割り
    込みを通知しないハードウェア割り込み処理とを前記仮
    想計算機エミュレータに行わせるプログラムを記録した
    ことを特徴とする請求項19記載の記録媒体。
  26. 【請求項26】 さらに、前記アプリケーションプログ
    ラムの起動時に、入出力命令の例外、ソフトウェア割り
    込み命令の例外、割り込みベクトルテーブルの例外、お
    よび基本入出力システムのデータ領域の例外を設定する
    初期化処理と、 前記ソフトウェア割り込みエミュレート処理において、
    前記ベースマシンのオペレーティングシステムまたは基
    本入出力システムが呼び出される際に例外が発生しない
    ように、また、該オペレーティングシステムから該基本
    入出力システムを呼び出すことによって例外が発生しな
    いように、また、該基本入出力システムから前記ベース
    マシンの表示以外に係る入出力制御で例外が発生しない
    ように、また、該基本入出力システムから前記ベースマ
    シンの基本入出力システムのデータ領域へのアクセスで
    例外が発生しないように、前記初期化処理において設定
    した例外を取り消し、該オペレーティングシステムまた
    は基本入出力システムの処理の終了後に再度前記初期化
    処理において例外の設定を行う例外割り込み解除復帰処
    理とを前記仮想計算機エミュレータに行わせるプログラ
    ムを記録したことを特徴とする請求項25記載の記録媒
    体。
  27. 【請求項27】 前記ソフトウェア割り込みエミュレー
    ト処理が、 前記アプリケーションプログラムが所望する入出力処理
    を行うために発行するソフトウェア割り込み命令により
    起動される該入出力処理に対応する前記ターゲットマシ
    ン用ドライバからジャンプ命令によって呼び出され、前
    記ターゲットマシンの基本入出力システムにより該入出
    力処理を行った後、該アプリケーションプログラムの該
    ソフトウェア割り込み命令の次の命令に制御を戻すこと
    を特徴とする請求項26記載の記録媒体。
JP14254097A 1996-06-19 1997-05-30 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体 Pending JPH1069393A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14254097A JPH1069393A (ja) 1996-06-19 1997-05-30 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP15730896 1996-06-19
JP8-157308 1996-06-19
JP14254097A JPH1069393A (ja) 1996-06-19 1997-05-30 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体

Publications (1)

Publication Number Publication Date
JPH1069393A true JPH1069393A (ja) 1998-03-10

Family

ID=26474509

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14254097A Pending JPH1069393A (ja) 1996-06-19 1997-05-30 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体

Country Status (1)

Country Link
JP (1) JPH1069393A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006506752A (ja) * 2002-11-18 2006-02-23 エイアールエム リミテッド 安全処理システムにおける例外タイプ
JP2009205422A (ja) * 2008-02-27 2009-09-10 Nintendo Co Ltd 情報処理システム
JP2010128943A (ja) * 2008-11-28 2010-06-10 Toshiba Corp 情報処理装置および情報処理装置の制御方法
JP2011519092A (ja) * 2008-04-28 2011-06-30 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 仮想割り込みモードインターフェース及び割り込みモードを仮想化するための方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006506752A (ja) * 2002-11-18 2006-02-23 エイアールエム リミテッド 安全処理システムにおける例外タイプ
US7661105B2 (en) 2002-11-18 2010-02-09 Arm Limited Exception types within a secure processing system
US7949866B2 (en) 2002-11-18 2011-05-24 Arm Limited Exception types within a secure processing system
JP2009205422A (ja) * 2008-02-27 2009-09-10 Nintendo Co Ltd 情報処理システム
US8856810B2 (en) 2008-02-27 2014-10-07 Nintendo Co., Ltd. Information processing system configured to emulate software during an emulation mode
JP2011519092A (ja) * 2008-04-28 2011-06-30 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 仮想割り込みモードインターフェース及び割り込みモードを仮想化するための方法
JP2010128943A (ja) * 2008-11-28 2010-06-10 Toshiba Corp 情報処理装置および情報処理装置の制御方法

Similar Documents

Publication Publication Date Title
JP2590267B2 (ja) 仮想計算機における表示制御方式
US6269409B1 (en) Method and apparatus for concurrent execution of operating systems
EP2397943B1 (en) Uniform storage device by partial virtualization machine
US7209994B1 (en) Processor that maintains virtual interrupt state and injects virtual interrupts into virtual machine guests
US7707341B1 (en) Virtualizing an interrupt controller
US7225119B2 (en) System and method for the logical substitution of processor control in an emulated computing environment
US7434224B2 (en) Plural operating systems having interrupts for all operating systems processed by the highest priority operating system
CN102207886A (zh) 虚拟机快速仿真辅助
TW200813833A (en) Launching hypervisor under running operating system
KR20070083569A (ko) 운영체제
US5093776A (en) Information processing system emulation apparatus and method
JP2004258840A (ja) 仮想化されたi/oデバイスをもつ計算機システム
US5301277A (en) Method and apparatus for communicating peripheral data to/from minor operating systems running as subprocesses on a main operating system
JPH05151003A (ja) システム・コントロール・プログラム、及び情報処理システム
JPH02153434A (ja) データ処理システム
KR20070003765A (ko) 운영체제
US5003468A (en) Guest machine execution control system for virutal machine system
JP2009134565A (ja) 仮想計算機システム及び仮想計算機システムの制御方法
EP1410170B1 (en) Logical substitution of processor control in an emulated computing environment
US7412597B2 (en) Computer system and booting method thereof
JPH1069393A (ja) 仮想計算機エミュレータ、仮想計算機エミュレート方法 および仮想計算機エミュレートプログラムを記録した記録 媒体
KR20060023956A (ko) 운영체제
WO1995024683A1 (en) A virtual memory system that is portable between different cpu types
JP3033713B2 (ja) 仮想計算機エミュレート装置
JPH04227547A (ja) 情報処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19991012