JPS5938992A - 仮想計算機システム - Google Patents

仮想計算機システム

Info

Publication number
JPS5938992A
JPS5938992A JP57148421A JP14842182A JPS5938992A JP S5938992 A JPS5938992 A JP S5938992A JP 57148421 A JP57148421 A JP 57148421A JP 14842182 A JP14842182 A JP 14842182A JP S5938992 A JPS5938992 A JP S5938992A
Authority
JP
Japan
Prior art keywords
child
parent
handshake
instruction
function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP57148421A
Other languages
English (en)
Other versions
JPH0518140B2 (ja
Inventor
Naoya Ono
直哉 大野
Shinji Nanba
難波 信治
Hideo Kubo
久保 秀士
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
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP57148421A priority Critical patent/JPS5938992A/ja
Publication of JPS5938992A publication Critical patent/JPS5938992A/ja
Publication of JPH0518140B2 publication Critical patent/JPH0518140B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明は、仮想計算機システムに関するものであり、更
に詳しくいえば、親O8のもとで動作する子O8から、
親O8で提供している機能を実行できるようにする、い
わゆるO8のハンドシェイク機能の実現方式に関するも
のである。
仮想計算機は、計算機システムを使っている複数のユー
ザがあたかも自分が計算機システムを専有しているよう
な環境を1台のハードウェアを使って実現するもので、
これを使うことにより、仮想計算機の制御プログラム(
以下これを親O8と呼ぶ)のもとに、複数個のオペレー
ティングシステム(以下、これを子O8と呼ぶ)を走ら
せることができる。
元来、仮想計算機システムは、既存のO8に何らの変更
も加えることなく、親OSのもとで、子O8として動作
させ得るようにしたものであシ、これを実現するために
、たとえば次のような方法がとられている。即ち、子O
8で実行される命令のうち、実マシン上の資源に対する
直接の動作を指令するものが、特権命令のうちのあるも
のに限られることを利用して、子OSで特権命令が発行
されると親O8に対して割込みが発生するようにしてお
き、これによシ親O8が発行された特権命令を解析し、
その動作を、親08上で擬似的に実行(シミュレート)
している。
一方、子O8は、本来、実マシン上で実行されるもので
あるので、一般には実資源を有効に、かつ使い易い形で
利用できるような種々のO8機能が組込まれている。し
かしながら、子O8として実行される場合には、子OS
は、実資源を直接制御できないため、これらの機能は実
質的には意味をもだない。一方、親O8も実マシンを取
扱うものであるので、同様な機能が組込まれており、と
のため、子O8において、実資源に関する操作要求があ
った場合には、まず子O8に卦ける管理をうけ、次に親
O8Kより同様な管理をうけ二重の管理が行われること
Kなり、実資源の有効利用、処理時間の関点からも無駄
が大きい。
親O8と子OSが類似のOSの場合には、子OSでの機
能をバイパスし、直接、親OSの機能を利用することに
より、管理のオーバヘッド特開を少くできるとともに、
@OSによる全システム資源の有効な管理が実現できる
ことが多い。
以下、子OSの機能をバイパス1/、直接親O8の機能
を利用するととを、OSハンドシ1イクと呼ぶ。
しかしながら、従来の仮想計算機は、元のO8に何らの
変更も加えずに、仮想計算機を実現しよ    ゛うと
した場合には、特定の機械語命令の発行を検出し、機械
語命令レベルでシミュレートするという形しか取り得な
いために、子O8の中で行われるg宝のOS機能(通常
マクロ命令として定線される)を機能レベルで検出する
ことができないため、前述のようなマクロレベルでの親
O8の機能の利用が困gfであった。
従って、本発明の目的は、OSハンドシグイクを容易に
行うことのできる仮想計算機システムを提供することに
あり、子O8として実行する場合においても、そうでな
い場合においても同一のプログラムを用いて、子O8と
して使用する場合には、OSハンドシェイク機能を実現
できる仮想計1(機システムを提供することにある。
本発明をよ、子OS上で発行された場合には、親O8で
のハンドシェイクによる処理を要求し、親O8J:、で
実行された場合には、何らの動作も起さない特別の機械
語命令、および、子O8で発行された前記特別の機械語
命令の子OS上での主記憶アドレスど、mO8で実行す
べき処理との対応を定砂するハンドシェイク制御テーブ
ル、子O8で発行された前記特別の機械語命令によシ起
動され、前記ハンドシエ・fり制御テーブルで指定され
た機能を親O8上で実行するだめ、必要な前処理を行っ
たうえで親O8の処理ルーチンを呼び、必要な後処理を
行った後、子OSを指定された処理が終了した状態に設
定し、子osの再開を要求するだめのハンドシェイク機
構を設けたものであり、子O8として実行される場合に
それを親OSの機能によって代行できるような機能に対
してはあらかじめ、O8上ゐこの機能を実行するルーチ
ンの直前にこの特別な機械語命令を埋め込んでおくこと
によシ、このO8が子O8として動く場合には、特定の
機能は子OSでの処理を行なわず、親OSで実行し、子
O8として動いていない場合には、従来通り、そのOS
の機能を実行できるようにしたものである。即ち、子O
8として実行されるか否かにかかわらず同一のプログラ
ムを使用することが可能である。
次に第1図によυ本発明の一実施例の構成を説明する。
第1図は本発明の一実施例を示すブロック図である。
本実施例においてはプロセッサが親O8とを実行してい
るか、子O8を実行しているかを示すためにモードフリ
ップフロップ5(以下MF F ト略す)が設けられる
。プロセッサ上のO8を切換えるだめのO8切換え機構
4は、子O8の実行に際しては、MFFを子OSモード
にセントする。
(MFli”=1.)親O8への切換えに際しては、親
OSモードにセットする(MFF=0)。なお、このM
FFは、プロセッサが仮想計算機環境で動作してい外い
場合も、親OSモード(MFF=O)にセットされる。
本実施例では、OSハンドシェイクをサポートするだめ
に特別な機械語命令(以下、これを)ISS命令と呼ぶ
)が設けられる。
また、本実施例においては親O8の管理する主記憶上に
は、nss命令に対応してサポートすべき親O8の機能
を識別するために、各千08(i)対応に、ハンドシェ
イク制御テーブル3(■5aTi)が設けられる。
)TSOTは、第1図に示すようにキイ部とデータ部か
らなる複数個のエントリをもち、キイ部には子O8での
機能を実行するためのルーチンの開始番mASj が仮
想アドレスでセットされており、データ部には、子O8
での機能に対応する親O8機能の親O8上での開始番地
AMj1子O8上での戻り番地孔Mj および、補助1
〃報として、機能FMjを起動するだめの前処理、後処
理を行うための機能対応処理ルーチンの開始番地Asp
j をもつ。
本実施例においてはハンドシェイク機構2は、ファーム
ウェア部および親O8上のソフト917部から構成され
る。
ファームウェア部は、)ISS命令の実行が命令解読機
構2で解読されたとき起動され、ハンドシェイク制御テ
ーブル3をサーチし、親O8の対応する処理ルーチンを
実行するだめの前処理/後処理を行うだめのハンドシェ
イクサポートルーチンに割込みの形で制御を引渡すだめ
の処理、および親O8の対応する処理ルーチンでの実行
が終了し、サポートルーチンでの後処理が終了した時点
で制御を子O8に戻すだめの処理を行う。
ソフトウェア部は、親O8K発生した割込を解析し、子
O8からのハンドシェイク要求であることを識別して、
ハンドシエイクサボートルーチ〉′に制御を引渡すだめ
の割込解析ルーチン、割込解析部から制御を引渡され、
前記ハンドシェイク制御テーブルをサーチし子O8から
要求された機能を識別し、対応する親O8の処理ルーチ
ンに対1−て、必要な前処理を行ったうえで制御を引渡
し、処理終了後に、必要な後処理を行った後、ファーム
ウェア部に制御を引渡すための、インタフェイスルーチ
ンからなる。
なお、本実施例((おいては、指定された子O8を動作
可能な状態とするだめに、第2の特別な機械語命令が設
けられる。
この機械語命令も、命令解読機構1によりその発行が解
読されると命令解読機構1は、ハンドシェイク機構を再
起動させる。
O8切換え機構4は、ハンドシェイク機構2の起動によ
り、親O8と子O8間の制御の切換えを行うだめの機構
で、実行可能なO8をサーチし、これに対して制御を引
渡すだめの処理を行う。このとき、親O8への切換えに
際してはモードフリップフロップ5を0にリセットし、
子O8への切換えに際してはモードフリップフロップ5
に1をセットする。
次に、第2図により、本実施例における動作を説明する
。プログラムの、実行中に、I(88命令があられれる
と、次の処理が行われる。
即ち、プロセッサが親OSモードにあるとき(M l’
 F = Oのとき)に、この命令が実行された場合に
は、単に命令カウンタの値を進めるだけで他には何の処
理も行わない。即ち、無効命令と等価の機能をもつ。
プロセッサが子OSモードにあるとき(M 、F F=
1のとき)この命令が実行され、H88命令であること
が検出されると、シミーレーション機構のファームウェ
ア部は、)ISS命令の一部として次の処理を行う。
即ち、実行中の子O8からのハフ1゛シエイク要求が発
生したことを示す情報を子O8の識別子、T=TSS命
令の主記憶上のアドレスとともに、割込情報としてセッ
トするとともに、子O8を実行不可能な状態としたうえ
で、O8切換え機構を起動し、親O8への切換えを要求
する。
O8切換え機構4により、親OSに制御がわたると、子
O8でのH8S命令により、割込みが発生しているので
、割込解析ルーチンが起動され、割込原因が解析され、
インタフェイスルーチンが起動される。
この子O8からのH8S命令の実行により発生した親O
8への割込みによシ起動されたインクフェイスルーチン
は、割込みを発生したH8S命令の子081上の仮想ア
ドレスASj を得て、これをキイとして、H8S命令
を発生した子O8i により定まるハンドシェイク制御
テーブル(H8OTi)をサーチし、キイ部に、ASj
 と等しい値をもつエントリを見出す。
そして、この機能に対応する親O8上でのルーチンの開
始番地AMj1および、この親O8でのルーチンを起動
するだめの機能対応処理ルーチンの開始番地ASPjを
得て、この得られた第2のアドレスASP jで始まる
機能対応処理ルーチンを起動する。
この機能対応処理ルーチンでは、子O8の機能を実行す
る際に、与えられたパラメータ類を読み出し、これを用
いて親OSの対応機能で行う場合に必要なパラメータ類
を作成したうえで親O8の対応する機能の処理ルーチン
(開始番地AMj)を起動する。親O8での機能の実行
が終了し、この機能対応処理ルーチンに制御が戻った時
点で、この実行結果を用いて、この機能があたかも子O
8の機能で実行されたように子O8の状態を設定するた
めに、出力パラメータ類を整え、命令カウンタをハンド
シェイク制御テーブルで得られた戻り番地RMj、即ち
、子OS ICおける機能の完了した箇所にセットし、
子O8への制御の引渡j〜のだめの第2の機械語命令を
発行する。この命令の実行により、子O8は、実行可能
な状態となり、O8切換え機構4による対応する子O8
への制御の引渡しが可能な状態となる。
以上の動作によシ、子O8での機能は、バイパスされて
替りに等価の機能が親O8で実行されてしかも子O8か
らみれば子O8で実行されたと等価の効果をもたらすと
とになる。
I(SOTiで、ASjに等しい値をキイとしてもつエ
ントリが見出されない場合、即ち、機能Fsjが親O8
で、ハンドシェイク機能としてサポートされでいない場
合には、直ちに、子08を実行可能な状態(/ζ戻し、
処理を終了する。
とれにより、子O8では、H8S命令の次の命令から処
理が実行されることになる。即ち、osハンドシェイク
機能は用いずに、子osの処理ルーチンにより、機能F
Sjが実行されることになる。
プロセッサが親OSモードにあるとき即ち、親O8上で
動いているプログラムが、H8S命令を発生した場合に
はこの命令は、無効命令として取扱われるので、この命
令に引続く処理ルーチンが実行されることにたる。これ
を第2図に示す。
以上、本発明の一実施例について説明を行ったが、本発
明の主旨は子osモードで実行された場合には無効命令
として、S、OSモードで実行された場合には、シミニ
レ−91フ機構を起動させる特別の機械語命令(n s
 s命令)を設け、osハンドシェイクを行う可能性の
ある機能についてはあらかじめ、その実行ルーチンの直
前KH8S命令を埋め込んでおき、子osモードで動く
場合には、親O8の機能を使用できるようにしたもので
、かつ同一のO8を親osとしても、子osとしても使
用することを可能にすることにある。
本実施例においては、シミュレータ1フ機構を起動させ
る手段として、割込みを用いており、子OSモードにお
けるH8S命令の実行が割込みを発生し、この割込みに
より起動されるインタフェイスルーチンおよびハンドシ
、イク;甲目卸テーブルがシミーレーション様構を構成
し、これらのサポートのもとて1iosの対応機能が実
行され、o8ハンドシェイクを可能としているが、上述
の本発明の主旨に背かないかぎり、シミーレーション機
構の具体的な実現方法については、いくつかの変形が可
能であろう。
即ち、本実施例においては、インクフェイスルーチンは
gOS上のプログラムルーチンを想定しており、ハンド
シェイク制御テーブルも主記憶上のテーブルとしており
、ハンドシェイクサポートルーチンに対しては、割込み
という形で制御がわたるものとしているが必ずしもこの
ような構成にする必要はなく、■rss命令の実行によ
り、割込み機構を介することなく、?4.osのハンド
シェイクサポートルーチンに制御を引渡すように、H8
S命令を実現するととも可能である。また、ハンドシェ
イクサポートルーチン自体をH8S命令の一部としてフ
ァームウェア化することも可能であろう。そしてこの場
合には、ハンドシェイク制御テーブルを主記憶上ではな
く、専用のメモリにおくことも可能であろう。
また、本実施例では、ハンドシェイク制御テーブルとし
て、実施例で説明し5だような形式のテーブルを用意し
たがこれも、ハンドシェイクサポートルーチンの実現方
法に応じていくつかの形式をとシうることは明らかであ
や、たとえば、本実施例においてはこのテーブルのデー
タ部として、ハンドシェイクすべき機能の親O8上での
開始番地、子O8上でのもどり番地、機能対応処理ルー
チンの開始番地をもっているが、前二項については必ず
しもとのテーブルにもつ必要はなく、機能対応処理ルー
チン内に設定されていてもよい。
【図面の簡単な説明】
第1図は、本発明の実施例における第1#成を示す図で
あり、第2図は、実施例における動作のソロウチャート
を示す。 図において1は命令解読機構、2けハンドシェイク機構
、3はハンドシェイク制御テーブル、4はO8切換え機
構、MFFはモードフリップフロ鵠1図

Claims (1)

    【特許請求の範囲】
  1. 子O8の実行に際し親O8から指定された子O8に制御
    を切換え、親O8の実行に際して、子O8から親OSに
    制御を切換えるだめのO8切換え機構をもつ、仮想計算
    機システムにおいて、現在実行中のO8が親O8である
    か子O8であるかを示す実行モード保持手段と、プロセ
    ッサが、親OSモードにあるときに実行された場合には
    無効命令となり、プロセッサが子OSモードにある場合
    には親O8によるシミュレーションを要求するために、
    ハンドシェイク機構を起動するための特別の機械語命令
    および前記特別の機械語命令の子O8上での主記憶アド
    レスをキイとし前記特別の機械語命令に対応する親08
    上での処理ルーチンの開始番地に関する情報をデータと
    してもつ、ハンドシェイク制御テーブルと、前記特別の
    機械語命令(てよシ起動され、前記ハンドシェイク制御
    テーブルにより対応する親O8での処理ルーチンをサー
    チし、見出された親O8の処理ルーチンに対する子O8
    上のデータの引渡し、制御の引渡し、処理結果の子O8
    への引渡しを行うハンドシェイク機構とを備えることを
    特徴とする仮想針H,機システム。
JP57148421A 1982-08-26 1982-08-26 仮想計算機システム Granted JPS5938992A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57148421A JPS5938992A (ja) 1982-08-26 1982-08-26 仮想計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57148421A JPS5938992A (ja) 1982-08-26 1982-08-26 仮想計算機システム

Publications (2)

Publication Number Publication Date
JPS5938992A true JPS5938992A (ja) 1984-03-03
JPH0518140B2 JPH0518140B2 (ja) 1993-03-11

Family

ID=15452415

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57148421A Granted JPS5938992A (ja) 1982-08-26 1982-08-26 仮想計算機システム

Country Status (1)

Country Link
JP (1) JPS5938992A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5576447A (en) * 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5576447A (en) * 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation

Also Published As

Publication number Publication date
JPH0518140B2 (ja) 1993-03-11

Similar Documents

Publication Publication Date Title
US20060248528A1 (en) Systems and methods for hypervisor discovery and utilization
JPS62163149A (ja) マルチプロセッサ仮想計算機システム
JPH0430053B2 (ja)
US7546600B2 (en) Method of assigning virtual process identifier to process within process domain
JPS5820066B2 (ja) ハ−ドウエア バ−チヤライザ
JPS6019028B2 (ja) 情報処理装置
JPS5938992A (ja) 仮想計算機システム
DE112004000498T5 (de) Verfahren zur CPU-Simulation unter Verwendung virtueller Maschinenweiterungen
CN115437751B (zh) 虚拟机的运行方法、装置、设备及存储介质
JPH11184828A (ja) マルチプロセッサシステムのテスト方式
TW202546636A (zh) 超執行緒處於不同狀態下之運行信息收集系統及方法
CN117707931A (zh) 跨内核态和用户态的操作系统源代码调试方法及装置
JPH0552535B2 (ja)
JPS6120900B2 (ja)
JPH0447854B2 (ja)
JPH0328933A (ja) タスク制御方法
JPS5938993A (ja) 仮想計算機システム
JPH0589049A (ja) コマンド実行装置
JP3022398B2 (ja) 仮想計算機方式
JPH0638238B2 (ja) 仮想計算機システム
CN120407074A (zh) 资源隔离方法、宿主机、虚拟化系统及计算机程序产品
JPS59194251A (ja) デ−タ処理装置の診断方式
JPS60225944A (ja) 仮想計算機システム
Paul et al. A Generic Operating System Kernel
JPH07295832A (ja) 計算機シミュレータ