54年前の超高性能コンピュータプロジェクトで開発したOSの構造を説明してみる
はじめに
入社した時、配属先は超高性能電子計算機の研究開発プロジェクトでした。
あれから54年、手許に関連資料は残っていません。
しかし、OSの担当した部分の構造はまだ頭の中にあります。
資料なしで書けるところまで書いてみます。
OS7の基本構造
私が担当したのは、OSの管理プログラムのジョブ管理と呼ぶ部分です。
図は東大大型コンピュータセンターで稼働していたHITAC 8700/8800のOS7のものです。
OS7は超高性能電子計算機の研究開発プロジェクトで開発したOS70の成果物を利用しているので、OS70とOS7は同じ構造でした。
ジョブ管理の構成
ジョブ管理は以下から構成されていました。
なお、ジョブとは、プログラムの実行の単位です。
1970年入社組の新人ひとりが1つを担当しました。
なお、私の担当はマスタースケジューラとコンソール制御でした。
イニシャルプログラムローダー:ブートストラップから起動され、システムプログラムをロードして配置し、マスタスケジューラを起動します。 開発期間中は、大量のパッチカードを読み込んでバグ修正していました。 OSのバグ対策とは、OSを修正するパッチカードを作る作業でした。
マスタスケジューラ:イニシャルプログラムローダーから起動され、リーダー、ジョブスケジューラ、ライター、コンソール制御を起動します。 仕事はいくつかの制御プログラムの起動と終了だけしかありません。 早期に開発作業はなくなりました。
リーダー :カードリーダーからジョブを読み込みます。 カードは80桁のASCIで表現された英数字で書いた数枚の制御文です。 入力ファイル、出力ファイル、実行プログラムなどの定義文です。
ジョブスケジューラ:読み込まれたジョブを順次実行します。コンピューターの能力の限り、複数のジョブを同時に実行します。
ジョブ :ジョブを実行し、結果をスプールに書き込み、終了します。
ライター :ジョブの実行結果をプリンターに出力します。 用紙切れ、用紙の種類の変更、紙送りの異常など、当時のトラブルも現在のプリンタと同じでした。
コンソール制御 :コンピューターの捜査員がジョブの実行やコンピュータの実行をコンソールと呼ばれる端末で管理します。 ジョブの実行管理とは、異常時の強制終了とか、優先順位変更などです。
ジョブ管理の構成の理由
いまのプログラム(ジョブ)の実行方法は、アイコンをダブルクリックするか、メニューから起動するというものです。
しかし、当時はジョブを待ち行列に入れておいて、順番に起動するという方式でした。
当時の大型コンピューターは、今のパソコンやスマホと比べるまでもないほど大きくて高価でした。それにも関わらず、低性能でした。
その大型コンピューターをコンピューターの能力の限り有効に活用するには、24時間休ませないで仕事を与え続ける必要があります。
そのため、人は昼夜を問わず、ジョブを準備し続ける必要がありました。
だから、図のような構造だったのです。
ジョブの実行方法が変わった
労働単価はGDPに比例して年々増え、一方コンピュータの価格は1.5年で半分に下がり、レンタル費も下がっていったのです。
だから、わずかの間に、人間の労働の単価と逆転してしまいました。
そのため、コンピュータはいつでも好きなだけ利用できるようになり、パソコンではプログラムの起動方法が変わってしまったのです。
当時のジョブ起動方法は復活することのない、昔物語になったのです。
なぜこんな短期間でコンピュータの利用環境が変わったのか、その変化の源泉を考察をしたことがあります。
終わりに
54年前のことなんて、これほど覚えているとは思いませんでした。
頭の中で考えてみると、いろいろ思い出されるので、書けるかもしれないと思えてきました。
書いてみたところ、ここまで書けました。
一緒に開発していた同期生の名前や姿が懐かしく思い出されてきました。
当時のOSの仕組み、その時代背景を知っていただければ、今後の方向を考える参考になろうかと思います。
【マガジン】IT技術
AIは年寄りに若者の気持ちを教えるツールになれる?
去年前半の生成AIは嘘つきだった、去年後半の生成AIはバカだった、今年の生成AIにあなたは何を期待しますか?
トップの座を脅かすとこのような試練が訪れる(前編)
PhotoSwiper V5を使っておしゃれな写真集ウェブページを簡単に作成する
Blazor.BrowserExtension.Templateでブラウザ拡張機能を作る
6年前に新品10万円台だったパソコンを1万円台中古パソコンに買い替える
高齢者、Excelでシートの目次を作って情報をすっきり管理
クラウドを利用しよう、パソコンとスマホでデータ共用・・・
54年前の超高性能コンピュータプロジェクトで開発したOS・・・(本記事)
よろしければサポートお願いします! いただいたサポートは全て『「思い出の場所」の記事とGoogle地図を関連付けるWeb地図アプリ』のLancersでのプログラミングの外注に使わせていただきます。 よろしくお願いします。