OS

【UNIX時間】2038年問題について整理する

UNIX時間における2038年問題について整理する。

この記事で解決できること

  • UNIX時間の2038年問題について概要がわかる。

関連記事

【PC】Linuxビルドのノウハウ(ビルドとインストール)

【PC】Linuxビルドのノウハウ(残課題)

【WSL】WindowsでLinuxを動かす

【Yocto】組み込みLinuxの主流はYocto

【Linuxコマンド】便利な小技たち(TIPS)

【ネットワーク】WindowsからUbuntu14.04に接続する方法2つ

【Linuxコマンド】パッチを使いこなしたい

【UNIX時間】2038年問題について整理する

UNIX時間とは?

UNIX時間(Wikipedia)を読んでみた。

UNIX時間(ユニックスじかん)またはUNIX時刻(ユニックスじこく、UNIX time(ユニックスタイム)、POSIX time(ポジックスタイム))とはコンピューターシステム上での時刻表現の一種。UNIXエポック、すなわち協定世界時 (UTC) での1970年1月1日午前0時0分0秒から形式的な経過秒数(すなわち、実質的な経過秒数から、その間に挿入された閏秒を引き、削除された閏秒を加えたもの)として表される。GPS時刻などとは異なり、大多数のシステムでは、本当の経過秒数を表すものではない。  UNIX系のオペレーティングシステム(データ型はtime_t)だけでなく、他の多くのオペレーティングシステムにおいてもこの表現方法が用いられている。システム内部では32ビットまたは64ビットの符号付整数 (signed int) で扱われていることが普通である。ここで、以前は多かった32ビットで扱われている場合で、符号付きであった場合、その最大値 2,147,483,647 を超えると負の値になり、正しく時刻を扱えなくなるという問題がある。これを2038年問題という。

出典:UNIX時間(Wikipedia)

2038年に発生すると言われる問題。今2019年なのであと19弱年しか残されていません。

2038年問題とは

2025年問題の次は2038年問題!コンピュータの暦問題を探る(後編)を読んでみました。カンタンに言うと32ビットOSは2038年問題を乗り切れないということに尽きます。

ちょっと細かく言うと、コンピュータの時間はUTC(世界協定時)の1970年1月1日0時0分からの経過秒数でカウントしていますが、32ビット(符号あり、signed)の最大値である2,147,483,648秒が最大値。つまり1970年1月1日0時0分から2,147,483,648秒後の2038年1月19日3時14分7秒(日本時間では2038年1月19日12時14分7秒)にオーバーフローし、1秒後に1901年12月13日20時45分52秒に戻ってしまうそう。

これが、64ビットになると西暦3000億年まで行けるそうなので、当面先送りにできるというわけです。

まとめ

2038年に32ビットCPUのパソコンは殆ど消滅していると思うのですが、怖いのはIoTデバイス。中途半端に組み込まれた低スペックのマイコンたちが、RTCとかで時間管理しちゃってると、ヤバいですね。きっと2038年IoTデバイス問題はいつか騒ぎになると思うし、それを飯のタネにする人も出てくるだろうとも思う。しかし、車とか飛行機の奥深くに32ビットマイコンが隠れてて誤動作しちゃう、みたいなのが怖い。2038年問題はメーカー責任で早めに対策される(直せないなら回収するとか)ことを祈ります。

関連記事

【PC】Linuxビルドのノウハウ(ビルドとインストール)

【PC】Linuxビルドのノウハウ(残課題)

【VirtualBox】仮想OS環境にUbuntu18 LTS(Linux)をインストールする手順

【WSL】WindowsでLinuxを動かす

【Yocto】組み込みLinuxの主流はYocto

【Linuxコマンド】便利な小技たち(TIPS)

【ネットワーク】WindowsからUbuntu14.04に接続する方法2つ

【Linuxコマンド】パッチを使いこなしたい

【UNIX時間】2038年問題について整理する

 

  • この記事を書いた人
  • 最新記事

ペイヴメント

ペイヴメントのエンジニア塾(当ブログ)では20年以上の経験から得られたプログラミング系ノウハウについてベテランにも満足して頂けるような内容の濃いコンテンツを初心者にも分かりやすい形で日々発信しています。【経歴】ベンチャーのソフトハウスで4年勤務後、精密機器メーカーのソフト開発部門に勤務し今に至ります。

-OS

Copyright© ペイヴメントのエンジニア塾 , 2020 All Rights Reserved.