[インターネット・サイエンスの歴史人物館]

連載:インターネット・サイエンスの歴史人物館(13)フェルナンド・ホゼ・コルバト

2008/02/20
(水)

最初のタイムシェアリングOSのCTSS

マッカーシーと電気工学部助教授のティーガーが、IBM 709をコルバトが改造した3台のFlexowriterで同時に利用できるソフトウェアの開発に着手し、61年11月に4台の端末で利用できることを実演した。ティーガーは割り込みを利用して、実行中のプログラムを中断して磁気テープ装置に移動させ、他のプログラムを処理した後でメモリに復帰させる初歩的なOSを記述した。このOSはMIT計算センターのIBM 709のバッチ処理に影響することなく、TSSによる対話型処理を可能にし、CTSS(Compatible Time-Sharing System、互換タイムシェアリング・システム)と名づけられた。

ティーガーは、多数の同時ユーザをサポートするには処理能力の向上が必要と考え、IBM 704の30倍以上の性能をもつIBM 7030(STRETCH)の購入を求めた。このマシンは大学には高価過ぎ、ティーガーのOSもごく初歩的だったので、研究グループは提案に反対した。ティーガーはプロジェクトを離れ、マッカーシーがプロジェクトリーダーに選出された。しかし、マッカーシーも人工知能研究に専念することを望み、62年9月にスタンフォード大学に移籍する道を選んだ。

コルバトは 62年に准教授に昇進し、TSSの開発責任者になった。モースが米国科学財団の支援を取り付け、コルバトは62年春に利用可能になった最初のトランジスタ・コンピュータIBM 7090で、CTSSの開発に取り組むことになった。このマシンはIBM 709とほぼ同じシステムで処理能力が6倍あり、OS専用のメモリを特別に追加していた。

コルバトは、マージョリー・マーウィン・ダゲット、ロバート・ディリー、ロバート・クリーシーとともに、後にUnixの特色となる階層型ファイルシステムの開発に取り組んだ。かれらは、この過程でメモリ内プログラムの保護、タイムスタンプ、パスワード、更新済みファイルを探索してバックアップするデーモンなどを開発した。

CTSSは、ユーザ・コマンドの解釈、ディスクの読み書き、ユーザ・プログラムの利用状況の監視と実行プログラムの切り替え、ディレクトリなどOSの中枢機能だけを担い、その上層で様々なコマンドを追加開発できた。コルバトは、CTSSを新しく導入するユーザは必要に応じて自分自身のCTSSに改造できるというオープンシステムの考え方をもち、今日のマイクロカーネルに相当するOSを初めて開発した。

CTSSは62年11月に、16台の端末でIBM 7090を同時に利用できることを示し、ARPA〔Advanced Research Projects Agency、高等研究計画局、のちの国防総省高等研究計画局(DARPA)〕のJ.C.R.リックライダーにMITの実力を印象づけた。

プロジェクトMACとオンライン開発環境

リックライダーは62年10月にARPAに着任し、年間1,000万ドルの予算でTSSを相互接続する汎用的なネットワークの構想を現実に近づけるべく活動を開始した。かれはまず11月に、600万ドルの予算が割り当てられていたSDCを、マッカーシーとコルバトとともに訪れ、SDC(System Development Corporation、世界最初のソフトウェア開発会社)が保守を担当しているSAGEのコンピュータのスペアマシンAN/FSQ-32で、TSSを実現するよう説得した。かれは次いで、MITのファノにARPAが支援する情報ユーティリティのパイロットシステムのプロジェクト・リーダーになって若手研究者のまとめ役になるよう示唆した。

ファノはイタリアから亡命した電気工学の教授で、戦後にクロード・シャノンの情報理論の研究者となり、コンピュータと人工知能の当時の状況に通じていた。かれは、リックライダーの勧めに応じて11月26日に2頁の提案書をMIT上層部に届け、翌日に学長のジュリアス・ストラトンにモースとともに面会した。ストラトンは、巨大なコンピュータを要するプロジェクトをどこで始めるのか尋ねた。ファノは、キャンパスの北隣にある545メインストリート(現200テクノロジー・スクウェア)にある9階建てのビルの8階と9階が空いていることを話すと、ストラトンは同意した。

ファノは63年1月にプロジェクトをARPAに正式に提案し、2ヶ月後に年間300万ドルの助成を獲得しプロジェクトをMAC(Multiple Access Computer/Machine Aided Cognition)と命名した。ファノはこの名称により、TSSのグループと人工知能グループの研究を共通の頭文字で表現し、ARPA支援の1つのプロジェクトとして資源を共有させた。リックライダーは63年7月に、このビルにARPAの支援を望む研究者を集めた研究会を開催し、コルバトは参加者にTSSの講義とCTSSを体験させる役割を担当した。

コルバトは63年10月にプロジェクトMAC専用のIBM 7094 IIを受け取り、1週間でCTSSを移植した。このマシンもOS専用のメモリを装備した特別仕様で、36ビット×32kワードのメモリを128ブロックに分割してユーザに割り当てることができた。1,200bpsのモデムでCTSSにダイアルアップ接続でき、プログラマは様々な場所から開発プロジェクトに参加できる。

このオンライン環境は当時としては画期的で、サルツァーが開発した電子写植用コマンドのTYPSETとRUNOFFによるワープロ、トム・ヴァン・ヴレクのMAILコマンドによるユーザ間電子メール、アレン・シャーのファイルをまとめて圧縮できるARCHIVEユーティリティが開発され、プログラマによるコラボレーションを可能にした。

関連記事
新刊情報
5G NR(新無線方式)と5Gコアを徹底解説! 本書は2018年9月に出版された『5G教科書』の続編です。5G NR(新無線方式)や5GC(コア・ネットワーク)などの5G技術とネットワークの進化、5...
攻撃者視点によるハッキング体験! 本書は、IoT機器の開発者や品質保証の担当者が、攻撃者の視点に立ってセキュリティ検証を実践するための手法を、事例とともに詳細に解説したものです。実際のサンプル機器に...
本書は、ブロックチェーン技術の電力・エネルギー分野での応用に焦点を当て、その基本的な概念から、世界と日本の応用事例(実証も含む)、法規制や標準化、ビジネスモデルまで、他書では解説されていないアプリケー...