いつも心は穏やかにと思っている私ですが……

ぼくのシステム回顧録(1)

»

 ハードウェア、ソフトウェアとも情報工学に関する本は書店にたくさんあるが、実はわたしはどの本もいいと思ったことはない。インターネットで情報収集できる以前はしかたがなく買っていたが、何回も読んだような本はないのだ。物理や電子工学は本を熟読して理解するのものかもしれないが、情報工学は実学なので本を読んだだけでは理解が深まらない。実際にパソコンを使ってみて簡単なプログラムを組んでみるのまず第一歩だ。

 わたしは大学時代、情報工学の授業を受けみた、というか必修だったので受けざるを得なかったのだ。

 言語はフォートランなのだが、はじめてのプログラミングで行列式の計算をするなんてことはとうていできなかったので、人からコピーさせてもらって単位をもらった。ところが大学の研究室にNECのPC98があったので、BASIC言語により複雑な計算式を入力してシミュレーションするのに夢中になった。

 かなりデバックや2進法独特の数値誤差に悩まされたものだ。しかし助教授からオペレーティングシステムとかMS-DOSとかの話をされてもさっぱりわからなかった。「とにかくオペレーティングシステムって便利なものなんだよ」と言われても、その当時はまったく実感がわかず、今でこそ一般人がXP、VISTA、Widows7と騒いでいるのが、MS-DOSが OS? と言われても「なにそれ?」っていう感じだったなあ……。

 大学を卒業し就職したわけだが、OSも分からないわたしは、仕方がないのでハードの仕事を選んだ。大学の専攻が情報工学ではなく電子工学なのでハードのほうが電子工学の知識が応用できると思ったからだ。以後、その会社をやめるまでハード設計の仕事につくことになった。といっても、やはり職場にはUNIXのワークステーションがあり、C言語を使ってハードの動作を検証するシミュレーションに大きな時間を費やしていた。ハードウェアエンジニアの世界を去って、今のSEの道を選ぶことになったきっかけは、バブルの崩壊によるケチくさい会社の待遇とCPUの世界を制したインテルにはとうてい敵わないという絶望感からだ。

 あの当時のCPUについては白熱したトピックがあった。それはRISC(Reduced Instraction Set Computer)というものが米国スタンフォード大から提唱され、それをサン マイクロシステムズがUNIXマシンに採用したことだ。当時のCPUといえば8ビット、16ビット、32ビット命令が混在した過去のオブジェクトコードを実行することで複雑化してしまった。

 ソフトウェア資産を継承する意味では複雑化しても仕方がないのであるが、スタンフォード大生まれのRISC CPUは高速性を追求するためには、そのような過去のしがらみを断ち切り32ビット命令長の少ない命令のみ実行する単純なアーキテクチャにすれば、実行クロック周波数を上げることができ、処理速度は向上する。当時、MIPS(Million Instraction Per Second)戦争がスタンフォード大、サン マイクロシステムズを中心に繰り広げられていた。

 この記事を読んでいる読者は1つ疑問に思うだろう。過去のオブジェクトコードをの互換性をなくしてしまって成功するの?

 (1) 1つには当時コンピュータは大学や企業の研究室のようなところでしか使われないので、プログラムは自分で書くものであり、家庭にあるのはゲームをするホームコンピュータしかなかった

 (2) 実は、この時期からプログラムはソースで供給するOpen Software Foundationという思想が提唱されはじめた

 今となってはRISCはコンピュータの原理を勉強する学生にはいいかもしれないが、その程度のことではインテルはびくともしなかった。売れるCPUは巨額の投資ができるので、アーキテクチャが複雑になろうとも優秀なロジック設計者を雇えるし、最新の半導体技術をおしみなく使うことができるので結局勝負はインテルの独り勝ちだった。さらにそれを後押ししたのはマイクロソフトがWindows OSのCPUとしてインテルを採用し、「インテルはいってる」というCMで日本では一般人にまで米国のCPUメーカーが知れ渡るようになった。

 はっきり言ってUNIX上でプログラミングをしながら、WindowsというGUI OSが世に出るまでOSの重要性について、ぼくは認めていなかった。ハードウェアから見たOSとはインタラプトによりコンテキストスイッチができるから一度に何本ものプロセスを実行できるという色気もなにもない世界だったのである。

Comment(0)

コメント

コメントを投稿する