Pilot (オペレーティングシステム)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/09/07 17:21 UTC 版)
開発者 | Xerox PARC |
---|---|
プログラミング言語 | Mesa |
開発状況 | Historic |
初版 | 1981年 |
使用できる言語 | English |
プラットフォーム | Xerox Star workstations |
既定のUI | Graphical User Interface |
Pilotは、1977年初頭にXerox PARCによって設計されたシングルユーザのマルチタスクオペレーティングシステム (OS) である。PilotはMesa プログラミング言語で書かれており、合計で約24,000行のコードが含まれている[1]。
概要
Pilotは、高度にネットワーク化された他のPilotシステムが共存する環境において、シングルユーザシステムとして設計されており、Pilotストリームインタフェースを介してネットワーク上でプロセス間通信 (IPC) を行うように設計されたインタフェースを備えている。Pilotは、仮想メモリとファイルストレージを 1つのサブシステムに統合し、システムとそのリソースを管理するためにマネージャ/カーネルアーキテクチャを採用した。設計者は、非プリエンプティブなマルチタスクモデルを検討したが、後にモニタに基づいてプリエンプティブ (ブロックされるまで実行する) システムを選択した[1]。Pilotには、ディスクに書き込まれたOSのフリーズしたスナップショットをデバッグできるデバッガ、Co-Pilotが含まれていた。
典型的なPilotワークステーションでは、3つの異なるディスクボリューム上で 3つのOSを同時に実行していた。Co-Co-Pilot (メインのOSがクラッシュした場合のバックアップデバッガ)、Co-Pilot (メインのOSで、Co-Co-Pilotの下で実行され、プログラムのコンパイルとバインドに使用される)、そして 3番目のディスクボリューム上で実行されている Pilotの下位のコピーで、起動してテストプログラムを実行できる(メインの開発環境がクラッシュする可能性がある)。デバッガは、別のディスクボリュームに格納されたプログラムの変数を読み書きするために作成された。
このアーキテクチャは、開発者が下位ディスクボリュームに格納されたセマフォロック付きOSのコードをシングルステップで実行できるというユニークなものである。しかし、DシリーズのXeroxプロセッサのメモリとソースコードが大きくなるにつれて、OSのチェックポイントと復元 (「ワールドスワップ」と呼ばれる) にかかる時間が非常に長くなった。下位のOS環境でたった 1行のコードを実行するのに60~120秒かかることもあった。最終的には、Co-Pilotに代わる共存デバッガが開発された[2]。
PilotはXerox StarワークステーションのOSとして使用された。
参照項目
- オペレーティングシステムのタイムライン (英語版)
出典
- ^ a b Lampson, Butler W.; David D. Redell (February 1980). “Experience with Processes and Monitors in Mesa”. Communications of the ACM (ACM) 2007年6月22日閲覧。.
- ^ Gillies, Donald W.. World-Stop Debuggers 2013年10月17日閲覧。.
参考文献
- Horsley, T.R., and Lynch, W.C. (Sept. 1979). “Pilot: A software engineering case history.”. In Proc. 4th Int. Conf. Software Engineering, Munich, Germany: 94-99 .
外部リンク
- Pilot (オペレーティングシステム)のページへのリンク