2038年問題
鎌田 誠 KAMADA Makoto


 かなり先の話なのでX68kについて心配することではありませんが…

 2038年問題というのはX68kに限った問題ではなく、あらゆる機種でC言語で記述されたプログラムで日付を扱っている場合に発生します。

 ANSI-Cには標準でtime()という関数が定義されています。この関数は1970年1月1日午前0時0分0秒から現在までの経過秒数をtime_t型で返すものです。X68kではXCとlibcのいずれでも使えますが、libcのほうだけタイムゾーンの補正が入っているためにXCのtime()とlibcのtime()では結果が異なることに注意しましょう。

 さて、time_t型は普通は32ビットの符号つき整数として宣言されています。32ビットの符号つき整数で表現できる最大の値は2147483647で、1日は60×60×24=86400秒ありますから、単純に割り算をすると2147483647÷86400=24855.135となって、1970年1月1日からだいたい24855日後にtime()の返却値がオーバーフローすることがわかります。

 24855日後というとはるか未来のことのように思われるかも知れませんが、24855÷365=68.1ですから、1970+68=2038年頃にtime()関数の定義そのものが破綻してしまうことになります。これが2038年問題です。

 2038年まで現在のANSI-Cの規格がそのまま使用されているということはないと思いますが、time()関数で生成した日付の情報を含むデータは残っている可能性があります。2000年問題にしても、まさか2000年まで使い続けるとは思わなかったプログラムやデータが今まで使われ続けてしまったために問題として露顕したわけですから、2038年問題が発生する可能性も否定できません。



更新履歴
(2000-07-28) 月刊電脳倶楽部139号(1999年12月号)の読み物横町のコーナーに収録された2000年問題に関する読み物から2038年問題に関する記述を抜き出してHTML化してSTUDIO KAMADAで公開
(2000-10-10) HTMLを更新


読み物と資料のページへ戻る
[PR] | インプラント債務整理 相談債務整理インプラント転職サイトSEOアクセス解析ハウスメーカーレンタルオフィスSEO対策消費者金融不動産担保ローン時計車 買取ハワイ挙式アスクル転職生命保険テンプレート沖縄旅行動画免許合宿二輪引越し消費者金融税理士ゴルフ会員権留学レーシックマッサージFX投資信託くりっく365アフィリエイト育毛剤FXホームページ制作デイトレードFXホノルルマラソンベスト ハワイ ホテル レーツバリ島ハワイウエディングHawaii hotelsHawaii Activitiesbhhr
【運営会社「パラダイムシフト」サービス】 ハワイ現地オプショナルツアーリラックマ.ハワイホテルガイド) - ビジネスクラス航空券 - 格安航空券(1) - 格安航空券(2) - 海外ホテル - 韓国旅行
無料ホームページ作成 - レンタルサーバー - 携帯ホームページ - ブログ - ホテル 予約 - タイムシェア - ヴィラ - ハワイ コンドミニアム - バリ島 ホテル - ハワイ 不動産 - プーケット ホテル
[PR] 事故車の処分にお困りならこちら!事故車でも売れるんです