実行・開発環境
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/12/24 06:53 UTC 版)
「Domain/OS」の記事における「実行・開発環境」の解説
使用するライブラリ AEGISでもUNIXでも両方混在でも利用できた。 実行環境に使用するシェル AEGISシェルでもUNIX系シェルのBourne Shell、C Shell、KornShellでもどちらでも操作しやすい環境が使用可能であった。AEIGISシェル UNIX環境との大きな違いは、AEGISコマンド自身がネットワーク分散環境用に設計されたため、ネットワーク全体の機器の稼動状況の監視(プロセス実行状態・負荷、ディスク容量、ファイル操作、ネットワークなど)が秀でていた。コマンド体系も整理され、一貫性があり高機能だが判りやすいコマンドであった。シェルスクリプトの機能もUNIXシェルを上回る機能を搭載していた。 UNIX系シェル 当時の2つのUNIX環境 (4.3BSD, SystemV 5.3) がそのまま動作した。過去も現在もそうだが、同時に2つの環境を同時に独立動作できたのは、このDomain/OSのみである。他のワークステーションはどちらか1つしか実装せず、メーカ独自の付加機能を追加する程度であった。それには理由があり、商用OSでマイクロカーネルを開発・実装したのは当時Domain/OSのみであったためである。その後、オムロン社がMachマイクロカーネルを実装し上位にUNIX BSDをミドルウェア化したOSを発表したが、他のOSをミドルウェア化しなかったため、上記のように複数の環境を同時に動かすことはできなかった。 エディタ 開発にはプログラム編集機能が重要となる。Domain/OSでは、ウィンドウシステムに標準的に搭載されていた、EDITウィンドウを利用することが普通であった。UNIXコマンドにviやADUSライブラリにEmacsなどがあったが、機能・編集能力で遙かに劣るため他のUNIXマシンしか知識がないもの以外は、そのままEDITウィンドウの機能を利用した。なおADUSとはApollo Domain USers group(アポロドメインユーザ会)のことである。 コンパイラ アポロコンピューター社はコンパイラ製作にも非常に優れていた。当時、演算プロセッサの利用もソース対応でなく、コンパイラのオプション設定だけで利用できる優れものであった。GNUコンパイラも存在したが、ほとんど利用されることはなかった。 ダイナミックリンクライブラリ 今では当たり前にできるOSもあるが、当時のUNIXおよびPCの世界では夢の機能であった。Domain/OSでは標準的に搭載しており、コマンド (INLIB) でプロセス内のメモリに配置可能でそのライブラリを必要とする実行ファイルを起動するとライブラリをリンクしなくても利用することができた。もちろんライブラリをリンクすることもできる。 DDE (Distributed Debugging Environment) 分散デバッグ環境、といわれプロセス名がわかればリモートで実行しているプログラムをダイレクトにデバッグできてしまう、現在でも実現できるソフトはないと思われる機能を搭載したソースレベルデバッガ。 TraceBack機能 プログラムのバグ等で停止した際、どこで停止したかトレースバックが可能であった。また、動作中のプロセスもリアルタイムにトレースバックすることができた。 UNIX系でのコアダンプ解析をすることなく、トーレースバック表示でルーチン名と行数がはっきりわかるため、問題解決は非常に早かった。 dspst (display process status graphically) 各プロセスの負荷状態と、OS内プロセス負荷状態(LEVEL1プロセス)、I/O 統計(ディスク、ネットワーク、ローカルマウントページング、ネットワークデマウントページング)をリアルタイム表示する。 hpc (program counter histogram) 各ルーチンでどれだけ処理にかかっているかを解析し、テキストの棒グラフで表示を行うツール DAPT Domain Performance Analysis Kitのひとつで動作中のプログラムの動きを表示し、プログラムの流れをサブルーチンコールのチャートで表現できる。これは、現在のソフトウェアでも珍しい機能である。 lvolfs (list_volume_free_space) 論理ボリュームの使用可能な領域のサイズを表示する。これはUNIXではdfコマンドである。違いは、接続されているネットワーク全体の詳細を事細かに表示することである。自分の機器のディスク容量が足りなければ他の接続機器で余裕がある機器に全部移動してしまうことができた。アクセス方法も簡単で、ネットワークワイドにシンボリックリンクを作ることで移動後も以前と変わらない動作環境を実現した。 台数増加による相乗効果 Domain/OSはネットワーク透過で完全な分散環境を実現していた。Domain/OSの能力は1台では出し切ることができない。複数台接続して初めて、その真価を発揮するOSであった。具体的には、自分で使用している機器以外にネットワーク接続された機器にもログインし、自分で使用している機器を参照させてコンパイルするなど、接続された機器を自由に制御できた。自分の機器に欲しい周辺機器がなくても、ネットワーク上の機器で搭載または接続されていれば自由に使用でき、ソフトウェアも同様にネットワーク上の機器でインストールされていれば利用できた。現在のコンピュータOSも進歩したがここまでの自由度はない。 なお、台数増加で演算能力の相乗効果を生むものとして、NCS (Network Computing System) が搭載されていた。
※この「実行・開発環境」の解説は、「Domain/OS」の解説の一部です。
「実行・開発環境」を含む「Domain/OS」の記事については、「Domain/OS」の概要を参照ください。
- 実行開発環境のページへのリンク