パイロット(オペレーティング システム)

パイロット
開発者ゼロックス 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ワークステーションのオペレーティング システムとして使用されました。

参照

参考文献

  1. ^ 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日閲覧.
  2. ^ Gillies, Donald W. 「World-Stop Debuggers」 。 2024年2月24日閲覧

さらに読む