恐怖のインター日記その3


虫(バグ)さされにはパッチ?

 コンピュータのプログラムは常に成長する。できなかったことができるようになったり,困った問題が解決したりする。
 本校ではNECのサーバが入っているが,以下のような問題点があった。

 (1) FTPがうまく機能しない
 (2) Webの画像データがちぎれてしまう
 (3) 電子メールを受け取れないことがある
 (4) 内蔵のCD-ROMドライブがマウントできない(使えない)
 (5) X-Window関係での問題

 順次パッチなどで直してもらっているが,なぜか本校だけ一筋縄ではいかなかった。

CD-ROMドライブのパッチ

 CD-ROMのパッチ後,再起動(サーバのリブート)するように言われたので,正しい手順でリブートをかけた。
・・・・しかし起動しない。あせってメーカーに電話をする。
 本校のサーバのパソコンは,リセットボタンと電源スイッチを誤って切らないように厳重にテープで封印してしまっている。これをはがしてリセットボタンを押すのが一苦労だった。汗が出る。
 しかし起動しない。3回も4回もリセットを押す。だめ。冷や汗が出る。・・・・電源スイッチも何度も入れ直す。すると,ようやく起動を始めた。嬉しくて涙が出てきた。
 こういった作業に,汗と涙を拭くハンカチはかかせない。

 しかし,内蔵CD-ROMを認識しない状態でCD-ROM版のOSをインストールできていたのは,なぜであろうか。NECの技術力が高いのか,Xnに誰も知らない妖しい機能が付いているのだろうか。考えると夜も眠れなくなる。

X-Windowのパッチ

 X-Windowのときも,ためしにX-Windowを起動して欲しいという依頼があった。起動は順調に行えた。しかし,終了できなくなってしまった。マウスをクリックしても何も現れない。サーバは活動しているようだが,画面が死んでしまったのである。
 メーカーに電話をかけて,プロセスを止めてもらうようにお願いする。
 本校は電話のある場所とサーバのある場所が遠い。
 「どうですか?」だだだだだだ(走る音)「だめです」,「これでどうですか?」だだだだだはぁはぁ「だめです」,「これでは?」だだだだだぜぇぜぇ「だめです」。
 「しかたがありません,こちらでリブートかけてみましょう」。
 リブート後は,ありがたいことに順調に動いている。しかし,やっぱりこういった作業にハンカチはかかせない。


本校のサーバ

 驚く無かれ,なんとパソコンのPC-9821Xnで運用している。メモリは最近32MBになったが,ハードディスクは540MBを外付けにして対処している。
 これにエーアイソフトのPanixでパニックしているのである。Panixは,よくできていると思うが,まさか連続稼働させるサーバに使われるとは思わなかった。 戻る


パッチ

 パッチとはなんでありましょう。健全な社会生活を送っている人にとっては,おそらく一生涯関係のないものである。
 パッチを理解するには,コンピュータプログラムの流れを理解しないといけない。

 コンピュータのプログラムは,まずプログラミング言語を用いて記述する。これをソースという。これは,人間が修正しやすいような形式になっている。
 これを各言語のコンパイラにかけて,コンピュータが理解できる機械語に翻訳をする。
 本来プログラムのミスをみつけたら,ソースを修正してコンパイルをし直すのが普通である。しかし,そうするとプログラムは丸ごと交換しないといけないわけだ。わずかの修正の場合には,めんどうくさい。
 そこで,機械語に対して直接修正をかけてしまうのがパッチと呼ばれる。機械しか理解できないものを,人間が半ば想像の範疇で手探りで修正をかけるので,高度な技術を必要とする(単にものぐさな人も多用する)。
 実際Windows3.0では,パッチでの修正を前提としているかのごとく,プログラムに大量の穴があいてパッチをあてやすくしていたのは,その筋では有名な事実である(さあ,バイナリの見えるビューアで覗いてみよう)。

 いわゆる「現場」では,プログラムにミスがあったことを悟られないように,客にそれと気づかれないようにパッチをあててきてしまうことが,よく行われる。
 客に「何をしているんですか」と尋ねられても,「ちょっとした保守」という答えでごまかせる。これをコンパイルし直したプログラムを入れ替えると,何枚ものフロッピーやテープが必要になり,必然的に目立ち,いいわけができなくなる。

 ただ,パッチをあてれば完全に機能するかどうかはわからない。かえって悪化させたり,別の問題がでてきたりすることもよくある。
 そうなると,上司からただパッチをあててこいと指示された新入社員は,パニックに陥って,客先で徹夜をして修正するはめになる。
 もしもの時のために,鞄の中には携帯用のコンパイラがかかせないのは,このためである(何の話だ)。
 社内報告書には,その客先の状態を「奇跡で動いていた期間」,「パッチでかろうじて動いていた期間」,「再パッチでようやく動き出した期間」という風に記述する。そうこうしているうちに,リース期間が終了するのである。
 パッチをあてなければならないようなプログラムを出荷してしまったプログラマは,ほっと胸をなでおろす。そして,若かったころのちょっとした過ちとして,テープやフロッピーに保存して,永久に封印するのであった(私は今でも大切に持っている(^_^;))。 戻る


                               YAMABUKI 8/23 1995