JPS6017539A - エミユレ−シヨン方式 - Google Patents

エミユレ−シヨン方式

Info

Publication number
JPS6017539A
JPS6017539A JP58126322A JP12632283A JPS6017539A JP S6017539 A JPS6017539 A JP S6017539A JP 58126322 A JP58126322 A JP 58126322A JP 12632283 A JP12632283 A JP 12632283A JP S6017539 A JPS6017539 A JP S6017539A
Authority
JP
Japan
Prior art keywords
input
program
instruction
output
emulation
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
JP58126322A
Other languages
English (en)
Inventor
Shigemi Adachi
茂美 足立
Yoshitake Nakaosa
中筬 恵丈
Yoshinori Fujioka
良記 藤岡
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP58126322A priority Critical patent/JPS6017539A/ja
Priority to KR1019840003963A priority patent/KR900000092B1/ko
Priority to US06/629,808 priority patent/US4812975A/en
Publication of JPS6017539A publication Critical patent/JPS6017539A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45554Instruction set architectures of guest OS and hypervisor or native processor differ, e.g. Bochs or VirtualPC on PowerPC MacOS

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、エミュレーション方式に関し、特に頻繁に入
出力命令が発行さオ]るオンライン・プログラムのエミ
ュレーションカ可能なエミュレーション方式に関するも
のである。
〔発明の背景〕
通常のデータ処即装1行を用いて問題を解くためには、
その問題の処理手順をプログラムの形に記述する作業、
つまりプログラミングが必要であり、このプログラミン
グケ容易にするためFORTRAN,COBOL等のマ
ク四命令が広く使用されている。しかし、マク誼命令で
書かれたソース・プログラムは、そのままでは実行する
ことができず、コンパイラ方式、インタプリタ方式ある
いはコンパイラ・インタプリタ方式等により翻訳して機
械語のプログラムに変換した後、実行する。
通常のデータ処理装置は、その装置に固有のプログラム
、すなわち命令語群を持っており、各命令語の特定フィ
ールドに記述された操作コードによりその命令語の機能
が定められでいる。
ところで、新しいデータ処理装置が開発され、旧機種と
入れ換えられる場合に、旧機種で開発されて使用され1
1ぎた/1グラムj丁どのようにして受け継ぐかという
問題h’−ある。その場合、ソースf1″1グラ人が7
クロ命令で杏がtl(−いれ(′よ、シスタ゛ム切換え
時に再コンパイルすることにより、新しくハ考鏝種(ネ
ーティプ・マシン)の目的プログラムとして使1!1す
ることができる。しかし、現実には、それぞれのデータ
処理装置の言語仕様に差異があって、完全な互換性がな
いごとが多く、そのために修正が必要となり、またコン
パイルの後のテスト・ラン等のため、人手レニよる作業
が多く必要となる。
したがって、新旧機種の間にその了−ギテクチャの上で
互換性がないにもかかわらず、旧機種(夕へゲット・マ
シン)のプログラムをそのままの形で新機種のデータ処
理装置(ネーティブ・マシンフにより実行する場合、あ
るいはアーキテクチャの異なる仮想計算機のプログラム
を実在のデ〜り処理装置で実行する場合には、エミュレ
ーションカ1m要となる。エミュレーションは、マイク
ロブ四グラミングを利用して新しい処理装置(ネーγイ
ブ・マシン)の機能を拡張あるいは変更し1、シミュレ
ーションを、1速(J行うものである。
エミュレーションを行う@、合、特に間II資となるこ
とは、入出力命令の〕、ミュレーションである。
例えり:、ヂャネル方式でない人出カ命令体系を持つデ
ータ処理装置のプログラムを、チャネル形式の入出力命
令体系を持つデータ処理装置でエミュレーションするよ
うな場合には、ハードウェアの違いが大きすぎるため、
マイクロプログラムのみでJ−ミュレーションすること
は困1/#となる。このような場合、エミュレーション
を行うf−夕処理装置のオペレーティング・システムの
1つのパーティション(区画)に被エミュレーション・
プログラムを置き、両各の間にインタフェース用プログ
ラムを隈′りる方法が用いら第1ている。このとき、マ
イクロプログラムは、被エミュレーション、プログラム
中「入出力命令を検出すると、インタフェース用プロダ
ラムに通知し、ソフトウェア(より入Lti力命令をイ
ンタブリット(解釈実行)して、ネーティブ・マシンの
新オペレーティング・シスアムの人出カマクロ命令また
は入出力命令に置換える処理を行う。この場合、被エミ
ュレーション・プログラム中のやυ微の入出力命令が1
つのネーテイブ・マシンmオペレーティング・システム
の入出カマクロ命令または入11S力命令し一’rIt
換えられるのが普通である。しかし、この方式では、エ
ミュ1/−ジョンを制御するインタフェース用プロダラ
ムの上「、さらrネーテイブ・マシンmオペレーティン
グ・システムが存在する形となるため、オーバヘッドが
大きくなることは避けられない。
通常、エミュIノージョン機能の中て、マイクロプログ
ラムの分担する部分を多くすれば実行速度は上るが、融
通性は少なくなり、逆に、ソフトウェアの分担する部分
を多くすれば実行速度は遅くなるが、融便性は増大する
一般に、チャネル形式でない入出力命令体系のデータ処
理I装置では、1つの入出力動作を行うために複数の入
出力命令が発行される。これに対して、チャネル形式の
入出力命令体系を持つデータ処理装置では、入出力起動
命令(SIO命令)1つを発行するのみで、入出力動作
が可能である。
例えば、磁気ディスク装置1対してシークおよびリード
動作を行わせる場合、チャネル形式の入出力命令体系で
は、チャネル・コマンド・ワード(CCW)にてシーク
動作とリード動作をコマンド・ヂエーンにより指定して
おけば、チャネルに対する入出力起動命令(SIO命令
)を発行するのみですむのに対して、チャネル形式でな
い入出力命令体系では、ディスク制御装置内の人出力制
御レジスタ群に対し、逐一シーク、リード動作の各々に
必要なパラメータ類を書込んだ後、入出力を起動する方
法がとら1+る。
第1図は、チャネル形式てない入出力命令体系を持つ処
理装置の磁気ディスクに対する入出力命令群の説明図、
第2図は第1図の1つの命令フォーマットを示す図であ
る。
ターゲット・マシンがチャネル形式でない入出力命令体
系を用いている場合、磁気ディスクに対してシーク動作
を行わせるためには、第1図(、)に示すように、■の
命令で磁気ディスクのユニット・′γド1/スを指定し
、■の命令でシーりするトラック・アドレスおよびセク
タ・−f1°レスを入出力制御レジスタじ書込み、■の
命令でシーク動作の:17ンドな入出力制御レジスタに
書込昏と同時r、シーク動作の起動を行う。また、磁気
ディスクに対してリード動作を行わせるためには、第1
図(b)C示すように、■、■の命令で読み込み先の主
記憶装置アドレスの上位、F位を入出力制御レジスタに
書込み、■の命令でリードするデータのワード数を指定
し、■の命令でリード・コマンドを入出力制御レジスタ
に書込むと同時に、リード動作の起動を行う。次に、こ
れらの命令フォーマットについて説明する。第2図は、
第1mにおけるライト命令W I O(Wrtte I
lo )のフォーマットを示している。
WIO命令は、磁気ディスク制御装置内の入出力制御レ
ジスタへのデータ書込みおよび起動を行うものである。
命令要素のWIOn (B、F)。
Rのうち、WIOは入出力装置への書込みを指示するオ
ペレーション・コード(OP ) 、n 部ハ入出力!
li御レジスタ番号、13部は入出力装置アドレスがセ
ットさ第1る汎用レジスタ祁号、F部は入出力動作の起
動な指定するビットで°°1″のとき起動の指示を表し
ている。R部番ま入出力制御レジスタV−書込ま才する
データを保持する汎用レジスタ番号である。実際の命令
フ]−マットは、第2図のように、UP、B、F、n、
R1の順序で配列されている。
なお、入出力制御レジスタ番号を示す1部が、(000
)のときにはワード・アト°レス・レジスタ(WAR’
)、(001)のときじはコントロール・レジスタO(
CTRO)、(Ol O)のときにはコントロール・レ
ジスタ1 (CTRL)、(011)のときにはコーニ
ット・アドレス・レジスタ (UNR)、(100)の
ときにはアドレス・コントロール・レジスタ(Acn、
)をそれぞれ表している(第2図参照)。
このように、チャネル形式でない入出力命令語体系のデ
ータ処理装置では、1つの入出力瘤1作(第1図ではシ
ーク、リード動作)を行うためV複数個(第1図では7
個)の入出力命令を発行する必要がある。したがって、
従来、ターゲット・マシンがチャネル形式でない入出力
命令語体系を有する場合のエミュレーションを、チャネ
ル形式の入出力命令語体系を有するネーテイブ・マシン
で行う場合には、WIO命令が発行される度にこれをイ
ンタブリットするインタフェース・プログラムが起動さ
ねで、いくつかのWIO命令のセットを、チャネル形式
の入出力命令または新オペレーティング・システムい対
する入出カマクロ命令じ置換えている。
この場合、W■0命令のインタブリットに要するソフト
ウェアのオーバヘッドが非常に大きくなることは明らか
である。エミュ1ノージョンされるプログラムがバッチ
処理を行う場合のようC1あまり高速性が要求されない
ときじ仁1、−1−記の方式によっても大きな問題は生
じないが、エミュレーションされるプログラムがオンラ
イン・システムのプログラムのように高速レスポンスを
要求し、かつ入出力動作が頻繁に行われるような場合に
は、性能的見地からこれを採用することはできない。
〔発明の目的〕
本発明の目的は、このような便乗の間碩点を改善し、入
出力命令のエミュレーションを効率よく実行し7て、@
i繁に一人出力命令が発行ざtするAンライン・プログ
ラムのエミュレーションを少ないオーバヘッドで実現で
きるエミュレーション方式を提供することにある。
(発明のN要) 上記目的を達成するため、本発明のエミュレーション方
式は、命令語体系の光なるデータ処理装置近のプログラ
ムをエミュレーションするマイクロプログラム制御のデ
ー々処理装置Cおいて、被エミュレーション・プログラ
ム中のスーババイリ′・コール命令または内接オベレー
デイング・システムに割込む命令を検出し、該命令の4
ペランド値により入出力制御マクロ命令か否かを判定し
て、入出力制御マク四命令であるときには、エミュレー
ションをコントロールするプログラム<g込みを発生し
、上記以外の命令であるとき「は、被工ミュレージTヨ
ン・プログラムのAべl、−テインゲシステムに割込の
を発生1−ることに特徴がある。
〔発明の実施例] 第3図は、本発明の一実施例を星1エミコーレーション
時のプログラム構造を表す図である。
第3図幀おいて、lOはネーテイブ・マシンのオペレー
ティング・システム、11=13はネーテイブ・マシン
のユーザ・プログラムIP)、20はエミュレーション
・ジョブ(つまり、ターゲット・マシンのプログラムに
よるジョブ)、21はE CP (Emu4ation
 ControlProgra、m )と呼ばれるイン
タフェース・プログラム、22はエミュレーションされ
るプログラム、23はターゲットマシンのオペレーティ
ング・システム、24はターゲット・マシンのユーザ・
プログラム(U P )である。
本発明においては、ネーテイプ・マシンのオペレーティ
ング・システム10とターゲット・マシンのプログラム
22の間にECP21が設けられ、このECP21がエ
ミュレーションされるプキグラム22に対しEXL命令
(Exac1xtOLoca4 )を発行シてエミュレ
ーションの起動を行い、またターゲット・マシンのユー
ザ・プログラム24内T’マシンのオペレーティング・
システムlOに対する入出力制御マクロ命令に変換する
第4図は、E X L命令のフォーマット図である。
r> x r、命令は、プログラム処理状態をエミュレ
ー々が動作するモードGJ切換えて、P S W ( 
Pr。
gran 5tatuf+Word )や汎用t・ジス
タ等をR ’iするものである。その7/1−マットは
、第4図に示すように、命令コーY″部( E X L
 )と83部(4ビツトでベース・l/ジスタとなる汎
用レジスタを指ボする)とI)2 部(]、2ビットで
2進散値を表す)から構成される。この命令が出される
と、B2 部で指定された汎用レジスタの内容をB2 
部に加えて第2オペランド・アドレスとする。第2オペ
ランド・アドレスは、主記憶装置のアドレスを指してお
り、ここに格納されている第2オペランドはローカル実
行リストである。ローカル実行リストCは、¥ミュレー
タの動作に必要なI)SW,汎用l・ジスタ、その他の
情報が含まねており、その長さは40バイトである。E
 X I,命令を実行すると、C P [Jはpsw,
汎用1/ジスタの値をローカル実行リストの内容を用い
て設定し、その後rffーカル実行モード(エミュレー
タ動作モード)となる。
本発明のエミュレーション方式では、被エミュレーショ
ン・プログラム22内のユーザ・プログラム24から発
行される入出力制御命令は、被エミュレーション・プロ
グラム22のオペレーティング・システム230入出力
制御マクロ命令の形で発行されること、そして通常はス
ーパバイザ・コール命令(SVC命令)のようなオペレ
ーティング・システムへの割込み命令であること、LV
着目し、従来のように入出力命令を機械語のレベルでエ
ミュレーションするのではなく、マクロ命令ルベルでエ
ミュレーションを行うようにした。
こねにより、ターゲット・マシンのユーザ・プログラム
24内で発行された入出力制御マクロ会合を、ネーテイ
ブ・マシンのオペレーティング・システム〕Oに対する
入出力制御マクロ命令に変換する操作が容易になるとと
もに、複数個の入出力命令に対してその度ごとに処理を
行う必要がないので、少ないオーバヘッドでエミュレー
ションを実行することができる。
すなわち、本発明では、エミュレーションを実行するマ
イクロブロカ゛ラムGJおいて、被エミュレ− ジョン
−プログラム22中にスーパバイザ・コール命令を検出
したとき(ζは、その命令のオペランド、つまりSvC
コードをあらがじめ用意されたテーブル(ローカル実行
リストのエントりから取イktされる)により検索し、
入出力i1i’!御マクロ命令によるスーパバイザ・コ
ール命令か否がの判定を行い、入出力制御マクロ命令に
よるスーパバイザ・コール命令であったときに−は、被
エミュレーション・プIコゲラl\22のオペレーティ
ング・システム23に割込みを発生せず、− jl.:
r− ミュレーション・モーF fx H 除し、エミ
ュI/ージョン・コントロール・プログラムと呼ばね、
ネーティブ・モードで動作するインタフェース・プログ
ラム(ECP2J)に割体Iノ?発生さ−1する。、、
rミvレージF+:/・コントI−j−ル・ブtJゲラ
ム(ECP21)では、抜工ミコ用、・−シE’lンー
ブロゲラム22から・光行さJIた入出力制イ、’i(
lマクロ命令な解析し、ネーーアーイブ・モード・Aベ
レ−=ティング・システム100入出力制i;titマ
クロ1ネ令に一変換して発行する0 第5図は、本発明の実Jif+i例を示す1ミユレ一シ
ヨン方式の処理フローチャートおよびローカル実行リス
トの説明図である。
第5図(a)には、入出力制御マクロ変換を行うまでの
エミュレーション・マイクロプログラムの動作フY1−
が示されている。
エミュレーション・マイクロプログラムがターゲット・
マシンの機械語を襖次実行していく途中で、スーパバイ
ザ・コール命令(S V C命! )の命令コードを検
出すると、第4図(b)に示すようなエミュレーション
起動時に設定されているローカル実行リスト(エミュ1
/−ジョン・モードfilJmテーブル)41を参照し
て、その中の1つのエントリであるSVCジャンプ・テ
ーブノ1先頭ア)−1ノスな取得する(ステップ31.
33)。取q:)t、た先頭アドレスとジャンプ・テー
ブル牛2の5XIC:′:I−I゛(SVC命令のオペ
ランF′値であって、O〜25.5の値をとる)じ対応
する番地1バイトにセットさtlている値を8照する。
このSVCジャンプ・テーブル42のf1f+は、ター
ゲット・マシン・オペレーティング・システム23のS
 V Cコードを判定して、あらかじめコーディングさ
れでいるものであり、入出力制御マクロ命令に関するS
■Cコードに対応するエントリには(I”F)、6がセ
ットされ、その他のエントリG、T−は(F P’ )
 !6以外の(Wがセットされている。エミュレーショ
ン・マイ・クロプログラムは、デープル42のエントリ
の値を判別し1、そのSVCコードGJ対応するエント
リの値が(FF)16でない場合には、々−ゲットマシ
ンのオペ1ノ−ディノブ・システム23内で処理可能な
S V C命令であると判定し2て、ターゲット・マシ
ンのアーキデタチャで定められt: S V C命令の
動作を行うようにエミュレーション−iJ’6(ステッ
プ34.35)。エントリの値が(FF、、)の場合じ
は、入出力Nil制御マクロ命令に門するS■C命令と
判定し、現在のエミュレーション・モードの状態を示ず
PSWを、第5図(b)に示すローカル実行リスト41
内のPSW退避エリアに退避すると同時に、ECP21
のターゲット・マシンの入出力制御マクロ命令の変換を
行うための入口アドレスを示ずECP割込み新PSWを
PSWにロードし、エミュレーション・モードを解除し
て、E CP 2 ]、に制御を渡す(ステップ34〜
39)。
このようにして、エミュレーション・マイクロプログラ
ムの制御により、入出力制御マクロ命令に関するSVC
命令が検出さね、ECP21に制御が渡される。
E CP 21は、ローカル実行リスト+1中のローカ
ルPSWを参照し、SVC命令のアドレスを知ることが
できるので、SvC命令に伺随する入出力制御じ関連す
るパラメータ群を読取ることができ、容易にネーテイブ
・マシンのオペレーティング・システム]、Or対する
入出カマクロ命令に変1臭することが[可能となる。
また、こit &−より、ターゲット・マシンのオペレ
ーティング・システム230入fts 力制?、l+マ
クロ命令処11)ロレーヂンは、全<1I111作しな
くでも才なので、ソフトウェアのオーバヘッドは非常C
=−少qくなる。
〔発明の効呆] 以−1=2明したように、本発明GJよねば、異なるア
ーギデク千ヤを有するデータ処J(1(装置のコーミュ
レーション&Jおいて、スーパバイザ・コール命令によ
りターデッド・マシンのユーザ・プログラムから発行さ
れる人出力制御マクロ命令を判別[2、これをインタフ
ェース・)゛ログラムに一ン1↓糸各−4る機能を備え
たので、機械語レベルでエミュレーションすることなく
、マクロ命令レベルでエミュレーションすることができ
、きわめてfiti Ji’にネーティブ・マシンの人
出力制御マクロ命令番J変換することが可能となる。し
たが1)で、少ない」−バヘッドによりエミュレーショ
ンできるので、頻糖に入出力命令を発行するオンライン
・プログラムの工ミコ、1〜−ヤニ1ン(・J−好讐f
8“(′ある。
【図面の簡単な説明】
第1図および%; 2図はチャネル形゛パでないべ出力
命令体系をイ1]する鵠11j ′tv口の入出力命令
群の説明図と]命令の“71−マットミノ1、鉛3図は
本発明の一実施例を示すエミュレーション時のプログラ
ム構造な表した図、φ4図はEXL命令のフォーマット
図、第5図は、本発明の一実施例を示すエミュレーショ
ン方式の栖理フローチャートと11=力ル実行リストの
説明図である。 10?4−ティグ・マシンのオペレーテイングシステム
、11〜]−3:ネーテイブ・マシンのユーザ・プログ
ラム、20:エミュレーション・ジョブ、2]:インセ
フエース・プログラム(ECP)、22:被エミュレー
ション・プログラム23、ターゲット・マシンのオペレ
ーティング・システム、24−:ターゲット・マシンの
ユーザ・プログラム。 第 11」 第 2 (9) WIOn (B、I”) 、R 第 3 図 14図 t [ 第5図 (a) 10−

Claims (1)

    【特許請求の範囲】
  1. 0)命令語体系の異なるデータ処理装置のプログラムを
    エミュレーションするマイクロブ四グラム制御のデータ
    処理装置において、被エミュレーション・プログラム中
    のスーパバイザ・コール命令または直接オペレーティン
    グ・システムに割込む命令を検出し、該命令のオペラン
    ド値により入出力制御マク四命令か否かを判定して、入
    出力制御マクロ命令であるときには、エミュレーション
    をコントロールするプログラムに割込みを発生し、上記
    以外の命令であるときには、被エミュレーション・プロ
    グラムのオペレーティング・システムに割込みを発生す
    ることを特徴とするエミュレーション方式。
JP58126322A 1983-07-11 1983-07-11 エミユレ−シヨン方式 Pending JPS6017539A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP58126322A JPS6017539A (ja) 1983-07-11 1983-07-11 エミユレ−シヨン方式
KR1019840003963A KR900000092B1 (ko) 1983-07-11 1984-07-07 데이터 처리장치
US06/629,808 US4812975A (en) 1983-07-11 1984-07-11 Emulation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58126322A JPS6017539A (ja) 1983-07-11 1983-07-11 エミユレ−シヨン方式

Publications (1)

Publication Number Publication Date
JPS6017539A true JPS6017539A (ja) 1985-01-29

Family

ID=14932312

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58126322A Pending JPS6017539A (ja) 1983-07-11 1983-07-11 エミユレ−シヨン方式

Country Status (3)

Country Link
US (1) US4812975A (ja)
JP (1) JPS6017539A (ja)
KR (1) KR900000092B1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02238527A (ja) * 1988-12-06 1990-09-20 American Teleph & Telegr Co <Att> 目標コンピュータ・システム、異なるコンピュータ・システム間でプログラムを実行する方法
US7464044B2 (en) * 1998-12-08 2008-12-09 International Business Machines Corporation Method and system for using emulation objects for developing point of sale
JP2011236935A (ja) * 2010-05-07 2011-11-24 Kyb Co Ltd 空圧緩衝器

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5027273A (en) * 1985-04-10 1991-06-25 Microsoft Corporation Method and operating system for executing programs in a multi-mode microprocessor
US5088033A (en) * 1986-04-28 1992-02-11 Xerox Corporation Data processing system emulation in a window with a coprocessor and I/O emulation
GB2203572B (en) * 1987-03-24 1991-11-27 Insignia Solutions Limited Improvements in data processing means
US5226122A (en) * 1987-08-21 1993-07-06 Compaq Computer Corp. Programmable logic system for filtering commands to a microprocessor
JPH0628036B2 (ja) * 1988-02-01 1994-04-13 インターナショナル・ビジネス・マシーンズ・コーポレーシヨン シミュレーシヨン方法
US5283868A (en) * 1989-05-17 1994-02-01 International Business Machines Corp. Providing additional system characteristics to a data processing system through operations of an application program, transparently to the operating system
US5325517A (en) * 1989-05-17 1994-06-28 International Business Machines Corporation Fault tolerant data processing system
US5369767A (en) * 1989-05-17 1994-11-29 International Business Machines Corp. Servicing interrupt requests in a data processing system without using the services of an operating system
CA2009780C (en) * 1989-05-17 1999-07-27 Ernest D. Baker Method and apparatus for the direct transfer of information between application programs running on distinct processors without utilizing the services of one or both operating systems
US5113522A (en) * 1989-05-17 1992-05-12 International Business Machines Corporation Data processing system with system resource management for itself and for an associated alien processor
US5155809A (en) * 1989-05-17 1992-10-13 International Business Machines Corp. Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware
US5077657A (en) * 1989-06-15 1991-12-31 Unisys Emulator Assist unit which forms addresses of user instruction operands in response to emulator assist unit commands from host processor
US5276811A (en) * 1989-06-30 1994-01-04 Icom, Inc. Method for emulating programmable logic controller by exchanging information between debug program which emulates I/O devices and ladder logic program
JP2708608B2 (ja) * 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
US5519873A (en) * 1990-08-31 1996-05-21 International Business Machines Corporation Apparatus for switching digital command execution between a general purpose microprocessor and dedicted execution logic
EP0534597B1 (en) * 1991-09-23 2000-04-26 Intel Corporation Computer system having software interrupt (INTN) instructions selectively operating in a virtual mode
IL105638A0 (en) * 1992-05-13 1993-09-22 Southwest Bell Tech Resources Storage controlling system and method for transferring information
JPH0773046A (ja) * 1992-12-07 1995-03-17 Intel Corp コンピュータシステムで回路をエミュレートする 方法及び装置
US5452456A (en) * 1992-12-18 1995-09-19 Apple Computer, Inc. Apparatus for executing a plurality of program segments having different object code types in a single program or processor environment
WO1994027215A1 (en) * 1993-05-07 1994-11-24 Apple Computer, Inc. Method for decoding guest instructions for a host computer
AU6701594A (en) * 1993-05-07 1994-12-12 Apple Computer, Inc. Method for decoding sequences of guest instructions for a host computer
JP3248992B2 (ja) * 1993-07-13 2002-01-21 富士通株式会社 マルチプロセッサ
US5768598A (en) * 1993-09-13 1998-06-16 Intel Corporation Method and apparatus for sharing hardward resources in a computer system
US5574887A (en) * 1993-09-20 1996-11-12 Apple Computer, Inc. Apparatus and method for emulation routine pointer prefetch
US5408622A (en) * 1993-09-23 1995-04-18 Apple Computer, Inc. Apparatus and method for emulation routine control transfer via host jump instruction creation and insertion
US5619682A (en) * 1993-09-28 1997-04-08 Bull Hn Information Systems Inc. Executing network layered communications of a first system on a second system using a communication bridge transparent to the different communication layers
US5781750A (en) * 1994-01-11 1998-07-14 Exponential Technology, Inc. Dual-instruction-set architecture CPU with hidden software emulation mode
US5481684A (en) * 1994-01-11 1996-01-02 Exponential Technology, Inc. Emulating operating system calls in an alternate instruction set using a modified code segment descriptor
US5542059A (en) * 1994-01-11 1996-07-30 Exponential Technology, Inc. Dual instruction set processor having a pipeline with a pipestage functional unit that is relocatable in time and sequence order
EP0667573A1 (en) * 1994-02-14 1995-08-16 International Business Machines Corporation Incorporation of services written in one operating system environment into another operating system environment
GB9405729D0 (en) * 1994-03-23 1994-05-11 Vantage Analysis Systems Europ Software execution systems
US6179488B1 (en) 1994-03-23 2001-01-30 Synopsys, Inc. Software execution systems
US5481693A (en) * 1994-07-20 1996-01-02 Exponential Technology, Inc. Shared register architecture for a dual-instruction-set CPU
US5685009A (en) * 1994-07-20 1997-11-04 Exponential Technology, Inc. Shared floating-point registers and register port-pairing in a dual-architecture CPU
US5664156A (en) * 1994-09-16 1997-09-02 Philips Electronics North America Corporation Microcontroller with a reconfigurable program status word
US5956680A (en) * 1995-06-02 1999-09-21 National Semiconductor Corporation Virtual audio generation and capture in a computer
US5845133A (en) * 1995-07-06 1998-12-01 Cyrix Corporation Virtualized functions within a microprocessor
US5768562A (en) * 1995-09-26 1998-06-16 Altera Corporation Methods for implementing logic in auxiliary components associated with programmable logic array devices
US5799169A (en) * 1995-10-02 1998-08-25 Chromatic Research, Inc. Emulated registers
US5838987A (en) * 1995-10-06 1998-11-17 National Semiconductor Corporation Processor for eliminating external isochronous subsystems
US5786825A (en) * 1995-12-13 1998-07-28 National Semiconductor Virtual display subsystem in a computer
US8074055B1 (en) 1999-01-28 2011-12-06 Ati Technologies Ulc Altering data storage conventions of a processor when execution flows from first architecture code to second architecture code
US7111290B1 (en) * 1999-01-28 2006-09-19 Ati International Srl Profiling program execution to identify frequently-executed portions and to assist binary translation
US6978462B1 (en) 1999-01-28 2005-12-20 Ati International Srl Profiling execution of a sequence of events occuring during a profiled execution interval that matches time-independent selection criteria of events to be profiled
US7013456B1 (en) 1999-01-28 2006-03-14 Ati International Srl Profiling execution of computer programs
US8127121B2 (en) * 1999-01-28 2012-02-28 Ati Technologies Ulc Apparatus for executing programs for a first computer architechture on a computer of a second architechture
US8065504B2 (en) * 1999-01-28 2011-11-22 Ati International Srl Using on-chip and off-chip look-up tables indexed by instruction address to control instruction execution in a processor
US7941647B2 (en) 1999-01-28 2011-05-10 Ati Technologies Ulc Computer for executing two instruction sets and adds a macroinstruction end marker for performing iterations after loop termination
US6826748B1 (en) 1999-01-28 2004-11-30 Ati International Srl Profiling program execution into registers of a computer
US7065633B1 (en) 1999-01-28 2006-06-20 Ati International Srl System for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU
US7275246B1 (en) 1999-01-28 2007-09-25 Ati International Srl Executing programs for a first computer architecture on a computer of a second architecture
US6954923B1 (en) 1999-01-28 2005-10-11 Ati International Srl Recording classification of instructions executed by a computer
US6487587B1 (en) * 1999-03-01 2002-11-26 Sun Microsystems, Inc. Method and system for data processing by proxy
US6779107B1 (en) 1999-05-28 2004-08-17 Ati International Srl Computer execution by opportunistic adaptation
US6549959B1 (en) 1999-08-30 2003-04-15 Ati International Srl Detecting modification to computer memory by a DMA device
US6934832B1 (en) 2000-01-18 2005-08-23 Ati International Srl Exception mechanism for a computer
US7331040B2 (en) * 2002-02-06 2008-02-12 Transitive Limted Condition code flag emulation for program code conversion
GB0202728D0 (en) * 2002-02-06 2002-03-27 Transitive Technologies Ltd Condition code flag emulation for program code conversion
US20080271019A1 (en) * 2007-04-24 2008-10-30 Stratton Robert J System and Method for Creating a Virtual Assurance System
US20080271025A1 (en) * 2007-04-24 2008-10-30 Stacksafe, Inc. System and method for creating an assurance system in a production environment
US8073676B2 (en) * 2007-09-21 2011-12-06 Sony Computer Entertainment Inc. Method and apparatus for emulation enhancement

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2253435A5 (ja) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
US3955180A (en) * 1974-01-02 1976-05-04 Honeywell Information Systems Inc. Table driven emulation system
US4031517A (en) * 1974-04-24 1977-06-21 Honeywell Information Systems, Inc. Emulation of target system interrupts through the use of counters
US4084235A (en) * 1975-04-14 1978-04-11 Honeywell Information Systems Inc. Emulation apparatus
US4482953A (en) * 1980-05-30 1984-11-13 Fairchild Camera & Instrument Corporation Computer with console addressable PLA storing control microcode and microinstructions for self-test of internal registers and ALU
US4370709A (en) * 1980-08-01 1983-01-25 Tracor, Inc. Computer emulator with three segment microcode memory and two separate microcontrollers for operand derivation and execution phases
US4434462A (en) * 1980-11-24 1984-02-28 Texas Instruments Incorporated Off-chip access for psuedo-microprogramming in microprocessor
JPS59501684A (ja) * 1982-10-22 1984-10-04 インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン 目的命令ストリ−ムへ殆んど実時間で插入するためのソ−スおよび目的命令ストリ−ムの外部における加速式命令写像
US4727480A (en) * 1984-07-09 1988-02-23 Wang Laboratories, Inc. Emulation of a data processing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02238527A (ja) * 1988-12-06 1990-09-20 American Teleph & Telegr Co <Att> 目標コンピュータ・システム、異なるコンピュータ・システム間でプログラムを実行する方法
US7464044B2 (en) * 1998-12-08 2008-12-09 International Business Machines Corporation Method and system for using emulation objects for developing point of sale
JP2011236935A (ja) * 2010-05-07 2011-11-24 Kyb Co Ltd 空圧緩衝器

Also Published As

Publication number Publication date
US4812975A (en) 1989-03-14
KR900000092B1 (ko) 1990-01-19
KR850001573A (ko) 1985-03-30

Similar Documents

Publication Publication Date Title
JPS6017539A (ja) エミユレ−シヨン方式
US5129064A (en) System and method for simulating the I/O of a processing system
JP4901075B2 (ja) コンピュータ読取可能な媒体、方法及びコンピューティングデバイス
RU2412468C2 (ru) Системы и способы многоуровневой обработки перехватов в виртуальной машинной среде
US5978584A (en) Debugging apparatus for debugging a program by changing hardware environments without changing program operation state
JP5443172B2 (ja) 処理環境での命令実行の制御
JP2006018814A (ja) 仮想マシン環境におけるエミュレートされたデバイスの開発のためのシステムおよび方法
JPH10111818A (ja) バーストプロファイリング方法およびシステム
WO2022227410A1 (zh) 一种嵌入式终端远程软件调试方法
CA2307349A1 (en) Ranked break points and method for debugging a computer program
JPH05216689A (ja) コンピュータ装置およびコンピュータ装置を動作させる方法
KR920003044B1 (ko) 가상 머신 시스템용의 게스트 머신 실행 제어 시스템
US7188062B1 (en) Configuration management for an emulator operating system
US7882336B2 (en) Employing a buffer to facilitate instruction execution
US6179488B1 (en) Software execution systems
JPS6273333A (ja) エミュレーション制御装置
JPS60142428A (ja) エミユレ−シヨン方式
Goldberg et al. The PRIM System: An alternative architecture for emulator development and use
Frank Job control in the MU5 operating system
Sinkkonen Asymmetric multiprocessing of Linux and hard real-time systems
JPS62120542A (ja) 情報処理装置
EP0327197B1 (en) I/O simulation
JPH0283749A (ja) マイクロプロセッサの内部割込み制御方式
Hughes An applied approach to teaching the fundamentals of operating systems
TW201917600A (zh) 標準程式語言腳本架構結合虛擬機的控制方法及程式產品