西暦2000年問題雑感

      黒木 靖生

 

 先日、家で情報処理学会の機関誌を眺めていたところ、西暦2000年問題の記事(西暦2000年問題の移り変わり:株テラメディア/宍戸周夫氏)が目に止まりました。

 記事の内容は、「西暦2000年問題は、最初はプログラム修正など技術的な対応方法が論じられていたが、時間が無くなった今は、いかにして2000年問題によるダメージを少なくするかに関心が集まっている」というものですが、私には2000年問題の原因に関する記述が気になりました。

 この記事では、西暦2000年問題の原因は、「メモリが高価であったため、プログラマはいかに少ないメモリでソフトを書くかで腕を競った」ことにあると論じています。

 私は、1966年に社会人になって初めてコンピュータの仕事に携わり、最初に使用したコンピュータのメモリは64K(今のパソコンの千分の1!!)でしたが、年号の上2桁を削るほどの逼迫感は無かったと思います。

 おそらく1950年代までは、コンピュータのメモリ容量が極めて少なかったため、プログラムを小さく作る努力が重要だったのではないかと想像しますが、1960年以降は、今みたいにメモリを無尽蔵に使えなくても、年号の上2桁くらいは問題にならなかったのではないでしょうか。

 しかも、今、西暦2000年に誤動作すると言われているOSは、いつ作成されたものでしょうか。国産機は当たり障りがあるので外国製で言いますと、あの有名なWindowsも2000年問題を抱えていると言われていますが、メモリが極めて高価であった時代に作られたのでしょうか。

 また、NetWareも、古いバージョンは2000年問題のために修正を施さなければなりませんが、これもそんなに古くはないと思います。

 私の結論は、コンピュータ(OS)の西暦2000年問題の原因は、西欧において慣例であった「年号を下2桁で表現する」ことに、OSの開発者たちが無意識に従ってしまったことだと思います。

 そして、国産機のOSも同様の問題を抱えているというのは、「外国産のOSと互換性保たなければならない」という宿命を背負っていたからではないでしょうか。

 西暦2000年問題でもっと不思議に思うのは、「2000年が閏年になっていないOSがある」ということです。閏年のルールは、コンピュータが発明される前から決まっていたわけですから、これはOSの開発会社のミスと言っても過言ではないと思います。

 西暦2000年問題の原因を「OSの開発会社のミス」と決めつけたところで、西暦2000年問題の対応をOSの開発会社が実施してくれるわけではありませんが、私は「メモリ不足」のせいにすることは、われわれの正常な判断力(反省力)を失わせることになるのではないかと恐れます。

 それにしても、西暦2000年問題の対応に要している社会的費用は、想像を絶するものがあります。この費用の原因が「無意識に慣習に従った」ことであるとするならば、「慣習」とは、本当に恐ろしいものだと思います。

                                        (完)

投稿広場 目次へ