このキーワード
友達に教える
URLをコピー

UNIX時間とは?

この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。
出典検索: "UNIX時間"ニュース 書籍 スカラー CiNii J-STAGE NDL dlib.jp ジャパンサーチ TWL
(2020年1月)
現在のUnix時間
1601051950
(ISO 8601形式:2020-09-25T16:39:10Z)
UNIX時間 1,000,000,000 まであとわずかの2001年09月09日

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年問題という。

協定世界時 (UTC) との関係

UNIX時刻はシステム依存だが、大多数のシステムでは、協定世界時 (UTC) の時刻に基づき、1970年1月1日午前0時0分0秒(UNIXエポック)からの経過秒数を、閏秒の存在を無視し形式的な差を計算した値に等しい。したがって正の閏秒1秒が挿入された時刻を挟んだ2秒間において、UNIX時刻の値は1秒しか値が進まない。システムによっては、前後のある程度の時間に分散させてズレを吸収するものもある。また閏秒の前後での、秒より細かい時刻の扱いについては、システムにより異なることがある(特に、閏秒によって時刻が1秒巻き戻ったかのように見える場合もあり得るので注意が必要)。

閏秒1秒が挿入された時刻をはさむUNIX時刻の例
協定世界時 (UTC) UNIXエポックからの
本当の経過秒数 UNIX時刻
1998-12-31T23:59:59 | 915148820 | 915148799
1998-12-31T23:59:60 | 915148821 | 915148800
1999-01-01T00:00:00 | 915148822 | 915148800
1999-01-01T00:00:01 | 915148823 | 915148801

UNIX時刻の表示例

UNIX時間の例
UNIX時間 協定世界時 (UTC) 日本標準時 (JST)
0 | 1970-01-01T00:00:00 | 1970-01-01T09:00:00
100000000 | 1973-03-03T09:46:40 | 1973-03-03T18:46:40
1000000000 | 2001-09-09T01:46:40 | 2001-09-09T10:46:40
1234567890 | 2009-02-13T23:31:30 | 2009-02-14T08:31:30
2147483647 | 2038-01-19T03:14:07 | 2038-01-19T12:14:07

UNIX/Linuxシェル上で、UNIX時間をUTCに変換する例

date -u -d '@1234567890'

*BSDのシェル上で、UNIX時間をUTCに変換する例

date -jr '1234567890'

UNIX/Linuxのシェル上で、UNIX時間をローカル時刻に変換する例

date -d '@1234567890'

*BSDのシェル上で、UNIX時間をローカル時刻に変換する例

date -j '+%s'

Webブラウザアドレスバー(URL欄)にJavaScriptを入力することで表示させる例(Firefox 6.0以降ではスクラッチパッド)

javascript:window.alert(Math.floor((new Date()).getTime()/1000))

C言語で現在のUNIX時刻を表示するプログラム

#include 
#include 

int main(void)
{
    time_t now;
    now = time(NULL);
    printf("%lld", (long long)now);
    return 0;
}

脚注

注釈

  1. ^ このページが最後に生成されたUNIX時間
  2. ^ システム(例えばLinuxシステム等のGNU Cライブラリ (glibc))は、tz databaseを用いて本当の経過秒数に基づく時刻の方式に切り替え可能である。その場合は最新の閏秒情報を取得しシステムに反映させる作業が必要となる。
  3. ^ 協定世界時 (UTC) が国際原子時 (TAI) と同じSI秒を採用したのは1972-01-01T00:00:00Z以降であり、それ以前の協定世界時の1秒はSI秒とは異なる。
  4. ^ Internet Explorer 9以降、Google Chrome 13以降などでコピーペーストした場合は先頭に「javascript:」を追加してください。

出典

関連項目

外部リンク

・・・・・・・・・・・・・・・・・・
出典:wikipedia
2020/09/26 02:19

HAPPY Wikipedia

あなたの考える「UNIX時間」の意味を投稿しよう
「UNIX時間」のコンテンツはまだ投稿されていません。
全部読む・投稿 

UNIX時間スレッド一覧

・・・・・・・・・・・・・・・・・・
「UNIX時間」のスレッドを作成する
UNIX時間の」
友達を探す
掲示板を探す
このページ
友達に教える
URLをコピー

注目のキーワード

錦織圭/北島康介/2014_FIFAワールドカップ・アジア予選/サッカー日本女子代表/消費税/東京スカイツリー/ダルビッシュ有/イチロー/香川真司/野田内閣/復興庁/石川遼/HKT48/AKB48/ワールド・ベースボール・クラシック日本代表/黒田博樹/尖閣諸島/バレンタインデー/ONE_PIECE

キーワードで探す

 
友達を探す
掲示板を探す
ハッピーWiki
ハッピーメール
ハッピーランド
HAPPY NEWS
2010Happy Mail