| パイロット | |
|---|---|
| 開発者 | ゼロックス PARC |
| 書かれた | メサ |
| 作業状態 | 歴史的 |
| 初回リリース | 1981 (1981年) |
| 入手可能な | 英語 |
| サポートされているプラットフォーム | ゼロックス スターワークステーション |
| デフォルトのユーザーインターフェース | グラフィカルユーザーインターフェース |
パイロットは、 1977年初頭にゼロックスPARCによって設計されたシングルユーザー、マルチタスクオペレーティングシステムです。パイロットはMesaプログラミング言語で書かれており、コードの総行数は約24,000行です。[ 1 ]
概要
Pilot は、他の Pilot システムとの高度にネットワーク化された環境におけるシングルユーザーシステムとして設計され、Pilot ストリームインターフェースを介してネットワークを介したプロセス間通信(IPC) 用に設計されたインターフェースを備えています。Pilot は仮想メモリとファイルストレージを 1 つのサブシステムに統合し、システムとそのリソースの管理には マネージャー/カーネルアーキテクチャを採用しました。
設計者は非プリエンプティブなマルチタスクモデル(ブロックされるまで実行される)を検討したが、後にモニターに基づくプリエンプティブシステムを選択した。[ 1 ] Pilotには、ディスクに書き込まれたオペレーティングシステムの 凍結されたスナップショットをデバッグできるデバッガーCo-Pilotが含まれていた。
典型的な Pilotワークステーションは、3 つの異なるディスク ボリュームで同時に 3 つのオペレーティング システムを実行していました 。Co-Co-Pilot (メインのオペレーティング システムがクラッシュした場合のバックアップ デバッガー)、Co-Pilot (co-pilot で実行され、プログラムのコンパイルとバインドに使用されるメインのオペレーティング システム)、および 3 番目のディスク ボリュームで実行され、ブートしてテスト プログラム (メインの開発環境をクラッシュさせる可能性がある) を実行できる Pilot の下位コピーです。
デバッガーは、別のディスク ボリュームに保存されているプログラムの変数を読み書きするために作成されました。
このアーキテクチャは、セマフォロックを用いてオペレーティングシステムのコードでさえ、下位のディスクボリュームに格納された状態でシングルステップ実行できるという点で独特でした。しかし、DシリーズXeroxプロセッサのメモリとソースコードが増大するにつれて、オペレーティングシステムのチェックポイントと復元(「ワールドスワップ」と呼ばれる)にかかる時間が非常に長くなりました。下位のオペレーティングシステム環境では、たった1行のコードを実行するだけでも60~120秒かかることもありました。
最終的に、Co-Pilotに代わる共存デバッガが開発されました。[ 2 ]
Pilot は、Xerox Starワークステーションのオペレーティング システムとして使用されました。
参照
参考文献
- ^ a b Lampson, Butler W. ; David D. Redell (1980年2月). 「Mesaにおけるプロセスとモニターの経験」(PDF) . Communications of the ACM . 23 (2): 105– 117. doi : 10.1145/358818.358824 . 2007年6月22日閲覧.
- ^ Gillies, Donald W. 「World-Stop Debuggers」 。 2024年2月24日閲覧。
さらに読む
- Horsley, TR; Lynch, WC (1979年9月). 「Pilot:ソフトウェアエンジニアリングの事例研究」 . ICSE '79: 第4回国際ソフトウェアエンジニアリング会議議事録. ミュンヘン(ドイツ). pp. 94– 99.
- David D. Redell、Yogen K. Dalal、Thomas R. Horsley、Hugh C. Lauer、William C. Lynch、Paul R. McJones、Hal G. Murray、Stephen C. Purcell (1980年2月1日). 「Pilot:パーソナルコンピュータ用オペレーティングシステム」 Communications of the ACM . 23 (2): 81– 92. doi : 10.1145/358818.358822 .