2002/02/11


提督とコンピュータ


最新へJUMP


 提督はどのくらいこの業界でご飯を食べてきたのであろう。いま思えば小学生の文集に、大きくなったらコンピュータの技師になると書いていた。1970年代だぞ。その頃はコンピュータは特別な機械だった。わたしの憧れだったのである。高校を卒業してすぐに東京へ。私が学校で初めてコンピュータにさわってから15年は楽勝で超える。コンピュータって変わったなあ。そんな思いでの数々を日記風に記述するコーナーです。


学生時代のプログラミング(1998/08/09)

 私が高校の先生の意見を無視してコンピュータ関連の専門学校に入学したのは何年前だろうか? そこで、初めて習った言語はFORTRANだったのを覚えている。フォローチャートを書き、それに基づいてコーデング。ここはコーディングシートと呼ばれる紙に書くわけだ。今、プログラム書いている人はこんなシート知らないだろうなあ。そして、コーディングシートを持ちパンチ室に行き、プログラムを80バイトのパンチカードに落とす。ここで、初めてコンピュータに読ませる事ができる形になる。パンチカードを打ち終わったら、それをマシンルームに持って行き、カードリーダーに読ませる。これで初めてコンピュータに読みこまれコンパイルすることができるのだ。実行結果はプリンターにより出力されてくるので、それを本に真剣に机上デバッグをしたものだ。なにしろコンパイルのチャンスは一日2回あるかないか。今のようにとりあえずコンパイル、実行をしてしまえというわけにはいかない。プログラムを修正したくなって、パンチ室に行っても、パンチマシンがいっぱいで空いていないことなんてざらだった。でも、この時講師の先生はこう言ったもんだ。「今は、パンチカ ードになってデバッグ、プログラム修正が本当に楽になった。昔、紙テープの頃は鋏と糊で切り取ってつなぎ合わせなければならなかったのだから。」 確かにパンチカードならば修正したい80バイト分だけを打ちなおし、差し替えれば良いのだから、紙テープに比べればはるかに楽だ。
 選択科目でマイクロコンピュータの授業もあった。今ならパソコンと呼ぶんだろうけど。当時はマイコンもパソコンもほとんど同じような意味合いで使われていたことを記憶している。ここで使用したマシンはTK80を改造したオリジナルマシン。今のパソコンの授業のようにWindowsがどうのExcelがどうのと言った授業はしなかった。マイクロコンピュータのアーキテクチャアそのものの授業が中心。i8080のレジスター構成、データバス、アドレスバスの数、ニーモニック。この時の課題のプログラムがラインエディターを作る事で、試験にはニーモニックをハンドアセンブル(アセンブラのプログラムが書いてあり、それをインストラクション表を見ながら機械語に変換していく作業)してオブジェクトに落としなさいというのがあった。提督はこんな授業がスゴーク楽しかったのを覚えている。提督はこのように思う。昔パソコンができる人とはアセンブラ又は機械語でプログラムが組める人を指した。本当に当時のパソコン雑誌を読んで見ると、投稿プログラムの半分は機械語である。その後、ユーザーフリーエリアも4kから12K BYTES位になり、BASICが使える 人を指すようになった。そしていつのまにか、パソコンを使える人とはアプリケーションを自由に扱える人を指すようになった。いいのかなあ、これで。新聞なんかに記事を書いてるテクニカルライターと呼ばれる人でもこれだもん。
 卒業する年にTSSが使用可能なマシンが導入された。ここで使えるエディターはラインエディターだったんだけれども、パンチカードに比べると神様のように万能に思えたもんだ。ここでBASICのプログラムも良く作った。


学生時代使っていた汎用機(1998/08/09)

 提督が学生時代使っていたコンピュータは、日立のHITAC8150、8250、沖・ユニバックのOUK90/30である。特に授業ではHITAC8150と8250を利用した。8150と8250はIBM S/360のパクリマシンで、8150のメインメモリーが32k BYTES,8250が48k BYTESだった。これらのマシンを、1クラス100人以上で使用していたのだからすごい。カードリーダーがカードを読んでいるときはプリンターが止まる。プリンターを打ち出しているときにはカードリーダーが止まる。いやはや。でも、こんなマシンでPL/Iコンパイラーだって稼動したんだから凄いと思う。今、C++をコンパイルするためにどれだけのメモリーを必要とすることか。どうもこの頃の癖か、メモリーをケチる設計やコーディングに今でも走っているような・・・。


初めて買ったパーソナルコンピュータ(1998/10/18)

 提督が初めて自分のお金で買ったパーソナルコンピュータは、シャープのMZ−80Kというマシンだった(写真は後に発売されたMZ−80C)。1978年発売だったような気がする。マシンスペックは当時としてはかなりなものだった。CPUにZ80の2MH版、メモリーは標準で20KB、最大48KB、10型白黒モニター、1200ボーのカセットインタフェース、クロックおよびサウンド回路(当然単音)が内蔵されていた。更に、MZ−80Kはキットだった。買った本人が組み立てるのだ。組み立てるといっても、今のDOS/V自作機より苦しいぞ。なんったって、キーボードのキー一つ一つを組み立ててはんだ付けまで必要なんだから。ちなみにこの頃はメモリーが16kバイト(Mバイトじゃないよ)で4万4千円もした。でも、この頃はこれを高いとは思わなかった。この頃学校の授業でこのように講師に言われたのを覚えている。「この頃はメモリーの単価が安くなってきて、1bit当り、1円しなくなってきた。」今見れば、何じゃそりゃだけど。でも、今考えるとこのマシンはしゃぶり尽くしたナー。ハードもソフトも完璧に嘗め尽くした。プログラミングの面白さ、コンピュータの 楽しさはこのマシンに教えて貰ったといっても過言ではない。1番燃えていた時代だ。この頃の雑誌もそういう筋の人達を前提として売られていたので、記事もとってもマニアック。プログラムのアルゴリズムの研究や、ハードの改造・制作記事が盛りだくさん。言語の中心はアセンブラとBASIC。ライバル機も個性あふれていて、今のDOS/V一色の世界とはまるで違う。コモドールのPET、アップル社のAPPL−U、タンディラジオジャック社のTRS−80、日立のベーシックマスターレベル2、NECのPC−8001。一部大嫌いなマシンもあったけど、みーんな独自路線で交換性はなかった。この当時は搭載されている基本ソフトもメーカーが作っていたのだ。まあ、この中でNECのPC8001だけがマイクロソフトからBASICの供給を受けてたけど。でも、今考えてもとても楽しい時代だったような気がする。あの当時のままの世界なら、今みたいにわけのわからない素人を相手にしなくてもよいから、楽だろうなー。

昔のパソコン達の広告

   


    

 
   


社会人になって初めて触ったコンピュータ(1999/07/04)

 提督は、某銀行のコンピュータ関連会社に入社する。そこの銀行のコンピュータの仕事。そこで初めて見たマシンは、IBM3031というマシンだった。それが2台あった。そのほかにNCRやバロースのマシンも違うフロアーに置いてあった。その中で一番大きいのはIBM3031だ。当時の提督にはこのマシンは、とてつもなく大きく見えた(実際とても大きかったけど。)。メインメモリーは4MB。OSは、VS1と呼ばれるシングルアドレス空間の仮想記憶をサポートするOSを使用していた。アドレス空間は16MB。学生時代提督が使用していたコンピュータに比べれば、これはとてつもなくでかいマシンだ。だって、学生時代実習で使用していたマシンは48K位のメモリーしかなかったのだから。まあ、その3031で仕事をすることになった。最初の仕事はオペレーター。オペレーターと言っても、今私が知るオペレータとはだいぶ様子が違っている。この当時(この銀行だけかも)、オペレータはOSの動きをある程度知り、本番JOBでのJCL エラーやJOB ABENDは、オペレータ自らが対応していた。ケースによってはJOB構成を変えてしまう事もしていた。オペレータは、そのJOBがどんなJOBかとか、どのようなファイルのつながりを持っているかを知っているのが普通だった。これは、翌朝までに銀行オンラインを上げなければならない必要性からの教育だったかもしれない。当時、オペレータの先輩は”精神棒”と呼ばれる、紙を硬く丸めて作った物を持っていた。どんなふうに使うかと言うと・・・。後ろから新人が仕事をしているのを見て、間違うと殴るのである。また、ひどい人になると、いきなり腰掛を蹴飛ばして転ばしてしまうという事もあった。こうやって仕事を覚えさせられた。まだ、これは仕事だから良いとして、早番の新人は早朝に来て(7:30分くらい)、IPLをし、その後お湯を沸かし、お茶の準備をして先輩方を待つのである。殆ど体育会ののりである。ここでオペレータを3年位修行。その後開発部門に移り、コントロール系の仕事をすることになる。この当時のマシンは3081が3台。OSはMVS/XAに変わっていた。当然コントロール系の仕事なので、IBMのSEと仲良くなり、仕事も彼らと一緒に行うという生活が続く。新人の女子行員などは、提督のことを最初IBMのSEと思っていた人もいるらしい。使う言語もアセンブラ中心。ここで提督は28才位まで働くわけだが、ここで学んだ事が今とても役に立っている。コンピュータやOSについてかなり詳しく学ぶ事ができたと思っている。話しを3031に戻すが、このマシンのスペックはメモリー32MBの水冷マシンだった。MVS/XAというOSは、2GBまでの仮想アドレス空間を、無数の立ち上げる事ができるOSである。
 今思うと、当時のコンピュータは今の最新のコンピュータと比べると子供である。しかし、このマシンで銀行のオンラインがちゃんと動いていたのは事実なのだ。やはり凄いと思う。例えば、今のパソコンに銀行のATMやCD、端末をつないで一日中無事に動くと思います? そう考えると、やはりパソコンはパソコンなのかなあとも、思ってしまう。
(ちなみに今は精神棒は廃止されているそうです。)



ボッコちゃん(1999/07/18)

 みなさんは、ボッコちゃんという小説をご存知? ほとんどの人は知っているでしょうね。星新一の有名な短編小説。ボッコちゃんは、もともと「人造美人」という短編集に収録されていた。現在は、ボッコちゃんという短編集に収録されている。念のためにボッコちゃんとはどんな話かと言うと、ある酒場のマスターが、一目見ただけでは見分けのつかない人造美人を作る。この人造美人の名前がボッコちゃん(でも、なんかださい名前。ユキコとか、エミコとかケイコとか・・・。普通の名前は思いつかなかったのかな)。でも、おつむの方までは手が回らなく、簡単な受け答えができるだけ。名前はと聞かれればボッコちゃん。年はと聞かれればまだ若いのよ。僕のこと好きかいと聞かれれば好きよと答える。それでも、みんなは騙され、ボッコちゃん目当ての男で店は繁盛しやがて・・・。という感じなのだけれども。では、何でこんな話を書いたかと言うと、提督はこの話に興味を惹かれ、ボッコちゃんを作った事がある。初めて提督が手にしたパーソナルコンピュータMZ−80K。メインメモリー48KBのこのマシンで、簡単な受け答えのできるボッコちゃんを作って見たかった。直接のきっかけはMZ−80K用のフロッピードライブをボーナスをはたいて(140KB用のドライブ2台で40万円もした)買い、このフロッピーディスクを使用したアプリケーションサンプルを作りたかったから。まず、簡単な日本語推論エンジン部を作る。日本語は語尾で文脈が決定するという特徴を持つため、語尾部分を解析して、適当に答えるというものだ。たとえば、『明日の天気は?』とか、『明日の天気は晴れるかな?』とか、疑問系だと判断すれば、『明日の天気はどうかしら?』と答える。うまく解析できないと、『よくわからないわ。何て答えたらいいの?』と、入力を促し、その結果をフロッピーディスクに記憶すると言った感じのものだった。以外や以外。結構これで会話になった。これを更に改造。MZ−80Kの基盤を改造し、非常に聞き取りにくいがしゃべれるようにした。サンプルのデータは自分の声を入力し、変調を加えて女性らしい声に変えた。これに私の友人が絵を加えてくれ、それなりのボッコちゃんができた。今思っても、今まで作ってきたプログラムの中では傑作の部類に入ると思っている。でも、今はこんなものを作る気はないなあ。まあ、そんな暇もないのだけれども。



CPUのサイクル数 2000/07/06

 ていとくの専門は、大型汎用機。それでもパソコン関連の仕事や趣味も、永い事この業界で生きているのでそれなりに経験がある。ていとくが、マイクロプロセッサについて、初めて学んだとき、そのサイクルは1MHだった。それはインテルの8080。提督が学生の頃だから・・・。自分のコンピュータが欲しくて、MZ−80Kを買った。それに乗っていたCPU Z−80は2MH。その後買ったパソコンはMZ5500。インテルの8086を搭載していた。確か5MH。その後、セカンドマシンとしてX1D,X1Gと続けて購入した。CPUはZ80Aで4MH。そして、衝撃的なパソコン、X68000を手に入れる。今までで、一番インパクトがあり、名機と思えるマシンだ。今でも部屋の押入れに眠っている。CPUはモトローラの68000の10MH。その後X68030を購入。今でも現役。確か25MH。そして、IBM Aptiva初代機を手に入れる。Aptiva Vision.ここから、初めてAptivaという名前が使われ始めた。80486DX2 66MHだ。個人で手に入れた初めてのDOS/V機。でも、X68000の方が使いやすくて優れているような気がしたものだ。そして、MMX P 200MHのAptivaに買い換えた。それでも直ぐに巷のマシンスピードは上がっていく。1年半持たなかった。そこで、AMDのK6−2 300MHをAptivaに差し込む。それも半年。K6−3 400MHに載せかえる。ところが、その頃出た’99800円’のパソコンは500MHのCPUが取り付けられていた。ていとくは仕方なく、AMD ATHLONを用いたパソコンを自作する。600MHを650MHのオーバークロックで使用した。そして、この夏、半年使ったこのATHLONを750MHに載せ変えた。凄すぎる・・・。このCPUのクロックアップの速さ。いいかい、ていとくは2MHのZ80で稼動するMZ−80Kを、およそ5年使った。不便はなかった。その後5年経ってMZ5500。インテルの8086の5MH。2倍ちょっとのクロックアップ。実際はアーキテクチュアが異なるため、それ以上の性能差があるが。そして今持っているPCのCPUサイクルは750MHである。冷静に考えれば750倍のクロックアップ。性能はその何倍だろう。このAMD ATHLONのフルスピードキャッシュ版、L1キャッシュが128KB,L2が256KB。ちょっと前のパソコンの全メモリー容量より多い。何てことだ。何処まで行くのか、何処まで追えるのか、どこでていとくは終えるのか・・・。



ユーザー感覚の不思議(GUIシステムとCUI) 2003/02/11

 何度も話してきたが、ていとくはこの業界に長くいる。実績を残してきたかどうかは別として。当然長くやっているから、色々なシステムや色々な人たちとも合って来た。あきらかにコンピュータについて勘違いをしているような人が担当者のシステムも幾つか見てきた。そんな中でこの頃感じることがある。根本的にみんな間違っている人が多くないか??と。 オンラインのシステムがコンピュータを用いて実現されてから、そのレスポンスを高めることは非常に重要な課題だった。そうは言っても必要以上に速い必要は無く、ストレス無く事足りれば良いわけだが、このストレス無くシステムを構築するのは意外と難しい。今でこそていとくは、基盤技術系のSEのような仕事をしているが(だんだん現場から離れ気味)、若い頃はオンラインシステムの構築を幾つかやってきた。とある、金融機関のオンラインシステムを作成していた時の事である。設計が終わり、責任者に技術的なレビューを行った。過去の取引履歴をオンラインで照会するロジックの所で指摘を受けた。「このDB構造では、過去の履歴を照会するために、最大何枚の取引履歴セグメントを読む必要があるか?」 ていとくは、このように答えた。「一つの照会について、必要なDBレコード数は一つです。従って、DBレコードとしては、1レコードだけの読み込みです。オンライン回答のために保存しておくセグメントは1週間です。おそらく1DBレコードあたり、100枚から200枚程度のセグメントを読むことになるでしょう。」 この答えで、この設計は見直しとなった。つまり、オンラインシステムで、回答データ確定の為だけに100から200のDB レコード内のセグメントを読むことは、レスポンスの悪化につながり、システム全体のスループットが落ちるという判断だった。ていとくは、設計を見直し、一日単位に取引履歴のセグメントグループのオカレンスを作成し、できる限りセグメントへのアクセスが限定できるように工夫した。昔は、回線速度が速くても9600bpsという時代だった。オンラインレスポンスをキープすることに苦労が必要な時代だった。これは、ていとくの思い出話だが、今でもオンラインレスポンスには皆さんシビアである。おそらく端末の前に座り、コンピュータに指令を送ってから5秒以内に答えが返ってくることを皆さん期待する。情報システムの担当者もそれを目指す。ただしである。これはCUIベースのオンラインシステムの場合である。これがGUIシステムに変わると、皆さんとてもレスポンスにおおらかになる。端末の前に何もしないで30秒以上座ることも苦にならないようだ。情報システムの担当者に、「こんなシステムを作ると、レスポンスは保証できないですよ!」 と注意しても、それでも良いという。もっと変なのは、今までCUIで行っていたことを、見栄えだけを良くするためにWindowsなどのフロントエンドを立てて、GUIかする。結果レスポンスだけが悪化して不安定になる。こういうシステムも見てきた。もちろん、必要な場所、必要なシステムはどんどんGUI化していくべきだけど、なんでみんな、GUIのレスポンスが悪いことに文句を言わないのだろう。文句を言わないと汚い設計のシステムが増え、資源を余分に消費し、結果コスト高なシステムが増えて行くような気もするが。GUIのレスポンスが悪くても文句を言わないのは、インターネットにみんな慣れたから?


このページのTOPへ  黄色のページ索引へ  ホームへ