メインフレーム・コンピューター
2013/06/16


私が就職したのは1978年4月だったのだが、当時の就職活動は前年の10月が解禁だった。
今と違って半年の勝負だったのである。
もっとも有名大学と有名企業は8月頃にはもう全員決まっているという話しだった。
そして残念ながら私のように有名ではない大学の学生は、当然のように残り物を求めていたが、1977年の10月頃は急激な円高不況で、求人そのものが無かった。
新聞のニュースでは毎日のように「日本の半分の企業が倒産する!!」などという、今から思えば嘘八百の刺激的な記事が出ており、「お先真っ暗」といった心境だったのである。

そんな状況の中、私の就職活動はこれまた当然のように片端から全滅で、今言うところの「お祈りメール」を受け取っては落ち込んでいた。
そんな中でも比較的求人が多かったのが「コンピュータ・ソフトウェア」産業だった。
私は嫌だったのだが、背に腹は変えられず「コンピュータ・ソフトウェア産業」でしかたなく働き始めたのだった。
当時はまだIT産業という概念も無く、親戚の叔父から「おまえの会社は、いったい何を作っているンだ?」などと言われた。

派遣先は、とある研究所で、そこで半分オペレーター、半分はコンピュータの運営とユーザー(研究者達)のサポートという仕事だった。
私が働きだした頃は、顧客である研究所がコンピューターの拡張を計画していたときで、下の写真に写っているマシンは、私が入社した年の秋には3031というかなり大きなCPUに変更されたし、それに伴ってOSもVS1->VS2->MVSと、どんどん変わっていった。

また、ここにはザイネテックス社の平板型の大型のX-Yプロッターやら、ディジタイザー、ホストマシンと通信回線で結ばれたデックのミニコンと、グラフィックディスプレイ、カルコンプ社だったと思うが静電プロッターや、当時珍しかったアプリコン社のカラー・プロッターなどなど、今思えばすごくバラエティーに富んだ施設だったのである。
もっともそれだけに各機械のメンテナンスはけっこう手間がかかり、忙しいときはマシン室の中を走り回って操作していた。

仕事はオペレーションが基本3人体制で、午前、午後、残業時間でローテーションを組んで行い、忙しくなったら応援する形態で、オペレーション外の時間は研究員の手伝いなど、テーマを与えられてプログラムを作ったり改造したりしていた。
朝の当番の人はIPL、終了の当番はSMF(稼動状況のログ)を取ってマシンのシャットダウンを行った。

土曜日は午前中だけの半ドンで、研究員がマシンを使わなくなると、マシンルームの掃除やら備品の補充(カードやストックフォーム)、カード・パンチャーから出るゴミ(穴を空けたときの四角い切れ端)がビックリするほど大量に出るのを始末したり、テープユニットのヘッドをアルコールで拭いたりと、けっこう作業があった。

今思い出すと、土曜の半ドンはずいぶん良い制度で、同僚のM君と仕事場のある虎ノ門から新橋まで歩いて、吉野家の2号店(今は場外馬券売場になっている)で牛丼を食って秋葉原に行ったり、皇居へ行って外人の観光客と話したり、半蔵門から四谷の方まで散歩したりと、なんとなくマッタリとした半日が楽しかった。



I37001
この写真は、私がコンソールに座っているところで、入社したばかりの1978年の夏頃に撮影されたと思います。
奥に立ってラインプリンターを覗き込んでいるのが先輩のSさんで、私はちょっとこの人が苦手で、なかなか意思の疎通がうまく出来ませんでした。
もちろんSさんからすると、私の扱いに苦慮していたのだと思います。

私の横にあるパネルがCPUの状態を示しているもので、私の頭の高さくらいに2列半にネオン球が並んでおり、動作中はチカチカしていました。
このマシンはIBMのシステム370-148というもので、物理メモリがどのくらいだったか、もうぜんぜん覚えていません。
おそらく数メガバイトだったと思いますが、なんにしろ今のパソコンに比べれたら「たったこれだけ?」というほどの量だったと思います。

下にあるダイアルは16進数のダイアルで、表示するアドレスやらIPLを行う装置のアドレスやなにやらを設定しますが、私はあまり使った覚えがありません。
ごくまれに、何らかのトラブルでインディペンデント・ユーティリティ(OSを動かさずに、直接コンピュータを実行させる)をカードリーダーから動かす場合に、IPLアドレスをディスクからカードリーダーのアドレスに変更したりしました。

主に使ったスイッチは、電源スイッチと、時間設定のスイッチ(IPL時にコンソールから時間を入れますが、有効にするにはトグルスイッチを押さないといけませんでした。)くらいだったと思います。

並んでいるネオン球の上のパネルが開くようになっており、蓋を開くともっと沢山のネオン球とスイッチがあったと思いますが、もう記憶がさだかではありません。

パネルの左(私の背中の方)にプリンターがありますが、常にシステムコンソールに出たログが印刷されるドットマトリクスのインパクト・プリンターで、一日中、「チー、ガチャン」と音を出して動いていました。


この写真は、コンソール付近から右側を見たところで、テープ・ユニットの前に立っているのが同僚のM君で、彼とは休みの日に自転車で出かけたり付き合っていましたが、3年くらいで彼は「もうコンピューターの仕事は嫌だ!!」と言い出して、事務員かなんかに転職をしてしまいました。

もっとも、1年くらい経って電話があり、「毎日、毎日、全く同じ仕事の繰り返しで、オレはだんだんバカになっていっているような気がする」などと愚痴るようになってしまいました。
さらに一年後くらいに、「情報処理試験の一種に受かった、またコンピューター業界に復帰する」という連絡がありましたが、それきり連絡が途絶えてしまいました。
今はどうしているのでしょう?

M君の後ろにあるのが「カードリーダー」で、カーソルを写真に乗せると黄色の線で強調されます。


読み込むカードは下の写真の物で、たいへん上質の厚めの紙です。
すべりが良いので、私達は不要になったカードを二つ折りにして靴べらとしても使っていました・・・・(^^;

カードリーダーの上に角のように出ている部分が「スタッカー」と呼ばれるもので、ここにカードをドサドサと2000〜3000枚くらいも乗せたと思います。
スタートすると、ダダダダ!!と、すごい勢いで読み込んでいって横のストッカーに溜まります。
もっとも、使いすぎてよれてきたカードや、時々外部から持ち込まれるカードで安物のものは、機械の中でクシャクシャに詰まってしまい(「ジャムった」と言った)、機械を開けて取り出すようなこともよくやりました。

そのカードを数万枚も入れる場合があって、そのときはつきっきりで追加していきます。

カードリーダーの向こう側のあるのが「カードパンチャー」で、プログラムやデータのコピーはこれを使いました。
現代では「コピペ」で簡単にデータをコピー出来ますが、この頃はIEBGENERというユーティリティー(システムに用意してあるプログラム)を使って、物理的にコピーするので大変です。
数千枚とかそれ以上のカードをコピーするとなると、「ガッチャン、ガッチャン」と、えらい時間がかかりました。

I37003 I37017
当時、コンピュータへの入力は、このパンチカードを数百枚から多いときには数万枚使って行っていました。
サイズは187mm×83mmくらいの厚めの紙で、一枚に80桁の文字が打てます。

一文字毎に一行の欄に穴が空けられるので、当然ながら一文字でも間違えればカードが一枚無駄になってしまいます。
今思うとゾッとしますが、プログラムの開発も当然パンチカードを使って行っており、プログラムのミスは全てカードを打ち直していたので、一つのプログラムを作るのにもたいへんな分量のカードを無駄にしていました。
これは、膨大なコストがかかるということです。

もっとも、周辺装置のX-Yプロッターのプログラムはナント!、紙テープで、もう誰もプログラムは出来ない時代になっていました。
プログラムの変更はしませんでしたが、使っていると紙テープがだんだん痛んできてコピーしなければなりません。
テレタイプという機械でコピーもやりましたが、もうどうやったか全く思い出せません。

奥の部屋にあったディジタイザー(地図データなどをディジタル化する機械)なんぞはもっとすごくて、配線でプログラムするものでした。
膨大なコネクターが背後にあり、あそことここを繋いで、こっちとあっちを繋いで、と、プログラムしていくものでした。
もっとも、私の上司がプログラムの変更にトライしたそうですが、結局出来ず、メーカーの設定したプログラムのままで使っていました。
私達にも「変更禁止」の命令が出ていました。

I37004 pzl501
左のカードの束は、私が学生の時にFORTRNで作った、右のパズルを解くプログラムで約650枚あります。

当時は、コーディング・シートに手書きでプログラムを書き、何回も見直しをして、ようやくカードにパンチしました。

次のコンパイルの工程でも、出力はラインプリンターで用紙(ストックフォームと言った)に印刷されるため、一回のコンパイルだけで数十枚のストックフォームを使ってしまい、これまた膨大なコストがかかってしまいます。

そのため、上司からは「コンパイルエラーは一回で全て無くせ」というようなプレッシャーがかかりました。

I37014 I37015 私の家に一冊ずつ残っているFORTRANとCOBOLのコーディングシート。
今でも何処かで売っているのでしょうか?

コーディングシートには、鉛筆で書くのがお約束でした。
もちろん書き直しが多いためで、消しゴムで消しては、また書き込むという作業を繰返すので、受験勉強以上の鉛筆だこが出来ました。

私が仕事場でプログラムをボールペンで書いていたら、一緒に仕事をしていたカナダ人に「あんたはリッチマンだ!!」と言われたことがありました。



I37010 I37011 これがラインプリンターから出力されるストックフォームという、両側にスプロケットという穴が開いているものです。

文字は半角で133桁ありますが先頭1桁はページの制御記号として扱われ、実質は132桁になります。

左の写真の青いバインダーがストックフォーム専用のバインダーで、リストはこれを何百も使って整理していました。

右のストックフォームに打ち出されているのが、私が作ったパズルを解くプログラムで出力された回答の最初のページです。


I37005
仕事場は研究所だったのでFORTRANが使われていましたが、当時のFORTRANは文字の処理が出来ませんでした。

もちろん「できないから文字の処理はしない」などということは出来ませんので、だんだんとアセンブラーのプログラムをリンクして使うようになります。
そこで私達の登場ということで、FORTRANとアセンブラを組み合わせてユーザーの要求に答えるということになります。

当時、会社で読んだアセンブラの教科書です。
とくに左のオーム社の入門書は、スミからスミまで舐めるように読みました。

もっともそれだけでは駄目で、IBMが供給していたPIと呼ばれる教科書でもう一度勉強したと思いますし、IBMが提供するマニュアルが重要でした。


I37006
1970年代にアセンブラーを使っていた人達には懐かしいものだと思います。
当時IBMがアセンブラーのプログラマーに配っていた、「リファレンスカード」(ジャバラと呼んでいた)です。

丈夫な厚紙で出来ており、システム370の基本的な機械語の命令セットや、ディスクやテープユニットのチャネルの制御コード、アセンブラ命令などが、コード表やらと一緒に載っています。

I37007 1980年代になると、厚紙のジャバラから、右の写真の右の黄色の普通の手帳形式になりました。
左の茶色の手帳はTSOコマンド・ランゲージのリファレンスですが、私は使っていた記憶はあるのに、内容を全く覚えていません。

おそらくは、TSOコマンドを使っていたのは短い期間で、すぐにISPFを使い出してしまったためだと思います。

I37009
このマニュアルは、「OS/VS2 MVS 監視プログラム・サービスおよびマクロ命令」というものです。

OS中枢のマニュアルは英文のものしかなく、チャネル制御とか、エクジット・ルーチン(Exit Routine)とか、チェックポイント・リスタートとか、ただでさえヤッカイな処理なのに英語がニガテな私が読むと、誤解だらけでよけいにトラブルが多くなりました。

ウンウン苦労している私を見かねたIBMのSEが個人的にくれたのが、このマニュアルでした。

タスクを作ったり、同期させたり、動的にプログラムを制御したりと、色々なテクニックが使えるようになりました。


ちなみに、チャネル制御とは外部とのデータのやりとりをOSの通常のマクロを介在させないで行おうとしたものです。
他のマシンで作ったテープで、1ブロックが数メガバイトあるテープを読み込もうとしました(OSの処理出来るブロックは、最大32760bytes)

エクジット・ルーチンはOSに起こるイベントのアチコチにこちらの意図した処理を行わせるもので、JOBカードやEXECカードに掟破りのパラメータが入っていないかとかチェックしたりしました。
そのルーチンを作成したときに、ついでに私達オペレータの投入するJOBだけは最優先で実行するようなルーチンを仕込んでしまい、混んでいるときに顧客から大ブーイングが起こったことがありました・・・・(^^;

チェックポイント・リスタートは、物理的に長時間にわたる処理があり、処理は続行したいのだが、ビジネス上何日も徹夜して動かし続けるわけにもいかないときに、ある時点から処理を再開出来るようにしたいという要望があったりしたものでした。

I37012
これはIBMから定期的に送られてくるPUT(Program Update Tape)というもので、インストールされているOSやらユーティリティなどのアップデートを行うテープです。
テープの幅は1/2インチで、VHSのテープと同じです。
このテープは特別な短いもので、通常は1200フィートのものか2400フィートのテープを使っていました。

箱の上に黄色の輪っかが置いてありますが、テープの後ろにはめ込んであるリングで、これを外すとテープに書き込みが出来なくなるプロテクトになっています。
コンピュータ・ルームには当然書き込み禁止のテープがどんどん増えるので、このリングが沢山余ります。
夜勤の暇な時間などには、同僚とコンピュータ・ルームの中で、輪投げなんぞをして遊んだりしていました。

このテープの中には更新すべきプログラムが入っています。
現在のパソコンで、時々シャットダウンのときに「重要な更新中です、電源を切らないで下さい」などと表示が出て、なにやら自動でダウンロードしますが、それを大型コンピュータでもやっていたわけです。

手動ですが、修正プログラムが用意されており、「レシーブ」、「アプライ」、「アクセプト」という三段階でシステムを更新します。
各々重要な意味があってめんどくさいのですが、私はOSそのものも「コンパイル」して「リンク」して作っているのを見て仰天しました。

今思えばあたりまえのことですが、入社したての頃は、OSというものは、なんだか特別なもののように感じていたわけです。

しかも、たま〜に「コンパイルエラー」なども出てきたり、ZAPというパッチ(つぎはぎという意味)をあてるプログラムを使って、ロードモジュールを直接変更する場面さえありました。

私は3838という、日本ではあまり使っていなかった「ベクトル演算プロセッサー」という機械の管理も担当していたので、初期にはエラーがけっこう多くて、最初はビビッていましたが、そのうちにシステム実行中にさえTEMPZAP(テンポラリーにパッチをあてるもので、IPLすると元に戻る)で、LPA(リンクパックエリアというOSの中枢)にパッチをあてる、などという掟破りも平気でやるようになりました。

I37013
この8インチフロッピーディスクは、私が管理を担当していた3874というコントロール・ユニットの制御ディスクで、沢山ある3270ディスプレイを制御するものでした。
日付を見ると1980年の11月なので、入社3年目で、虎ノ門から日比谷に作業場所が移っている年でした。

上のPUTのテープもそうですが、このフロッピーディスクも、用済みになってしまうと破棄するのですが、この時代は上司に言うと、「内容を消せば、個人で使って良いヨ」と、大らかでした。
このフロッピーも上のPUTのテープも、私の個人の住所録やらなにやらが入っているはずですが、残念ながらもう二度と読み出すことは出来ないのでしょう。

当時はオペレーターの特権で、メインフレームをパソコンのように使っていたのですから、なんだか凄まじいことをやっていました。
一時は3330ディスクを一台個人でキープしてしまい、自分専用のOSまでジェネレーション(インストール)してしまい、遊んでいたりしました。


おおらかと言えば、当時、土曜日の昼過ぎにオペレーターの控え室で終了を待っていたりすると、よく顧客のお偉いさんがフラリと入って来て雑談をしました。

お偉いさんが「これから君ら若いもんはどうすンだね?」と聞くので、「牛丼を食って帰ります」などと答えると、「若いのにだらしない!!、デートの電話くらい会社の電話を使って良いから掛けなさい」などとハッパをかけられたりしました。
今のせちがらい時代からすると、信じられないような大らかさでした。

私は結局この職場に6年半いて転職しましたが、他の会社で仕事をして、最初のこの職場がいかに恵まれていたかということを痛感しました。


HOME