翻訳と辞書
Words near each other
・ 命令
・ 命令 (コンピュータ)
・ 命令 (フランス法)
・ 命令 (法規)
・ 命令と征服
・ 命令を伝える
・ 命令コード
・ 命令スケジューリング
・ 命令セット
・ 命令セットアーキテクチャ
命令セットシミュレータ
・ 命令パイプライン
・ 命令プリフェッチ
・ 命令プリフェッチキュー
・ 命令レジスタ
・ 命令レベルの並列性
・ 命令一下
・ 命令口調
・ 命令型
・ 命令型プログラミング


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

命令セットシミュレータ : ミニ英和和英辞書
命令セットシミュレータ[めいれい-]
=====================================
〔語彙分解〕的な部分一致の検索結果は以下の通りです。

: [めい, いのち]
 【名詞】 1. command 2. decree 3. life 4. destiny 
命令 : [めいれい]
  1. (n,vs) order 2. command 3. decree 4. directive 5. (software) instruction 
: [れい]
  1. (n,n-suf,vs) command 2. order 3. dictation 
: [ちょうおん]
 (n) long vowel mark (usually only used in katakana)

命令セットシミュレータ : ウィキペディア日本語版
命令セットシミュレータ[めいれい-]
命令セットシミュレータ (めいれい-、英: Instruction set simulator, ISS)とは、コンピュータプロセッサ)のシミュレータエミュレータ)のモデルのひとつで、命令セットレベルのシミュレーションを行うものである。ISS は通例高級言語でプログラムされており、シミュレートするアーキテクチャの命令を読み込み、プロセッサのレジスタを表現する内部変数の状態を維持して命令レベルでの模倣を行う。
命令のシミュレーション とは、以下のいずれかを目的として導入される方法論である。
* 互換性のために、異なるハードウェアやコンピューターの機械語をシミュレートする。通常システムシミュレータは命令セットシミュレータを内包している。
* デバッグ目的のために、機械語命令を(単なるデータとして扱って)同じハードウェア上でたとえばメモリ保護機能 (意図的あるいは偶発的なバッファオーバーランからシステムを保護する)と共に実行し、その振る舞いを監視する。
* プロセッサコアを関連するシミュレーションで、プロセッサ自身が検証の対象でない場合のシミュレーション性能を向上させる。例:Verilog のシミュレーションを"PLI" を用いて検証する。
== 命令シミュレータの実装 ==
ISS は、ソフトウェアエンジニアプログラマが開発対象のハードウェアを入手する前にプログラムをデバッグできるようにするため、それ自体デバッガとして、またはデバッガと共に提供されることが多い。GNUデバッガはこうした ISS を組み込んだデバッガの一つである。ISS はタイマー割り込みシリアルポートや一般的なI/O ポートなど、マイクロコントローラ全体の動きを模倣するための擬似的な周辺回路と結合されている場合もある。
基本的な命令のシミュレーション技術は、目的によらず同一である。まずモニタプログラムが対象のプログラムの名前を入力パラメータ共に受け取る。
対象のプログラムはメモリ上にロードされるが、コードに制御が渡されることはない。代わりに、ロードされたプログラムのエントリーポイントが計算され、擬似的なプログラムカウンタ(PSW)がその位置に設定される。擬似的なレジスタの内容は、対象のプログラムを直接実行する場合と同じように設定する。
ここで、ハードウェア構成やOSによっては、レジスタの一部が他の"制御ブロック"を示すように設定しておく必要がある。
その後、命令の実行は下記のように行われる。
#擬似的なPSWの位置(初期には、プログラムの最初の命令)にある命令の長さを決定する。この命令のプログラムにおけるオフセットが以前に設定された「中断」位置であれば、「中断」理由を設定し、7. へ進む
#命令を「読み取り」、モニタのメモリに展開する。「トレース」が利用でき、有効にされていれば、プログラムの名前、命令のオフセットと他の変数を格納する。
#命令の種類により、実行前のチェックを行ってから実行する。何らかの理由でこれ以上命令が進行できない場合(無効な命令、不正なモード等)、7. へ進む。命令がメモリを書き換える場合には、(現在スレッドに対して)書き換え先が存在するか、また十分な大きさを持っているかを確認する。問題なければ、適切な擬似レジスタの値を実際のレジスタに読み込ませ、等価なメモリ変更の演算を実際のレジスタで実行させ、トレースが有効であれば変更された記憶領域のアドレスと長さを記録し、4. へ進む。命令がレジスタからレジスタへの操作であった場合には、擬似レジスタを実際のレジスタにロードし、処理を実行させ、対応する擬似レジスタに書き戻し、4. へ進む。命令が条件分岐の場合、条件が満たされるかを決定する。満たされなければ 4. へ進み、満たされる場合には分岐先のアドレスを計算し、有効なアドレスかを確認し、無効であれば、 "Wild branch"のエラーをセットし7. へ進む。問題なければ、5. へ進む。命令がアプリケーションのシステムコールである場合には、制御をモニタプログラムに戻すためモニタプログラムでアドレスを偽装して実際のコールはモニタープログラムから行い、擬似レジスタの値にシステムコールの結果を反映させ、4. へ進む。
#命令の長さの分、擬似PSWを増加させる。
#PSWの次のアドレスを擬似 PSW に読み込む。
# 1. に進む。
# 実行を停止する。
テストやデバッグ目的のため、モニタプログラムはレジスタ、メモリ、プログラムの再開位置を取得/変更する機能、コアダンプの取得、現在のデータの値に対するプログラムのシンボル名を表示する機能、などを提供することができる。条件によって実行を「中断」する機能や、不要な中断箇所を取り除く機能などを備えることもできる。
命令セットシミュレータは、実行の条件がエラーによって破壊されてしまうようなエラーを命令の実行前に検出する機会を提供することができる。IBM System/360 での良い例として、命令シミュレータのモニタを使う以外にはデバッグが困難な命令列があった。
LM R1,R15,12(R13) r13 が誤って X"00" が連続した記憶域を指している
BR R14 PSW は X"0000002" を示し、"Operation Exception" を発生

* 全レジスタはエラー時 0 になる.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「命令セットシミュレータ」の詳細全文を読む




スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.