Pilot (オペレーティングシステム)

Pilot は、1977年初頭に Xerox PARC によって設計されたシングルユーザのマルチタスク OS である。Pilot は Mesa プログラミング言語で書かれており、合計で約 24,000 行のコードが含まれている[1]

Pilot
開発者 Xerox PARC
プログラミング言語 Mesa
開発状況 Historic
初版 1981年(39年前) (1981
使用できる言語 English
プラットフォーム Xerox Star workstations
既定のUI Graphical User Interface
テンプレートを表示

Pilot は、高度にネットワーク化された他の Pilot システムが共存する環境において、シングルユーザシステムとして設計されており、Pilot ストリームインターフェースを介してネットワーク上でプロセス間通信 (IPC) を行うように設計されたインターフェースを備えている。Pilot は、仮想メモリとファイルストレージを 1つのサブシステムに統合し、システムとそのリソースを管理するためにマネージャ/カーネルアーキテクチャを採用した。設計者は、非プリエンプティブなマルチタスクモデルを検討したが、後にモニタに基づいてプリエンプティブ (ブロックされるまで実行する) システムを選択した[2]。Pilotには、ディスクに書き込まれたオペレーティングシステムのフリーズしたスナップショットをデバッグできるデバッガ、Co-Pilotが含まれていた。

典型的な Pilot ワークステーションでは、3つの異なるディスクボリューム上で 3つのオペレーティングシステムを同時に実行していた。Co-Co-Pilot (メインのオペレーティングシステムがクラッシュした場合のバックアップデバッガ)、Co-Pilot (メインのオペレーティングシステムで、Co-Co-Pilot の下で実行され、プログラムのコンパイルとバインドに使用される)、そして 3番目のディスクボリューム上で実行されている Pilotの下位のコピーで、起動してテストプログラムを実行できる(メインの開発環境がクラッシュする可能性がある)。デバッガは、別のディスクボリュームに格納されたプログラムの変数を読み書きするために作成された。

このアーキテクチャは、開発者が下位ディスクボリュームに格納されたセマフォロック付きのオペレーティングシステムコードをシングルステップで実行できるというユニークなものである。しかし、Dシリーズの Xerox プロセッサのメモリとソースコードが大きくなるにつれて、オペレーティングシステムのチェックポイントと復元 (「ワールドスワップ」と呼ばれる) にかかる時間が非常に長くなった。下位のオペレーティングシステム環境でたった 1行のコードを実行するのに 60~120 秒かかることもあった。最終的には、Co-Pilot に代わる共存デバッガが開発された[3]

Pilot は Xerox Star ワークステーションのオペレーティングシステムとして使用された。

参照項目編集

  • オペレーティングシステムのタイムライン (英語版

参考文献編集

  1. ^ Lampson, Butler W.; David D. Redell (February 1980). Experience with Processes and Monitors in Mesa. Communications of the ACM. http://www.cs.berkeley.edu/%7Ebrewer/cs262/Mesa.pdf 2007年6月22日閲覧。. 
  2. ^ Lampson, Butler W.; David D. Redell (February 1980). Experience with Processes and Monitors in Mesa. Communications of the ACM. http://www.cs.berkeley.edu/%7Ebrewer/cs262/Mesa.pdf 2007年6月22日閲覧。. 
  3. ^ Gillies, Donald W.. World-Stop Debuggers. http://www.ece.ubc.ca/~gillies/note1.html 2013年10月17日閲覧。. 

詳細な文献編集

  • Horsley, T.R., and Lynch, W.C. Pilot: A software engineering case history. In Proc. 4th Int. Conf. Software Engineering, Munich, Germany, Sept. 1979, pp. 94-99.

外部リンク編集