JPH0827745B2 - システムプログラムシミュレーション方式 - Google Patents

システムプログラムシミュレーション方式

Info

Publication number
JPH0827745B2
JPH0827745B2 JP5002267A JP226793A JPH0827745B2 JP H0827745 B2 JPH0827745 B2 JP H0827745B2 JP 5002267 A JP5002267 A JP 5002267A JP 226793 A JP226793 A JP 226793A JP H0827745 B2 JPH0827745 B2 JP H0827745B2
Authority
JP
Japan
Prior art keywords
processor
simulator
pseudo
peripheral device
input
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.)
Expired - Fee Related
Application number
JP5002267A
Other languages
English (en)
Other versions
JPH06208480A (ja
Inventor
久幸 青木
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 JP5002267A priority Critical patent/JPH0827745B2/ja
Publication of JPH06208480A publication Critical patent/JPH06208480A/ja
Publication of JPH0827745B2 publication Critical patent/JPH0827745B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はシミュレーション方式に
関し、特に大規模な計算機システムにおけるシステムプ
ログラムのシミュレーション方式に関する。
【0002】
【従来の技術】従来、オペレーティングシステムなどの
大規模システムプログラムの動作検証は、そのプログラ
ムを乗せる計算機システム(ターゲット計算機)上で実
施されることが一般的であった。しかし、この方式は、
大型計算機のようなシステムプログラムの場合では、検
査のために高価な計算機システムを長期間占有しなけれ
ばならないため、開発および保守に莫大なコストがかか
ること、さらに全く新しい計算機システム用のシステム
プログラムの場合では、ハードウェア完了後でなければ
検査を実施できないため、ハードウェア完成からシステ
ムプログラム完成までのタイムラグが発生するという欠
点があった。
【0003】そこで、これらの問題点を解決するために
開発された方法として、特開昭62−14240の明細
書に詳述されているように、ターゲットとなる計算機シ
ステム(ターゲットシステムと略記))とは別の計算機
システム(シミュレータと略記する)上で、ターゲット
システムのプロセッサの動作をマシン命令レベルでシミ
ュレーションする方式がある。この方式では、ターゲッ
トシステムのプロセッサ内部のレジスタは、シミュレー
タの主記憶の一部を割り当て、ターゲットシステムのレ
ジスタアクセスはシミュレータ内部の該当主記憶へのア
クセスに置き換える。同様に、ターゲットシステムの主
記憶は、シミュレータ内部の該当主記憶へのアクセスに
置き換える。シミュレータは、ターゲットシステムの主
記憶に該当する領域からマシン命令を読み出し、それを
ターゲットシステムの命令として解釈し、これに対応し
た動作をすることを繰り返す。さらに、この方式をマル
チプロセッサシステムのシミュレーションが可能なよう
に拡張したものが、特開昭63−226740,特開平
3−150641などに詳述されている。
【0004】上述の方式を用いれば、一応ターゲットシ
ステムとは全く違うシステム上で、ターゲットシステム
用のシステムプログラムの動作検証が可能となる。しか
し、この方式は、プロセッサと主記憶系のシミュレーシ
ョンしか実施できず、周辺装置を使ったプログラムの試
し実行は不可能である。そのため、例えば仮想記憶シス
テムのように、一旦主記憶の命令を周辺装置の一種であ
る二次記憶に書き出したり、また二次記憶の内容を主記
憶に読み込んで実行するようなプログラムの検証はでき
ない。また、TSSシステムに代表されるように、端末
からのコマンド入力を受け付けるシステムプログラムの
検証も不可能である。即ち、この方式では、周辺装置の
制御が最も重要な機能を占るオペレーティングシステム
を始めとする大規模なシステムプログラムの検証は不可
能である。
【0005】一方、周辺装置のシミュレーション方式
が、特開昭63−3348,特開平1−159743,
特開平3−67340に詳述されている。しかし、これ
らの方式はいずれも周辺装置のシミュレーションに特化
しており、プロセッサや主記憶などの計算機本体の機能
はターゲットシステムと同等のシステムを用いることを
前提としているため、シミュレータ自信がターゲットシ
ステムと同程度の価格である場合が多く、開発や保守コ
ストの削減はあまり望めない。さらに、周辺装置のみを
シミュレーションするという上述の方式は、現存する計
算機システムに新しい周辺装置を追加するような場合の
開発期間短縮のためのシステムプログラムの動作検証に
は適しているが、プロセッサや主記憶系、あるいはこれ
ら計算機本体と周辺装置のインタフェースなどが新しく
なるような場合には全く使えないことを意味する。
【0006】次に、現在の計算機システムの入出力方式
について簡単に説明する。現在の計算機システムは図7
に示すような構成を持つものが一般的である。プロセッ
サPが周辺装置Dにアクセスする場合は、制御装置Cに
入出力コマンドを発行することによって実行している。
この制御装置にはDMAコントローラのような簡単なも
のから、汎用計算機で使用されている入出力専用プロセ
ッサまで種々のものがある。いずれの場合も、制御装置
が入出力を実行している間に、プロセッサは別の処理を
実行しシステム全体のスループットが向上するように設
計されている。一般的に制御装置の機能には2種類があ
り、一つはプロセッサから要求された入出力を実行し、
その完了をプロセッサに通知することである。他の一つ
は、周辺装置で発生した事象をプロセッサに通知するこ
とである。この事象には、オペレータのキー押下など外
界からの情報入力を意味するものと、周辺装置の状態変
化などがある。いずれの動作においても、周辺装置から
プロセッサへの通知はいわゆる割り込みとして実現さ
れ、入出力データはプロセッサからも制御装置からもア
クセス可能な主記憶Mを介して受け渡しが行われる。入
出力コマンドも長くなる場合は、この主記憶経由でプロ
セッサから制御装置に渡される。
【0007】制御装置が扱う周辺装置には、磁気ディス
ク装置や磁気テープ装置など記憶装置として使用するも
のや、コンソールや端末などオペレータとの情報交換に
使用するものなど様々である。いずれの周辺装置も上記
制御装置の2種類の基本動作の範囲で動作しており、周
辺装置による相違は、入出力のコマンドの種類や授受す
る情報の意味や量が異る程度である。
【0008】
【発明が解決しようとする課題】上述した従来のシミュ
レーション方式は、いずれもシステムプログラムの一部
分しかシミュレーションすることができず、オペレーテ
ィングシステムのようなシステム全体を使用するような
ソフトウェアの試し実行ができないという欠点があっ
た。
【0009】本発明の目的は、オペレーティングシステ
ムのようなシステム全体を使用するようなソフトウェア
の試し実行を、経済的にかつ短期間に実効できるシミュ
レーション方式を提供することにある。
【0010】
【0011】第1の発明は、プロセッサと周辺装置を制
御する周辺制御装置が並列に動作する計算機システムに
おけるシステムプログラムシミュレーション方式におい
て、シミュレーションの対象であるターゲットシステム
の主記憶域上のシステムプログラムと同一のシステムプ
ログラムを備えた疑似主記憶手段と、前記ターゲットシ
ステムの前記システムプログラムの動作を前記疑似主記
憶域の前記システムプログラムを実行することにより入
出力要求および割り込み通知を受けた場合の割り込み処
理を含めて模擬するプロセッサシミュレータと、前記タ
ーゲットシステムの周辺装置動作を予め定められた範囲
で模擬する疑似周辺装置と、前記プロセッサシミュレー
タからの前記入出力要求を前記疑似周辺装置への入出力
命令に変換して出力し前記疑似周辺装置の入出力動作の
完了通知および前記疑似周辺装置からのアテンション情
報を前記プロセッサシミュレータへの割り込みとして前
記割り込み通知を行う制御装置シミュレータとから成る
ミュレーション手段を備えたことを特徴とする。
【0012】
【作用】図1は本発明の一実施例を示す構成図である。
図1において、1はプロセッサシミュレータ、2は制御
装置シミュレータ、3は疑似周辺装置、4は疑似主記憶
である。1〜3はいずれも本図では単数であるが、複数
構成であってもかまわない。
【0013】次に、各構成要素の作用について説明す
る。プロセッサシミュレータは、ターゲットシステムの
プロセッサの動作をハードウェア命令レベルでシミュレ
ーションする。疑似主記憶はターゲットシステムの主記
憶と同機能を有するシミュレータの主記憶の一部を使用
し、プログラムやデータは、ターゲットシステムにおい
てそれらが主記憶上に置かれる場合と同様に疑似主記憶
に配置される。レジスタと主記憶のみで実行できる通常
命令やアドレス変換処理は、このプロセッサシミュレー
タと疑似主記憶があれば可能である。
【0014】しかし、プロセッサによる処理と入出力動
作との並列実行は、上述したプロセッサシミュレータと
疑似主記憶だけでは模擬できない。そこで、図1に示す
ような制御装置シミュレータをプロセッサシミュレータ
とは別に設ける。
【0015】制御装置シミュレータは、ターゲットシス
テムの入出力制御装置の動作をプロセッサからの入出力
コマンドのレベルでシミュレーションする。すなわち、
制御装置シミュレータは、プロセッサシミュレータから
渡される入出力コマンドを解読し、該当する疑似周辺装
置への入出力命令に変換する。これによって、ターゲッ
トシステムの入出力動作がシミュレーション可能にな
る。
【0016】ターゲットシステムにおけるプロセッサか
ら制御装置への通知は、プロセス間通信などを使用し
て、プロセッサシミュレータから制御装置シミュレータ
への通知として実現できる。逆方向の通知も同じ方法で
実現する。ターゲットシステムにおける入出力完了通知
に伴なうプロセッサへの割り込み動作は、プロセッサシ
ミュレータが定期的に制御装置シミュレータからの入出
力完了通知を確認し、通知があった場合は割り込み処理
を模擬することでシミュレーション可能になる。また、
疑似主記憶をプロセッサシミュレータと制御装置シミュ
レータとの共有メモリとして使用することで、ターゲッ
トシステムのプロセッサと制御装置との間の主記憶を介
したデータや入出力コマンドの受渡しのシミュレーショ
ンが可能になる。
【0017】疑似周辺装置は、ターゲットシステムの周
辺装置の有する機能と同様な機能を有する周辺装置で代
用したものである。この疑似周辺装置とターゲットシス
テムの周辺装置は本質的に同じ機能を有する必要があ
り、アクセス手順の相違は制御装置シミュレータで吸収
する。例えば、ターゲットシステムのディスク装置をシ
ミュレーションしたい場合は、記憶装置を備えランダム
アクセスが可能な装置を疑似周辺装置とすればよい。タ
ーゲットシステムのディスク装置とシミュレータのディ
スク装置との記憶容量などが異なる場合は、ターゲット
システムのディスク装置1台にシミュレータのディスク
装置複数台を割り当て、領域のディスパッチングを装置
シミュレータが行えば解決できる。また、ターゲットシ
ステムのコンソールをシミュレートしたい場合は、オペ
レータと交信する機能を有する周辺装置を疑似周辺装置
とすればよい。例えば、シミュレータの端末やXwin
dowなどがこの条件を満たす。ターゲットシステムの
コンソールとシミュレータの端末の制御手順が異るよう
な場合は、制御装置シミュレータが制御手順の変換を行
えば解決できる。
【0018】
【実施例】次に、本発明について図面を参照して説明す
る。
【0019】図1は本発明の一実施例を示すブロック図
である。
【0020】図1に示すように、本発明のシステムプロ
グラムシミュレーション方式は、ターゲットシステムの
プロセッサの動作を模擬するプロセッサシミュレータ1
と、ターゲットシステムの周辺装置動作を模擬する疑似
周辺装置3と、プロセッサシミュレータ1からの入出力
要求を疑似周辺装置3への入出力命令に変換し、入出力
動作の完了通知や疑似周辺装置3からのアテンションを
プロセッサシフレータ1に割り込みとして通知する制御
装置シミュレータ2と、プロセッサシミュレータ1と制
御装置シミュレータ2とからアクセス可能なターゲット
システムの主記憶動作を模擬する疑似主記憶4とから構
成される。なお、本図では、簡単のためプロセッサシミ
ュレータ、制御装置シミュレータ、疑似周辺装置は1個
しか記述されていないが、複数であってもよい。
【0021】図2は、プロセッサシミュレータ1の動作
を示す流れ図である。まず、初期化ステップ11で、タ
ーゲットシステムのプロセッサが起動される場合の設定
と同じようにプロセッサシミュレータ1の持っている各
種レジスタを初期設定し、ブートローダを疑似主記憶4
にロードする。続いて、命令フェッチステップ12で、
疑似主記憶領域4から命令語を取り出し、命令判別ステ
ップ13で、命令フェッチステップ12で取り出した命
令語を判別する。判別の結果、レジスタと主記憶のみで
実施可能な通常命令の場合は、通常命令実行ステップ1
4で、ターゲットシステムのプロセッサの命令実行を模
擬し、プログラムカウンタインクリメントステップ17
で、プログラムカウンタを+1し、通知検査ステップ1
8で制御装置シミュレータ2からの入出力完了通知また
はアテンション通知がきていないかどうかを判定する。
判定の結果、いずれの通知も検出されなかった場合は、
命令フェッタステップ12に戻る。判定の結果いずれか
の通知を検出した場合は、割り込み処理手段19を呼び
出し、割り込み処理完了後に命令フェッチステップ12
に戻る。
【0022】命令判別ステップ13で、入出力命令を検
出した場合は、入出力命令実行手段15に制御を渡し、
リターンするとプログラムカウンタ17に進む。命令判
別ステップ13で、割り込み復帰命令を検出した場合
は、割込復帰命令実行手段16に制御を渡し、リターン
すると通知検査ステップ18に進む。
【0023】図3は、入出力命令実行手段15の処理を
示す流れ図である。周辺装置決定ステップ151で、指
定された周辺装置情報から該当する制御装置シミュレー
タ2と疑似周辺装置3を決定し、入出力要求通知ステッ
プ152で、周辺装置決定ステップ151で決定した制
御装置シミュレータ2へ入出力要求を通知する。
【0024】図4は、割り込み処理手段19の処理を示
す流れ図である。コンテキスト退避ステップ191で、
その時点のプロセッサシミュレータ1内部に保持してい
るターゲットシステムのプロセッサのレジスタ情報を、
ターゲットシステムのプロセッサの仕様に沿って疑似主
記憶4上の退避領域に退避し、割り込みベクタロードス
テップ192で、ターゲットシステムの仕様に沿って割
り込み発生時の最初のコンテキストをレジスタにロード
する。
【0025】図5は、割込復帰命令実行手段16の処理
を示す流れ図である。コンテキスト復元ステップ161
で、疑似主記憶4上の退避領域から、プロセッサシミュ
レータ1内部のレジスタ領域に情報を復元する。
【0026】図6は、制御装置シミュレータ2の処理を
示す流れ図である。制御装置シミュレータ2は、事象検
査ステップ21で、プロセッサシミュレータ1からの入
出力要求、または疑似周辺装置3からのアテンションを
待ち合わせる。プロセッサシミュレータ1からの入出力
要求が検出された場合は、入出力処理ステップ22で、
指定された周辺装置に該当する疑似周辺装置3への入出
力を実施し、入出力完了通知ステップ23で、要求を発
行したプロセッサシミュレータ1へ入出力完了通知を送
り、再び事象検査ステップ21に戻る。事象検査ステッ
プ21で、疑似周辺装置3からのアテンションを検出し
た場合は、通知先決定ステップ24で、ターゲットシス
テムで手順に従って通知先プロセッサを決定し、アテン
ション通知ステップ25で、通知先決定ステップ24で
決定したプロセッサをシミュレートするプロセッサシミ
ュレータ1にアテンション通知を送り、再び事象検査ス
テップ21に戻る。
【0027】本発明により、価格の割に性能が高いワー
クステーション等をシミュレータとすれば、大型計算機
のような高価な計算機システム用のシステムプログラム
の試し実行を、安価なシステムで実施できるようにな
り、システムプログラムの開発や保守のコストを削減す
ることができる。このシミュレーションによる試し実行
は、実際のシステムとはタイミングが異なるなどの問題
がり、時間に関係する制御機能や微妙なタイミングが問
題になる周辺装置の制御機能の試し実行は難しい点があ
る。しかし、普通のシステムプログラムでは、これらの
シミュレーションで試し実行が困難な部分は半分以下で
あり、過半数の部分を安価なシステムで試し実行できる
ことの効果は大きい。
【0028】さらに、実際の計算機システムの開発にお
いては、仕様が確定するには時間がかかるのが一般的だ
あり、ソフトウェアを主体とする本発明のシミュレータ
は、計算機システムの仕様の変更に容易に対応できる効
果もある。
【0029】
【発明の効果】以上説明したように、本発明のシステム
プログラムシミュレーション方式は、ターゲットマシン
のオペレーティングシステムなどのシステムプログラム
の各機能を他の計算機上でソフトウェアによりシミュレ
ートできるようにしたことにより、システムプログラム
の開発や保守のコストを削減できる効果がある。さら
に、新しいターゲットシステムのハードウェアが完成す
る前にシミュレータによるシステムプログラムの試し実
行が可能になり、ハードウェア完成からシステムプログ
ラム完成までのトータルの開発期間を短縮できる効果が
ある。
【図面の簡単な説明】
【図1】本発明の一実施例を示すブロック図である。
【図2】図1のプロセッサシミュレータ1の動作を示す
流れ図である。
【図3】図2の入出力命令実行手段15の処理を示す流
れ図である。
【図4】図2の割り込み処理手段19の処理を示す流れ
図である。
【図5】図2の割込復帰命令実行手段16の処理を示す
流れ図である。
【図6】図1の制御装置シミュレータ2の処理を示す流
れ図である。
【図7】従来技術の一実施例を示すブロック図である。
【符号の説明】
1 プロセッサシミュレータ 2 制御装置シミュレータ 3 疑似周辺装置 4 疑似主記憶 P プロセッサ C 制御装置 D 周辺装置 M 主記憶

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】プロセッサと周辺装置を制御する周辺制御
    装置が並列に動作する計算機システムにおけるシステム
    プログラムシミュレーション方式において、シミュレー
    ションの対象であるターゲットシステムの主記憶域上の
    システムプログラムと同一のシステムプログラムを備え
    た疑似主記憶手段と、前記ターゲットシステムの前記シ
    ステムプログラムの動作を前記疑似主記憶域の前記シス
    テムプログラムを実行することにより入出力要求および
    割り込み通知を受けた場合の割り込み処理を含めて模擬
    するプロセッサシミュレータと、前記ターゲットシステ
    ムの周辺装置動作を予め定められた範囲で模擬する疑似
    周辺装置と、前記プロセッサシミュレータからの前記入
    出力要求を前記疑似周辺装置への入出力命令に変換して
    出力し前記疑似周辺装置の入出力動作の完了通知および
    前記疑似周辺装置からアテンション情報を前記プロセッ
    サシミュレーションへの割り込みとして前記割り込み通
    知を行う制御装置シミュレータとから成るシミュレーシ
    ョン手段を備えたことを特徴とするシステムプログラム
    シミュレーション方式。
JP5002267A 1993-01-11 1993-01-11 システムプログラムシミュレーション方式 Expired - Fee Related JPH0827745B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5002267A JPH0827745B2 (ja) 1993-01-11 1993-01-11 システムプログラムシミュレーション方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5002267A JPH0827745B2 (ja) 1993-01-11 1993-01-11 システムプログラムシミュレーション方式

Publications (2)

Publication Number Publication Date
JPH06208480A JPH06208480A (ja) 1994-07-26
JPH0827745B2 true JPH0827745B2 (ja) 1996-03-21

Family

ID=11524602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5002267A Expired - Fee Related JPH0827745B2 (ja) 1993-01-11 1993-01-11 システムプログラムシミュレーション方式

Country Status (1)

Country Link
JP (1) JPH0827745B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2861962B2 (ja) * 1996-09-12 1999-02-24 日本電気株式会社 コンピュータプログラムのシミュレーション装置および方法
JP5448768B2 (ja) * 2009-12-10 2014-03-19 キヤノン株式会社 情報処理装置及びその制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01159743A (ja) * 1987-12-17 1989-06-22 Fujitsu Ltd ファームソフトシミュレータ
JPH0367340A (ja) * 1989-08-04 1991-03-22 Fujitsu Ltd シミュレータ

Also Published As

Publication number Publication date
JPH06208480A (ja) 1994-07-26

Similar Documents

Publication Publication Date Title
JP5443172B2 (ja) 処理環境での命令実行の制御
EP1766518B1 (en) Adaptive algorithm for selecting a virtualization algorithm in virtual machine environments
JPS6258341A (ja) 入出力割込処理方式
JPH0430053B2 (ja)
CA2062771C (en) Information processing system emulation apparatus and method
US5363501A (en) Method for computer system development verification and testing using portable diagnostic/testing programs
CN111796912A (zh) 申威平台存储输入输出设备虚拟化性能优化方法及系统
EP0526911A1 (en) A method and apparatus for coordinating execution of an instruction by a coprocessor
US5003468A (en) Guest machine execution control system for virutal machine system
US20040193394A1 (en) Method for CPU simulation using virtual machine extensions
US20030093258A1 (en) Method and apparatus for efficient simulation of memory mapped device access
JPH0827745B2 (ja) システムプログラムシミュレーション方式
US20050091022A1 (en) Ultra fast multi-processor system simulation using dedicated virtual machines
JP5235900B2 (ja) 命令実行を容易にするためのバッファの使用
JP2005353020A (ja) コンピュータプログラムのシミュレーション方式
JPS6376028A (ja) 仮想計算機システムにおける命令ステツプ実行制御方式
JP3270729B2 (ja) 拡張命令セット・シミュレータ
Marsland et al. A case study of computer emulation
Demco et al. An insight into PDP-11 emulation
JPS6338729B2 (ja)
JPH0677236B2 (ja) I/o割込みをシミュレートする装置及び方法
JP2002288003A (ja) シミュレーション方法およびシミュレーションプログラム
JPH0721767B2 (ja) エミュレーション方式
JPH0361211B2 (ja)
Wong et al. RTE-IV: The Megaword-Array Operating System

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960917

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080321

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090321

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090321

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100321

Year of fee payment: 14

LAPS Cancellation because of no payment of annual fees