System/38

System/38 は、IBMが1979年にリリースしたオフィスコンピュータであり、AS/400の前身である。IBM の技術者フランク・ソルティスがいくつかの革新的機能を考案し、実装されている。

1. 歴史
-----

System/38 は 1978年に発表され、1979年8月に出荷開始された。System/34 の後継であるが、System/36 は後から登場した。コード名は "Eagle"。System/38 は中止された Future Systems プロジェクトから派生したものである。

2. 機能
-----

System/38 のアドレッシングは48ビットで、当時としては珍しい。

また、革新的なデータベース的ストレージ手法を備えている。System/38 のオペレーティングシステムは CPFである。CPF は System/34 や System/36 のオペレーティングシステム SSPとは無関係である。

サポートするプログラミング言語としては、RPG III、COBOL、BASIC、PL/I がある。JCL相当のスクリプト言語として CLがある。CL はシェルスクリプトに似ているが、コンパイルでき、実行ファイル化することができる。

System/38 は当時のハードウェアとしては極めて先進的であった。開発当初、当時としては巨大なOSのオーバーヘッドに悪戦苦闘した。プロジェクトメンバーの1人が内部コード名を PACIFIC にしようと提案したこともあった。これは、//"performance ain't critical if function is complete"//の頭字語である。数十年後、かつて考慮に値しないと評されたその同じソフトウェアが、企業や政府などの数千のシステムでうまく機能していた。

2.1. 単一レベル記憶
------------

System/38 とその後継シリーズは、単一レベル記憶を使った、商用では初のシステムである。全ての主記憶装置と、磁気ディスク装置などの補助記憶装置が、単一の仮想アドレス空間にマッピングされる。

System/38 以外の多くのコンピュータでは、ディスク上に格納されるデータはファイルという論理的単位に分割して格納される。データをあるファイルに追加する場合、そのためのセクターが用意され、そのセクターがいっぱいになると新たなセクターが使われる。System/38 では、データは個別に格納され、システムのどこに置かれてもよい。ファイルという概念はなく、OSがストレージ上の全データを管理する。

2.2. TIMI
---------

System/38 とその後継シリーズは、TIMIによって、アプリケーションソフトウェアやOSの大部分を、ハードウェアに依存しない実装にしている。TIMIは水平マイクロコードによって実現され、ソフトウェアは中間コードにより配布され、インストール時に最適化される。後のJavaVMのような一種の仮想機械であるが、ソフトウェアでインタプリトする仮想機械に比べ、性能を犠牲にしていない。

System/38 の後継である AS/400 は、途中でCPUを独自CISCから、アーキテクチャの異なるRISCのPOWERに変更したが、TIMIの効果でユーザーにはほとんど意識されることは無かった。

2.3. ハードウェアRDBMS
----------------

System/38 とその後継シリーズは、商用では初めてRDBMSをハードウェアに実装したシステムでもある。外見上はOSの標準機能としてRDBMS機能があるように見えるが、内部的にはハードウェアに標準でRDBMSが付属しており、極めて高速・高信頼性である。

このため System/38 とその後継シリーズは、簡単に使用できる本格的RDBMSシステムとして広く使われた。なおマーケティング上の理由で、この RDBMS は AS/400 の時代に DB2/400 、DB2 for OS/400 などとDB2ファミリーのブランドとなったが、実際にはミドルウェア・ソフトウェアで実現しているのではなく、ベース部分はハードウェアの標準機能として実現されている。

2.4. その他の特徴
-----------

System/38 は商用では珍しい capability-based addressing を採用している。なお、その手法は AS/400 や System i といった後継シリーズには受け継がれていない。

3. 販売状況
-------

IBM は約2万台を5年間で販売した。よく売れた System/34 の後継として登場したが、アップグレードには困難が伴った。周辺機器や言語は似ていたものの、実際には細部がかなり異なっていた。このため、IBM は System/34 と互換性のある System/36 を後から発売することになった。

このため、IBM は互換性がなく相互にオーバーラップする3種類のプラットフォームを持つことになった。当時、DEC はこれを IBM の弱点と考え、1つのアーキテクチャで幅広い製品展開をしようとした。IBM はこれに対抗して小型メインフレーム 4300シリーズ、更に9370シリーズをリリースしたが、あまり成功しなかった。

System/38 の先進的な機能は AS/400 に受け継がれた。AS/400 はその後 iSeries、さらに System i と改称され、2008年にはPower Systemsに統合された。

4. 脚注
-----

5. 参考文献
-------

R. L. Hoffman and F. G. Soltis. Hardware organization of the System/38, IBM System/38 Technical Developments , 1980, 19-21.
M. E. Houdek and G. R. Mitchell. Translating a large virtual address, IBM System/38 Technical Developments , 1980, 22-24.
Viktors Berstis, //[1]//, Proceedings of the 7th annual symposium on Computer Architecture, p.245-252, May 06-08, 1980, La Baule, United States
W. David Sincoskie, David J. Farber: SODS/OS: Distributed Operating System for the IBM Series/1. Operating Systems Review 14: 46-54 
ME Houdek, FG Soltis, RL Hoffman //[2]// Proceedings of the 8th annual symposium on Computer, Minneapolis, Minnesota, United States. pp. 341 - 348 
フランク・ソルティス  、日本アイ・ビー・エム AS/400製品事業部  、『Inside the AS/400 : featuring the AS/400e series : 日本語版 第2版』、インフォ・クリエイツ、1998年、ISBN 4-900741-88-4

6. 外部リンク
--------

[3]
[4]
[5]