我が青春のコンピュータ


26 軌道計算1

学園祭は2日目である。  早朝から学生たちがキャンパスに集まりあれやこれやと本日の準備作業に追われていた。

8時30分。 地球物理学研究室(略称:地物研)。

「失礼します!」 (ヨシオ)

「どうそ!」 (カワイ先輩)

ヨシオは緊張の面持ちでドアを開いた。

部屋の内部は観測装置や専門書、それに輪ゴムで留められたパンチカードの束が目に付く。  カワイ先輩の机の上には、おそらくPC-1211のプログラムが保存されているであろう カセットテープが数十個ほど積まれていた。

「ホントに申し訳ないね! コーヒー飲む?」 (カワイ先輩)

研究室の流し台には、コーヒーのドリッパーが備えられていた。

「いただきます!」  (^_^)  (ヨシオ)

美味しいコーヒーをいただきながら、カワイ先輩は地物研の研究内容や観測装置などについて ヨシオに説明してくれた。


「それじゃぁ準備しようか。ここに置いてね。」 (カワイ先輩)

研究室の作業台には既にカワイ先輩のPC-1211が準備されていて、 その横にはヨシオのPC-1211を設置するであろうと思われるスペースがぽっかりと空いていた。

ヨシオはプリンタを接続したPC-1211をそのスペースに設置した。

「それじゃ、プログラムをロード(読み込み)するけど、 ポケコンの中に何か大事なプログラムが入ってない?」 (カワイ先輩)

ヨシオのPC-1211には、AのN乗を計算するプログラムなど、何本かの練習用のプログラムが入っていたが、 どれも昨日のうちにカセットテープに保存していた。

「はい! 保存してますから大丈夫です!」 (^_^)v (ヨシオ)

「それでは始めよう。」 (カワイ先輩)

カワイ先輩は何本かのカセットテープを持ってきた。

「先輩、そんなに必要なんですか?!」 (ヨシオ)

ヨシオはこれまで練習用に打ち込んできた短い数十本のプログラムをすべて保存してきたが、45分のカセットテープの3分の1も使っていない。

「そうだよ。プログラムの本体だけで60分テープが2本と、データが1ケースに付き1本必要になるんだ。」 (カワイ先輩)

「さあ、これからが大変だ!」 (カワイ先輩)

カワイ先輩はヨシオのPC-1211にプログラムをロードし始める。

「今、プログラムの第1ステップのロードを始めたからね。」 (カワイ先輩)

「第1ステップ...?」 (ヨシオ)

「ヨシオ君は大きなプログラムをまだ作ったことが無いだろうから、ちょっと説明するね。」 (カワイ先輩)


「ポケコンに打ち込むことのできるプログラムの文字数なんだけど、 それには限界があるんだ。 PC-1211の場合は最大で1424文字しか打ち込めない。 それと、変数の数も26個までと制限されている。

パソコン用のメモリ DDR SDRAM (DDR400)

プログラムやデータは、メモリと呼ばれる部品に書き込まれるんだけど、 ポケコンではその記憶容量があまりにも小さいんだ。

これだと大きなプログラムやデータを利用することができないので、 プログラムやデータを何個かの部品に分けて、 PC-1211にロードできるようにしておくんだ。


CHAINコマンドによるプログラムの分割処理

カワイ先輩のやっていることを右図で説明しよう。

  1. プログラム1を読み込んで実行し、初期データを読み込んで計算した後に、計算結果を中間データ1として保存する。
  2. プログラム2を読み込んで実行し、中間データ1を読み込んで計算した後に、計算結果を中間データ2として保存する。
  3. プログラム3を読み込んで実行し、中間データ2を読み込んで計算した後に、計算結果を印刷する。

この例では、プログラムの実行を3回繰り返しているが、この処理を行うにはその途中で8回もカセットテープを入れ替えなければならない。

カワイ先輩の軌道計算プログラムの場合、この作業を5段階繰り返して、やっと1個の計算結果をることができた。 その間に、カセットテープの入れ替えを14回も行わなければならなかった。

たった1個の計算結果を得るために、実に30分以上の時間を費やしていたのである。 しかもその間、カセットテープ入れ替えるためにずっと待機している必要があった。

(スゴイ大変そう!...) (・◇・;) (ヨシオ)


当時のメモリ(内部記憶装置)はとても高価であり、大容量のメモリを搭載することは技術的にも経済的にも難しかった。 大規模なプログラムやデータを扱う場合、常にメモリ不足に悩まされたのである。

そこで汎用コンピュータでは、上記の作業を自動化して行うための仮想記憶という機能が備わっていた。 カセットテープの代わりに、高速な読み書きが可能な磁気記憶装置を使用するもので、プログラムは実際にコンピュータに搭載されているよりも数十倍から数千倍ものプログラム領域や変数領域を取り扱うことができた。

仮想記憶機能は、後にパソコンの基本ソフトにも標準装備されるようになる。

下図は現在私の使用しているパソコンの仮想記憶の設定状況である。  実際に搭載されているメモリに加えて、最大で約3ギガバイトの仮想記憶領域を使用できるよう設定している。

Windows XP の仮想メモリの設定例

★★ 仮想メモリを確認してみよう! ★★

自分のパソコンの仮想メモリはどれくらいあるのか気になりませんか? こうしたら確認できますよ!

  1. コントロールパネルを開き、さらに「システム」を開きます。
  2. 「詳細設定タブ」をクリックします。
  3. 「パフォーマンス」の「設定」ボタンをクリックします。