電子頭脳という、ただの計算機
関数電卓は、出てすぐ計算尺に変わり工学部御用達になって、「君でもちゃんと計算できるじゃないか」という、革命を起こしたが、それでもただの計算機である。誰かが作ったプログラム通りに動くだけで、ボタンを早く押す技は磨かれるが、計算をプログラムできればもっと効率よく計算できるということは容易に想像がつく。
理学部の計算は理論的な計算が多く、実際に解けようが解けまいが、どうでもいい場合が多いが、工学部の場合が、ものができてナンボの世界である。解くのが厄介な式でも、実際に使える程度の誤差に収まれば近似値で十分である。
高校までの受験のための数学ならともかく、世の中には解けない式の方が多い。
理学屋は解けなくても式が出来れば、美しい式だ などと呑気な事を言っていれば良い場合が多いようだが、工学部ではたとえ、強度計算の結果、横幅がクレーンの長さより太くなっても取敢えず形にしなければいけないような場合が多い。
横幅を細くしたければ、たくさんあるパラメーターのなかから効果ありそうなところを直して再計算して結果として壊れないで細くなるような条件を見つけていけばいい。
どうせ製作上の誤差があるので精度はそれなりで良い。
ただし、引き算などで絶対値が小さくなるような計算が入ると極端に精度が下がる。数式の関数で考えて連続性が無いところや微分値が発散するようなところは注意しなければならない。
そういう点にだけ気を付ければあとは、理学屋の質面倒くさい理屈を考えなくても力任せに解いていけば、そのうち良さそうな組み合わせが見つかる場合が多い。
これって、まさにプログラム可能な計算機向きの仕事である。
昔の計算機は電子頭脳という呼ぶ人もいた割には、出来ることは単に計算が人間が行うより桁違いに速いだけである。電子頭脳という呼び名が流行っていた頃のコンピュータには、知性を感じさせるような能力は無い。
(写真は恐竜戦隊コセイドンとかいう番組の電子頭脳)
弾道の計算やら、光学計算など兵器に結びつくもので、ちゃんと計算力がカギになるものが結構多いが、電子計算機が実用化するまでは、手回し計算機やそろばんを手にした若いきれいな女の子をずらりと並べて計算させたらしい。
きれいである必要については微妙だが、若い女性が良いというのは、わかる気がする。
もっとも、若い女の子の集団は結構面倒くさい。
こういう計算の式を立てる奴らは、理学部系の、くそ面白くも無い連中であることを考えれば、下心のある凡人どもと違ってはやく何とかしたい状況だったのかもしれない。
そんなことが影響したのか、しなかったのかはともかく、計算機は第二次世界大戦の前後で大きく前進したらしい。
その頃はアナログ式計算機も結構使われたらしい。
弾道計算など、微分積分を解くには、電気回路は結構得意である。
しかし、アナログ式の欠点は、必ず誤差を伴うと考えなければいけない点である。
しかも計算が複雑になるほど影響も大きい。
この点、デジタル式の方が、一個一個の誤差は大きそうに見えても、適当な計算方法さえすれば誤差が蓄積しない。
デジタルは離散数のことで、とびとびの値である。
よく謂われる0と1の世界である。0.7とか、1.3とか、0と1以外の値はどちらかに丸める。
一度丸めてしまえば、そのあとの誤差は蓄積しない。
アナログは、連続数を扱うが、現実の世界では測定誤差などの誤差があり、誤差を持ったまま処理すると、誤差がどのように蓄積するか予測がつかず結局誤差は拡大すると考えなければいけない。
これにノイマンさんが確立したノイマン式のデジタル処理で、繰り返し計算が必要な場合処理速度さえ速くすれば誤差が蓄積せずに正確に処理できる。
実は、ノイマン式の計算では森羅万象を特には、桁違いどころか次元違いの力不足ということは、簡単な計算でわかることなので頭脳というにはあまりにもおこがましい。
単純な計算の速度に関しては信じられないくらい早かったので、人間の頭脳の仕組みに考えが及ばずに今となっては恥ずかしい電子頭脳という言い方が起きてしまったのだろう。
もっとも最近は、100%の確実性を求めない計算方法などで人間の知性にどんどん近付いて来ているようでホーキン博士の言うようにインテリジェンスを持った計算機の価値観にアイザックアシモフさんが言っていたように人間が必要だということをしっかり教え込まないといけない時代が見えて来ているのかもしれない。
大型計算機
さてノイマン式の計算機が実用化されたが、計算機は長い間、取り扱いが厄介なもので、しょっちゅう壊れては真空管やトランジスタを交換したらしい。真空管からトランジスタに代わりICやLSIが使われるようになって、安定性が向上したが、それでも汎用とか、大型と言われた計算機は空調完備の建物に鎮座するのが当たり前であった。
いったん電源を切ると正常に立ち上げるのは大変なようで(熱的な安定性以外にも立ち上がるためのプログラムを手動でいれる必要があるなどいろいろな理由があったようだ)停電になっても間髪をおかずに非常用の電源が本体に供給されるようにはなっていてもエアコンの電源までは、予算が回らなかったようで、じりじりと上げる温度計を睨みながらシャットダウンさせるか壊れる前に停電が回復するのに賭けるかハムレットのようにように悩んだらしい。
もっとも我々下々の者は、そのような苦しみとは無縁で、大型計算機(メインフレーム)は、なにやら快適な場所に鎮座ましましている、御有難いものであった。
クラブの先輩が計算機センター内の一室に入って研究していたので夏の暑い間ちゃっかりそこに入り浸って御利益を得た。
紙テープやパンチカードの穿孔機や読み取り機、それにテレタイプなどの端末に、ラインプリンターなどが電線で奥の御本尊と繋がれていたのだろう。
幸い御本尊をことさら崇め奉らなくても現世利益は得られ、扇風機もない下宿と雲泥の快適な夏を過ごせたが、一応布教活動の一環として、簡単な入出力くらいは覚えてしまった。
目の前に餌がぶら下がっていると覚えるのも早い。
もっとも御本尊そのものなぞ、下々のものが直接仰ぎ見るなど恐れ多いことで、端末なので気楽にいじることができたのだろう。
プログラムも、FORTLANという、理系御用達の簡単でわかりやすいプログラム言語が使え、カードに一行ずつプログラムを記入して、それを順番に並べて機械に読み込ませてコンパイルして実行した。
FORTLANは、パソコン用でブレイクしたBASICのもとになった言語で、数値計算なら簡単に作れる。
数値計算もそれほど長いプログラムででなくても、当時としては便利なものが作れたので、テレタイプで間違いながら打ちこむよりはずっと簡単である。
さて計算機学科以外の工学部の学科が持っているのは、お金のある研究室ではミニコンと呼ばれていたミニコンピュータで、普通のところは机の上にデンと乗っている大きな卓上計算器程度は持っていた(左の写真)。理学部は優雅に式など立てていれば良いが、工学部は実際に役に立つことができて「なんぼ」の世界なので実際に計算する必要が多くて何十万もした卓上計算機でも持っているのが普通であった。
もちろん理詰めで計算するのに計算機は必要無く、計算が必要な場合もうんざりするほどの量の場合が多いので、手を抜くことを考える奴らは理論の方に走るか、もっと簡単に計算してくれるミニコンに期待する。
自分の入った研究室では測定器と繋がったロール紙のプリンタ内蔵の卓上計算機があり、簡単なプログラムを組んで、自動計測して結果を印字することができた。
このプログラムに御神殿に熱帯夜を避けるために日参していた経験が生きた。
と、いっても、この電卓のお化けは、FORTLANのような高級言語で無く、動作と一対一で対応した機械語に近い言語であったと思うが、専用の装置なので複雑な手順もなく、計算機がどういうものかわかれば簡単にプログラムできる。
ノイマン式のプログラムの基本は同じである。
しかも、完全に自由に使うことができるので、工夫は、し放題の好き勝手である。
そして、コンピュータの文化的な進化は、神殿に祭られた大型計算機からではなく、もっと身近なミニコンピュータというダウンサイジングを通じて起きたようである。
コンピュータの世界に多大な貢献をしたUnixが誕生したのは、これを作り上げた人間に充分高性能なコンピュータが与えられなかったからというのは有名な話である。
この写真(ここから拝借)
が、unixが誕生するきっかけとなった、そこらに転がっていたという、DECの中では非力な計算機PDP7そのものということである。Unixはアメリカ電話電信会社(AT&T)のベル研究所にいて、MULTICSという壮大過ぎて失敗したといわれるプロジェクトに最後まで関わっていた二人の人間=Ken ThompsonとDennis Ritchieが中心となって作られたOSである。
有名な「プログラミング言語C」もUnixを記述するために作られた言語である。
MULTICSは破たんしたが、MULTICSが目指していた、一部の機能をふたりは気に入っていたので、DEC社の高性能のPDP-10(これでもMULICS用のGE-645よりは「小型」のようだ)を何度も申請した。
しかしMULTICSにすっかり見切りを付けた上司にことごとく拒否された。
のちに、このときの拒否がUnix誕生に果たした功績の大きさから、この上司 W.O. Baker氏はUnix誕生の恩人の一人とされている。
kenは、MULTICSのときに作って遊んでいたSapce Travelというゲームが忘れられず、GE-645で遊ぶと一時間50ドルくらい課金されるので、Space Travelを、そこらに転がっていたというPDP-7に、GE-645で実行イメージを作って紙テープで実行するという方法で移植した。
そのためPDP-7に慣れ親しんで使い勝手がわかってきたので、これでMULTCISの使い勝手の良い環境を実現しようという気になったらしい。
PDP-7は18bitの8KBか8KW(ワード=2B)のマシンでWikiによると1965年に出た72,000US$で安価で高性能なミニコンということである。
今となっては性能は当然驚くほど低いが、7万2千ドルは、当時の固定為替相場だと2592万円である。
これを、そこらへんに誰も使わずにほっておかれたというの、さすが豊かなアメリカである。
参考資料
UNIXとトランジスタ式コンピュータ(リンク)
「Life with Unix」 アスキー出版
左がKen Thompsonで右がDennis Ritchieである。Ritchie氏は、ほとんどkenが作り上げた(Space Travelは一緒に移植して楽しんだ)と言っているらしいが、この写真が物語るように多分、控えめな性格なのだろう。もっとも、Ritchie氏の功績をみれば半端でないことが分かるので、ふたりは良いコンビだったのだろう。
ともかくも、能力の低いコンピュータがそこら辺に転がっていたので(ただし何万ドル!もする)、MULTICSでやろうとしていたことを、コンパクトに作らざるを得なかったことが幸いして、使いやすいOSxができ上がったらしい。
Unixの評判はベル研の中でまず広まり、OSの研究のためでなく文書管理用のソフトのためと称して、まんまと新しいミニコンPDP-11を手に入れた彼らは、社内の特許部門に採用してもらった。
他の機種に移植するのに、コンパクトのついでに、メンテナンス性を考えて機械語からパフォーマンスの高いC言語でUnixを書き変えたことから移植性が飛躍的に高まった。
、またAT&Tが反トラスト法でOSの商売が出来にくかったこともあり、ほとんど無償で大学などの研究機関にCのソースと一緒に配布出来たこともUnixの素晴らしさを広めることにつながった。
そのころ始まっていたインターネットのもとになるアメリカ国防総省の高等研究計画局(ARPA)のARPANETでも、unixが使いやすさと移植性の良さで瞬く間に広まり、拡散して行った。
ARPAは、国防総省の予算とはいえ直接軍の干渉を受けない組織で、また自由で公開された研究によって、広くすぐれた先進的なものを生み出すものが目的である。(Wikiによる)
ARPANETは、核攻撃に耐える通信網を作るために計画されたと云うのは全くの都市伝説のようで、計画の責任者自体が明確に否定している。あくまでも開かれた通信網による効率的な情報交換が狙いだったようだ。
しかし、結果として貧弱なシステムでも強固な通信網を作るということも達成できた。
なお軍用の技術はDARPAの先を行き過ぎた研究とは、別にちゃんと行っているようである。
さて、ベル研では、そこらに転がっていたミニコンだが、日本のしがない大学の工学部では、貴重な計算機である。
呑気な学生たちと違って、先生方には大人の事情もあるので、おいそれと他の学科や研究室の機材を使わせてもらうわけにはいかないのは今も対して変わらないだろう。
今でこそ、普通に計算させるのに十分な能力のパソコンが安く手に入るが、昔は隣の研究室がミニコン用の大容量の記憶装置を手に入れると、周りの学生を無理やり集めて自慢たらたらのお披露目を行いたくなるよう出来事だった。
固定ディスクと呼ぶ、今でいうハードディスクの親分のような人抱えはあろうかという装置である。
「えへん、えへん。お前らが一生束になってこいつを埋めようと思っても埋まり切らないくらいの大容量であるぞ」
みんなは、お披露目のあとの酒にしか興味がないからおとなしく「はは~」とひざまずき、目当ての酒を早く手に入れることにしか興味が無い。
それで、人抱えあるもある装置の容量が確信を持って思い出せずに1MBだという値だけ覚えていたが、調べてみると最大で100MBくらいあった可能性がある。
まあ、目当てが酒なのでしょうがないが、その当時の自分たちにとって、1MBも100MBもどちらも桁違いのとてつもない大容量であった。
それが、今では、保存用の領域どころかWindowsの1個のプロセスでさえ、そのくらいの容量をメモリ上で確保するものはいくらでもある。
今は、そのころとは質的にも異なるコンピュータの時代である。
次回に続く かも