YAMAHA RTシリーズに関連する話題


2001年9月9日問題


新規作成日2001/Aug/30
最終変更日2023/Jan/12
文書サイズ4.9KB


2001年9月9日問題には対応していますか?


ヤマハRTシリーズでは2001年9月9日問題は存在しません。 2001年9月9日になっても特別な対応を取る必要はありません。

[2001年9月9日問題とは]

2001年9月9日問題とは、UNIX由来のtime()関数が返す戻り値が、 日本時間で2001年9月9日10時46分40秒に1,000,000,000となることにより 起きる問題のことを指します。time()関数の戻り値の扱い方により、 以下のような問題が起きる可能性があると指摘されています。

ヤマハRTシリーズはtime()関数相当の機能を持っていないため、time()関数に由来する 2001年9月9日問題は発生しません。

[time()関数とは]

time()関数はUNIX由来の関数で、世界標準時の1970年1月1日0時0分0秒から 現在の時刻までの経過秒数を返す関数です。例えば、日本時間の2001年1月1日 0時0分0秒は、978274800となります。

初期のUNIXでは、time()関数の型はintとされ、表せる範囲が0〜2^31-1に限定されて いました。そのため、time()関数の戻り値が2^31-1となる2038年1月19日3時14分07秒 (世界標準時)以降が表現できないため、これをUNIXの2038年問題とも呼びます。 実際には、time()関数を持つOSのほとんどはすでにその型を符号付き 64ビット整数に変更しており、 2038年問題が発生するOSは古いものに限られています。

ただし、アプリケーションソフトの方でtime()関数の戻り値を32ビット整数として 保存している場合にはやはり問題が発生することが考えられます。 大きな話題となった2000年問題も、実際には1970年代にはその存在が知られており、 30年もあるのだからその間に問題を抱えているアプリケーションソフトはなくなって いるだろうとの楽観論が語られていたという話もありますので、 2038年問題もその時になってまた大騒ぎにならなければいいのですが…。


[ 関連FAQ ]


[ 関連情報 ]



[ FAQ for RT-Series ]
[ FAQ for TOPIC / files ]