JPS63158632A - インタプリタシステムにおけるシステムプログラム実行方式 - Google Patents

インタプリタシステムにおけるシステムプログラム実行方式

Info

Publication number
JPS63158632A
JPS63158632A JP30718086A JP30718086A JPS63158632A JP S63158632 A JPS63158632 A JP S63158632A JP 30718086 A JP30718086 A JP 30718086A JP 30718086 A JP30718086 A JP 30718086A JP S63158632 A JPS63158632 A JP S63158632A
Authority
JP
Japan
Prior art keywords
instruction
hardware
interpreter
mode
control
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
JP30718086A
Other languages
English (en)
Inventor
Toru Miwa
徹 三輪
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP30718086A priority Critical patent/JPS63158632A/ja
Publication of JPS63158632A publication Critical patent/JPS63158632A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はインタプリタシステムにおけるシステムプログ
ラム実行方式に関し、特にコンパイラ等のCPU使用率
の高いシステムプログラムを高速に実行することができ
るシステムプログラム実行方式に関する。
〔従来の技術〕
任意の命令セットを持つハードウェア上に、異なる命令
セットをエミュレートするインタプリタを持つ従来の計
算機システムでは、コンパイラ等のシステムプログラム
はこのインタプリタの命令セットで記述され、インタプ
リタを介して実行されていた。
第9図はインタプリタの基本的処理を承す流れ図であり
、91〜93.94−1.94−i、94−n、 95
は各ステップを示し、命令−1,命令−1,命令−〇は
インタプリタの命令セットである。インタプリタは同図
に示すように、システムプログラムからインタプリタの
ある命令セットを取得すると(ステップ91)、ハード
ウェア命令へのレジスタの切換(インタプリタ側のレジ
スタの内容を実マシン上のレジスタヘマッピングする処
理等)を行ない(ステップ92)、その命令コードに対
応する処理を行なうステップに分岐する(ステップ93
)、そして分岐先の命令処理94−1.94−i、94
−nでその命令を実行した後、インタプリタ・モードへ
のレジスタの切換(実マシン上のレジスタの内容をイン
タプリタ側のレジスタにマツピングする処理等)を行な
い(ステップ95)、次のシステムプログラムの命令を
実行する。
〔発明が解決しようとする問題点〕
上述した従来の方式では、システムプログラムはインタ
プリタが有する命令セットで記述されているので、命令
セットのレベルが高いことからシステムプログラムの作
成が容易になる利点がある。
しかし、インタプリタにおいては、第9図に示す各処理
ステップは例えばハードウェア命令で3命令に該当する
ので、命令−t、−+、−nをハードウェア命令で直接
に実行した場合はハードウェア命令の3ステツプで済む
のに比べ、インタプリタを介在させて同じ命令を実行さ
せるとハードウェア命令の15ステツプを要する。この
ように、インタプリタを介在させると、システムプログ
ラムの処理時間が長くなり、システムプログラムの中で
もコンパイラのようにCPU使用率が高いプログラムで
は、インタプリタの処理時間が膨大となってコンパイラ
の処理速度が非常に遅くなるという欠点がある。
そこで本発明の目的は、インタプリタシステムにおいて
コンパイラのようにCPU使用率の高いシステムプログ
ラムをできるだけ高速に処理し得るようにすることにあ
る。
〔問題点を解決するための手段〕
本発明は上記目的を達成するために、任意の命令セット
を持つハードウェア上に、異なる命令セットをエミュレ
ートするインタプリタを持つ計算機システムにおけるシ
ステムプログラム実行方式前記インタプリタは、 前記システムプログラムから発行された命令を取得し解
析する命令取得・解析手段と、該命令取得・解析手段に
おいて、システムプログラムから発行されたハードウェ
ア命令直接実行部呼出し命令が解析されたとき、命令の
実行モードをハードウェア命令を直接に実行するハード
ウェア・モードに切換えてシステムプログラムの指定さ
れたハードウェア命令直接実行部に制御を渡す移行手段
と、 該移行手段により制御が渡された前記ハードウェア命令
直接実行部からインタプリタの命令を実行するインタプ
リタ・モードで動作するOSを利用するために該システ
ムプログラム中のOSインタフェイス部を呼出す予め定
められた命令が発行されときに制御を引き取り、命令の
実行モードをインタプリタ・モードに切換えて前記シス
テムプログラムのOSインタフェイス部に制御を渡すモ
ード復元手段と、 該モード復元手段により制御が渡された前記OSインタ
フェイス部の処理終了後に、該OSインタフェイス部か
ら発行されたハードウェア命令直接実行部復帰命令が前
記命令取得・解析手段で解析されたときに制御を引き取
り、命令の実行モードをハードウェア・モードに戻すと
共に制御を呼出し元の前記ハードウェア命令直接実行部
に戻す復帰手段とを有し、 前記ハードウェア命令直接実行部から処理終了通知を示
す予め定められた命令が発行されたことにより、前記移
行手段の処理を終了せしめ、命令の実行モードをインタ
プリタ・モードに戻すように構成される。
〔作用〕
例えばシステムプログラムがコンパイラの場合、構文解
析、意味解析、コード生成等のコンパイラの主処理部分
をハードウェア命令で記述してハードウェア命令直接実
行部としておくことにより、主処理部分の処理速度を高
めることができる。即ち、インタプリタの命令汐得・解
析手段においてシステムプログラム中のハードウェア命
令直接実行部呼出し命令が解析されると、移行手段によ
り、命令の実行モードがハードウェア・モードへの切換
えられ、指定されたハードウェア命令直接実行部に制御
が渡されるので、構文解析等の処理はインタプリタを介
することなくハードウェア命令で直接に実行されること
になる。
また、ファイル処理等の如くOSの助けを必要とする場
合、OSはインタプリタ・モードで動作するので、ハー
ドウェア命令直接実行部から直接には実行できない、こ
のときは、ハードウェア命令直接実行部からインタプリ
タ・モードで動作するO5を利用するために、インタプ
リタの命令セットで記述されたOSインタフェイス部を
呼出す予め定められた命令が発行され、モード復元手段
に制御が戻され、命令の実行モードがインタプリタ・モ
ードに切換えられてOSインタフェイス部に制御が渡さ
れる。従って、このOSインタフェイス部を介してファ
イル処理等を行なうことができる。そして、OSインタ
フェイス部の処理が終わると、OSインタフェイス部か
らハードウェア命令直接実行部復帰命令が発行されるの
で、復帰手段により命令の実行モードが再びハードウェ
ア・モードに戻され、呼出し元のハードウェア命令直接
実行部に制御が戻される。
このようにして、必要に応じてインタプリタ・モードと
ハードウェア・モードとの切換えが行なわれてシステム
プログラムの処理が進行していく。
〔実施例〕
次に本発明の実施例について図面を参照して説明する。
第1図は本発明の実施例の構成図であり、■は管理プロ
グラムとも呼ばれるO3(オペレーティング・システム
)、2は各種のファイル、3はインタプリタ、8はコン
パイラである。
インタプリタ3には、命令取得・解析手段4゜移行手段
5.復帰手段6およびモード復元手段7が含まれ、コン
パイラ8には、ハードウェア命令直接実行部起動手段1
0を付加した制御部9.ハードウェア命令直接実行部復
帰手段12を付加したOSSインタフェイス部11およ
び○Sインタフェイス起動手段14と処理終了通知手段
15とを付加したハードウェア命令直接実行部13とが
含まれている。
制御部9およびOSインタフェイス部11はインタプリ
タ3の命令セットで記述され、ハードウェア命令直接実
行部13はハードウェア命令セットで記述されている。
第2図は移行手段5の処理例の流れ図、第3図は復帰手
段6の処理例の流れ図、第4図はモード復元手段7の処
理例の流れ図、第5図はハードウェア命令直接実行部起
動手段10の処理例の流れ図、第6図はハードウェア命
令直接実行部復帰手段12の処理例の流れ図、第7図は
OSインタフェイス起動手段14の処理例の流れ図、第
8図は処理終了通知手段15の処理例の流れ図であり、
以下各図を参照して本実施例の動作を説明する。
O31から起動されたコンパイラ8においては、先ずコ
ンパイラ8に必要な環境を整えるための命令をインタプ
リタ3の命令セットで記述した制御部9の各命令がイン
タプリタ3の命令取得・解析手段4で取得、解析されて
実行される。制御部9の各命令は前述したようにインタ
プリタ3の命令セットで記述されているので、第9図に
示したようなインタプリタの処理により実行される。
制御部9の実行によってコンパイラ8に必要な環境が整
備されると、コンパイラの主処理を行なう構文解析、意
味解析およびコード生成から構成されるフェーズをハー
ドウェア命令で直接に記述したハードウェア命令直接実
行部I3を起動するハードウェア命令直接実行部起動手
段10が実行される。
ハードウェア命令直接実行部起動手段10は、第5図に
示すように、インタプリタ3の命令セット中の一つの命
令であるハードウェア命令直接実行部呼出し命令の発行
を行なうものであり(ステップ101)、この発行され
た命令はインタプリタ3の命令取得・解析手段4により
解析される。なお、ハードウェア命令直接実行部呼出し
命令には、実行すべきハードウェア命令直接実行部13
のアドレス情報を含んでいる。
命令取得・解析手段4は与えられた命令がハードウェア
命令直接実行部呼出し命令であることを識別すると、移
行手段5を呼出す。
移行手段5は呼出されると、第2図に示すようにこれか
ら実行されるハードウェア命令直接実行部13の処理が
終わった後に戻るべきアドレスを戻りアドレスとして退
避させ(ステップ51)、レジスタをハードウェア命令
のレジスタに切換え(ステップ52)、ハードウェア命
令直接実行部13に制御を渡す為に命令カウンタに指定
されたアドレスを設定する(ステップ53)。
上記命令カウンタの設定によってハードウェア命令直接
実行部13の命令の実行が開始され、移行手段5の上記
処理により命令の実行モードがハードウェア・モードに
切換えられていることから、ハードウェア命令直接実行
部13の構文解析等を実現する各命令はインタプリタ3
を介することなく直接に実行されることになる。
ハードウェア命令直接実行部13におけるコンパイラ8
の主処理実行中に、コンパイラ8で使用する各種ファイ
ル2にアクセスする必要が生じた場合、ハードウェア命
令直接実行部13におけるOSインタフェイス起動手段
14が実行され、第7図に示すように、インタプリタ・
モードのサブルーチン(即ちOSインタフェイス部11
)の呼出し命令の発行といった予め定められた特殊な命
令が要求内容を伴って発行される。ここで、この予め定
められた命令が発行されたときハードウェアに割込みが
生じ、このハードウェアの割込みによって制御がインタ
プリタ3のモード復元手段7に移されるように構成され
ている。
モード復元手段7は制御を引き取ると、第4図に示すよ
うに、OSインタフェイス起動手段14の戻りアドレス
をセーブしくステップ71)、インタプリタ側のレジス
タに切換え(ステップ72) 、OSインタフェイス部
11に制御を渡す為に命令カウンタにOSインタフェイ
ス部11のアドレスを設定する(ステップ73)。
これにより、インタプリタ・モードでOSインタフェイ
ス部11が実行される。OSインタフェイス部11はイ
ンタプリタ3の命令セットで記述されており、ハードウ
ェア命令直接実行部13から要求されたファイルの処理
をインタプリタ3およびインタプリタ・モードで動作す
る○S1の介在の下に処理し、処理が終了すると、呼出
し元に戻る為にハードウェア命令直接実行部復帰手段1
2を起動する。
ハードウェア命令直接実行部復帰手段12は起動される
と、第6図に示すように、インタプリタ3の命令セット
の一つの命令であるハードウェア命令直接実行部復帰命
令を発行する(ステップ121)。
この命令は、インタプリタ3の命令取得・解析手段4に
より解析され、命令がハードウェア命令直接実行部復帰
命令であることが解析されると、命令取得・解析手段4
により復帰手段6が呼出される。
復帰手段6は呼出されると、第3図に示すように、ハー
ドウェア命令のレジスタに切換え(ステップ61)、モ
ード復元手段7で退避されていたOSインタフェイス起
動手段14の戻りアドレスの回復を行ないくステップ6
2)、その戻りアドレスを命令カウンタに設定すること
により、命令の実行モードをハードウェア・モードにし
て制御をハードウェア命令直接実行部13に戻す(ステ
ップ63)。
ハードウェア命令直接実行部13は実行を再開すると、
必要に応じて前述したようにOSインタフェイス部11
を起動しながらコンパイラの主処理を行ない、全ての処
理が終了すると、呼出し元の制御部9に制御を戻す為に
、処理終了通知手段15を起動する。
処理終了通知手段15は起動されると、第8図に示すよ
うに移行手段5への復帰を示す予め定められた命令の発
行を行なう(ステップ151)、ここで、この予め定め
られた命令が発行されたとき、ハードウェアに割込みが
生じ、制御がハードウェア命令直接実行部13の起動を
行なった移行手段5に移すように構成されており、移行
手段5は制御を引き取ることにより動作を終了し、これ
により命令実行モードがインタプリタ・モードに戻るこ
とになる。
インタプリタ・モードに戻ると、呼出し元の制御部9に
制御が戻り、制御部9は上述したような動作をコンパイ
ラ8の全過程が終了するまで繰返す。
以上の実施例において、ハードウェア直接命令実行部を
有するシステムプログラムとしてコンパイラ8を示した
が、他の種類のシステムプログラムに対しても適用でき
ることは勿論のことである。
また、全てがインタプリタの命令セットで記述されたシ
ステムプログラムの場合、ハードウェア命令直接実行部
起動手段10のような手段を含めないことにより、従来
と同様にインタプリタ3の命令取得・解析手段4による
命令の取得と解析により、第9図に示したような処理で
実行が行なわれる。
〔発明の効果〕
以上説明したように、本発明は、インタプリタを有する
計算機システムにおいて、インタプリタ中の命令取得・
解析手段により得られた命令により命令実行モードをイ
ンタプリタ・モードからハードウェア・モードに変更す
る移行手段と復帰手段、およびハードウェア・モードか
らインタプリタ・モードに命令実行モードを変更するモ
ード復元手段をインタプリタに設けたので、システムプ
ログラム例えばコンパイラの主処理をハードウェア命令
化しておくことによって、コンパイラの実効ステップの
殆どがインタプリタを介さずハードウェア命令で直接に
実効することができるようになる。この結果、コンパイ
ラ等のシステムプログラム実行中のインタプリタの処理
時間の多くを排除でき、システムプログラムの処理速度
を飛躍的に向上させることができる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例の構成図、 第2図は移行手段5の処理例の流れ図、第3図は復帰手
段6の処理例の流れ図、第4図はモード復元手段7の処
理例の流れ図、第5図はハードウェア命令直接実行部起
動手段10の処理例の流れ図、 第6図はハードウェア命令直接実行部復帰手段12の処
理例の流れ図、 第7図はOSインタフェイス起動手段14の処理例の流
れ図、 第8図は処理終了通知手段15の処理例の流れ図および
、 第9図はインタプリタの基本的処理を示す流れ図である
。 図において、1・・・0812・・・各種のファイル、
3・・・インタプリタ、4・・・命令取得・解析手段、
5・・・移行手段、6・・・復帰手段、7・・・モード
復元手段、8・・・コンパイラ、9・・・制御部、10
・・・ハードウェア命令直接実行部起動手段、11・・
・OSインタフェイス部、12・・・ハードウェア命令
直接実行部復帰手段、13・・・ハードウェア命令直接
実行部、14・・・OSインタフェイス起動手段、15
・・・処理終了通知手段。

Claims (1)

  1. 【特許請求の範囲】 任意の命令セットを持つハードウェア上に、異なる命令
    セットをエミュレートするインタプリタを持つ計算機シ
    ステムにおけるシステムプログラム実行方式において、 前記インタプリタは、 前記システムプログラムから発行された命令を取得し解
    析する命令取得・解析手段と、 該命令取得・解析手段において、システムプログラムか
    ら発行されたハードウェア命令直接実行部呼出し命令が
    解析されたとき、命令の実行モードをハードウェア命令
    を直接に実行するハードウェア・モードに切換えてシス
    テムプログラムの指定されたハードウェア命令直接実行
    部に制御を渡す移行手段と、 該移行手段により制御が渡された前記ハードウェア命令
    直接実行部からインタプリタの命令を実行するインタプ
    リタ・モードで動作するOSを利用するために該システ
    ムプログラム中のOSインタフェイス部を呼出す予め定
    められた命令が発行されときに制御を引き取り、命令の
    実行モードをインタプリタ・モードに切換えて前記シス
    テムプログラムのOSインタフェイス部に制御を渡すモ
    ード復元手段と、 該モード復元手段により制御が渡された前記OSインタ
    フェイス部の処理終了後に、該OSインタフェイス部か
    ら発行されたハードウェア命令直接実行部復帰命令が前
    記命令取得・解析手段で解析されたときに制御を引き取
    り、命令の実行モードをハードウェア・モードに戻すと
    共に制御を呼出し元の前記ハードウェア命令直接実行部
    に戻す復帰手段とを有し、 前記ハードウェア命令直接実行部から処理終了通知を示
    す予め定められた命令が発行されたことにより、前記移
    行手段の処理を終了せしめ、命令の実行モードをインタ
    プリタ・モードに戻すようにしたことを特徴とするイン
    タプリタシステムにおけるシステムプログラム実行方式
JP30718086A 1986-12-23 1986-12-23 インタプリタシステムにおけるシステムプログラム実行方式 Pending JPS63158632A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30718086A JPS63158632A (ja) 1986-12-23 1986-12-23 インタプリタシステムにおけるシステムプログラム実行方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30718086A JPS63158632A (ja) 1986-12-23 1986-12-23 インタプリタシステムにおけるシステムプログラム実行方式

Publications (1)

Publication Number Publication Date
JPS63158632A true JPS63158632A (ja) 1988-07-01

Family

ID=17965997

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30718086A Pending JPS63158632A (ja) 1986-12-23 1986-12-23 インタプリタシステムにおけるシステムプログラム実行方式

Country Status (1)

Country Link
JP (1) JPS63158632A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5890248A (ja) * 1981-11-25 1983-05-28 Hitachi Ltd プログラム間制御移動方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5890248A (ja) * 1981-11-25 1983-05-28 Hitachi Ltd プログラム間制御移動方式

Similar Documents

Publication Publication Date Title
EP1467282B1 (en) Operating systems
EP2296089A2 (en) Operating systems
JPS6017539A (ja) エミユレ−シヨン方式
JPH05216692A (ja) プログラム実行を管理する方法およびシステム
WO2006069484A1 (en) Methods and apparatuses to maintain multiple execution contexts
JPH05216689A (ja) コンピュータ装置およびコンピュータ装置を動作させる方法
US7552434B2 (en) Method of performing kernel task upon initial execution of process at user level
JPH1078873A (ja) エミュレーション・システムで非同期信号を処理する方法
JPS63158632A (ja) インタプリタシステムにおけるシステムプログラム実行方式
JPH01273136A (ja) オペレーティングシステムのファームウェア化方式
JPS6273333A (ja) エミュレーション制御装置
JPH0328933A (ja) タスク制御方法
JPS62121549A (ja) Osシミユレ−タの高速化方式
Machine et al. Checkpoint & Migration of UNIX Processes in the Condor Distributed Processing System
JP2581327B2 (ja) 仮想計算機の入出力割込み処理方式
JPH03262049A (ja) 割り込みによるデバイスドライバデバッギングシステム
JPH01185733A (ja) 入出力エミュレーション方式
JPH0447854B2 (ja)
JPH04266126A (ja) サブルーチンコール制御方式
JPH03218532A (ja) 任意起動プログラム管理方式
Electrons Realtime in embedded Linux systems
JPS60142428A (ja) エミユレ−シヨン方式
JPH02100730A (ja) 解釈実行型プログラムデバッグ方式
JPH03271839A (ja) プログラム動作解析方法
JPS63259736A (ja) デバツグ用セグメント分割方式