本文へジャンプ

System i 再確認

TIMI(Technology Independent Machine Interface)その1

主記憶域プールと単一レベル記憶
System i で実行されるユーザー・プログラムについてその特徴を説明いたします。まず結果としてソフトウエア資産の継承ができます。従来のハードウエアから新しいハードウエア・テクノロジーに移行しても、稼動していたソフトウエア、すなわちユーザー・プログラムは自動的に新しいハードウエアで実行しうる形態に変換されます。その際、ソース・プログラムの修正はもとよりリコンパイルの必要もありません。

System i は1994年までは48ビットCISC(Complex Instruction Set of Computing)のプロセッサー・チップを使っていました。1995年になって64ビットRISC(Reduced Instruction Set of Computing)のプロセッサー・チップ'PowerPC'を搭載しました。当時48ビットCISCで出来上がっている稼働中のユーザー・プログラムが、どのように64ビットRISCプログラムに変換されるか、という点に関する理解は明確ではありませんでした。重要なことは、稼働中のユーザー・プログラムにプログラム識別情報(英語ではProgram Observability:プログラム監視権)があるかないかでした。これさえあれば、ハードウエアが48ビットCISCプロセッサーから64ビットRISCプロセッサーに変わっても、またマイクロコードが従来の垂直・水平マイクロコードからC++で書かれたSLIC(System Licensed Internal Code)に変わっても、更にはi5/OSが48ビットのV3R1から64ビットのV3R6に変わっても、ユーザー・プログラムは変更する必要がありません。通常ソース・プログラムをコンパイルすると、このプログラム識別情報はオブジェクト・プログラムに付随しています。これを意識的に取り除く場合、その理由は2つあります。一つはプログラムの実行に際してこの部分は必要ないため、ディスク・スペースの有効利用という観点から取り除くケースです。も う一つは、ソース・プログラムが無くても、オブジェクト・プログラムのこの部分から、大変面倒ではありますが、ソース・ステートメントを取り出してしまうことが出来ますので、これを防ぐために取り除く、という場合です。

2006年11月現在、System i は64ビットで稼働していますが、仮に128ビットのチップがSystem i に搭載されても、現在稼働している64ビットのユーザー・オブジェクト・プログラ ムの中にプログラム識別情報さえ入っていれば、修正やリコンパイルせずに128ビット対応のプログラムに自動変換されます。ソフトウエア資産が最新のテクノロジーの上で継承できるわけです。