SIMMON (シミュレーション モニター) は、1960 年代後半に当時ニューヨーク州ポキプシーにあった IBM 製品テスト研究所で開発された独自のソフトウェア テスト システムです。当時新しい System/360 コンピューター ライン向けに設計され、IBM がそのアーキテクチャ向けに開発していたソフトウェアをテストする手段として使用されました。SIMMON は、ニューヨーク州ライで開催 されたIBM SimSymp 1968 シンポジウムで初めて説明されました。[ 1 ]
SIMMON はハイパーバイザーで、当時ケンブリッジ科学センターで独自に開発されていたIBM CP-40システムに似ています。CP-40 との主な違いは、SIMMON が単一のゲスト プログラムをテストするために単一の仮想マシンをサポートしていたことです。CP-40 は、タイムシェアリングプロダクション作業のために多数の仮想マシンをサポートしていました。CP-40 は、多くの段階を経て現在のVM/CMSオペレーティング システムへと進化しました。SIMMON は長年にわたって便利なテスト手段でした。
SIMMON は、対象のゲスト プログラムをテストするために、独自に開発されたプログラム (テスト ツール) を動的に組み込むように設計されています。SIMMONカーネルは、ハードウェア (およびゲスト) の制御を維持し、テスト ツールの呼び出しを調整します。
処理モード
2 つの操作モードが提供されました。
- 完全なシミュレーション
- 割り込み
フルシミュレーションモード
このモードでは、ゲスト プログラムの各命令は、ゲストに直接制御を渡すことなくシミュレートされます。命令セット シミュレーターとして、SIMMON は、実行されているのと同じアーキテクチャー ( IBM System/360 /370) をシミュレートするという点で珍しいものです。割り込みモード (下記) よりも 1 桁遅いですが、ゲストの動作を詳細に監視できます。これは、さまざまな命令トレース テスト ツールで使用されるモードです。
割り込みモード
割り込みモード (別名バンプ モード) では、ゲスト プログラムはユーザー プログラム状態で実行されるように制限され、SIMMONカーネルがすべてのハードウェア割り込みを処理し、ゲストが実行しようとしたすべての特権命令をシミュレートします。このモードは、たとえば、ハードウェア デバイスをシミュレートするテスト ツールで使用できます。
いくつかのSIMMONテストツール
これらは、SIMMON で使用するために開発されたいくつかのテスト ツールです。
緊急
(エラー生成とテスト): このテスト ツールは、当時開発中だった IBM の PCP (Primary Control Program) オペレーティング システムでデバイス サポートエラー回復をテストするために開発されました。このツールは、新しく非常に効率的なテーブル駆動型 有限状態マシン(FSM) を使用してシミュレートされたエラーを挿入し、オペレーティング システムが回復を試行するために実行されるアクションの詳細な仕様に従っているかどうかを検証しました。
テーブル駆動型FSMの側面は 1972年10月に 米国特許[1]を取得しました。
マッパー
MAPPER (Unisys の同名の製品と混同しないでください) は、統計的な パフォーマンス分析ツールでした。テスト対象のプログラムを割り込みモードで実行できるようにすることで動作しますが、システム タイマーを使用して定期的に割り込みを行います。テスト対象のプログラムが割り込まれたアドレスが記録され、後でマップの形式で要約および表にまとめられ、メモリ アドレス上の割り込みの密度が表示されます。結果は核シンチグラフィー画像に似ており、テスト条件下で最も頻繁に使用されるプログラムの部分を示します。
ホットスポット
HOTSPOTS は、 IBM の MFTオペレーティング システムのパフォーマンスの問題領域を特定するために作成された命令トレース ツールです。分岐トレースデータはテープに書き込まれ、要約されます。レポートはストレージ ダンプに似たリスト形式であり、プログラムのエントリ ポイントと終了ポイントが特定され、各命令シーケンスの使用頻度も示されます。
これらのデータにより、メモリ管理コンポーネントが CPU リソースの約 20% を消費していることが判明し、タスク フォースがパフォーマンスの改善を試みる 根拠となりました。
ストレス
特定のテスト ツールではありませんが、SIMMON で実行中に歪んだタイミング関係が見つかり、特に入出力セクションで多くの問題が見つかりました。I/O イベントを正規化して遅延させる SIMMON ツールを導入しない限り、ゲスト プログラムではこれらの問題が不自然に速く発生しているように見えます。
テストされたプログラム
テスト対象のプログラム (いわゆるゲスト プログラム) は、ベア ハードウェア上でスタンドアロン操作が可能でなければなりませんでした。SIMMON はテスト ツールにはサービスを提供しましたが、ゲストにはサービスを提供していませんでした。
SIMMON を使用してテストされたプログラムの一部を以下に示します。
- さまざまなカスタマーエンジニア(CE)スタンドアロン 診断プログラム
- DOS/360 (BOS および TOS を含む)
- OS/360 (PCP、MFT、MVS)
- 多数の製品テストツール
参照
参考文献
- ^ Lehman MM (ed) Proc. SimSymp 1968、IBM Res. Div.、Yorktown Heights、NY、1968年11月、3巻。
