Unix時間は真夜中にどのくらいの頻度で10,000,000秒に分割できますか?

Unix時間は真夜中にどのくらいの頻度で10,000,000秒に分割できますか?

2021年5月3日が2021年のマイルストーンの1つであることを偶然発見しました。Unix Time。正確に真夜中(UTC)の数字はtime_t10,000,000に分割されます。

$ date --utc --date='@1620000000'
Mon  3 May 00:00:00 UTC 2021

私は数学がうまくいかないので、誰かが次のことを説明できることを願っています。

  • Unixの時間は深夜にどのくらいの頻度で10,000,000秒に分割されますか?
  • この現象に名前がありますか?
  • また、どんな興味深いUNIX時代がありましたか?

答え1

0000000000から9990000000まで繰り返しましたが、真夜中に返された日付は10,000,000に分割できます。

for i in $(seq 0 9);do for j in $(seq 0 9);do for k in $(seq 0 9); do DATE="@${i}${j}${k}0000000"; echo $DATE; date --utc --date=$DATE; done; done; done | grep "00:00:00" -B1

@0000000000
Thu Jan  1 00:00:00 UTC 1970
--
@0270000000
Sun Jul 23 00:00:00 UTC 1978
--
@0540000000
Wed Feb 11 00:00:00 UTC 1987
--
@0810000000
Sat Sep  2 00:00:00 UTC 1995
--
@1080000000
Tue Mar 23 00:00:00 UTC 2004
--
@1350000000
Fri Oct 12 00:00:00 UTC 2012
--
@1620000000
Mon May  3 00:00:00 UTC 2021
--
@1890000000
Thu Nov 22 00:00:00 UTC 2029
--
@2160000000
Sun Jun 13 00:00:00 UTC 2038
--
@2430000000
Wed Jan  2 00:00:00 UTC 2047
--
@2700000000
Sat Jul 24 00:00:00 UTC 2055
--
@2970000000
Tue Feb 12 00:00:00 UTC 2064
--
@3240000000
Fri Sep  2 00:00:00 UTC 2072
--
@3510000000
Mon Mar 24 00:00:00 UTC 2081
--
@3780000000
Thu Oct 13 00:00:00 UTC 2089
--
@4050000000
Sun May  4 00:00:00 UTC 2098
--
@4320000000
Wed Nov 24 00:00:00 UTC 2106
--
@4590000000
Sat Jun 15 00:00:00 UTC 2115
--
@4860000000
Tue Jan  4 00:00:00 UTC 2124
--
@5130000000
Fri Jul 25 00:00:00 UTC 2132
--
@5400000000
Mon Feb 13 00:00:00 UTC 2141
--
@5670000000
Thu Sep  4 00:00:00 UTC 2149
--
@5940000000
Sun Mar 26 00:00:00 UTC 2158
--
@6210000000
Wed Oct 15 00:00:00 UTC 2166
--
@6480000000
Sat May  6 00:00:00 UTC 2175
--
@6750000000
Tue Nov 25 00:00:00 UTC 2183
--
@7020000000
Fri Jun 15 00:00:00 UTC 2192
--
@7290000000
Mon Jan  5 00:00:00 UTC 2201
--
@7560000000
Thu Jul 27 00:00:00 UTC 2209
--
@7830000000
Sun Feb 15 00:00:00 UTC 2218
--
@8100000000
Wed Sep  6 00:00:00 UTC 2226
--
@8370000000
Sat Mar 28 00:00:00 UTC 2235
--
@8640000000
Tue Oct 17 00:00:00 UTC 2243
--
@8910000000
Fri May  7 00:00:00 UTC 2252
--
@9180000000
Mon Nov 26 00:00:00 UTC 2260
--
@9450000000
Thu Jun 17 00:00:00 UTC 2269
--
@9720000000
Sun Jan  6 00:00:00 UTC 2278
--
@9990000000
Wed Jul 28 00:00:00 UTC 2286

270000000秒ごとに発生し、これは3125日ごとに1回発生します。

答え2

10 000 00010Mごとに10Mに分割できる数値を取得します。これが要因1です。

24時間(または86,400秒)ごとに深夜に達します。これが要因2である。

10Mの倍数が必要ですそして86400. これは、最小公倍数 (LCM) という数学関数です。あなたはできますこのページで結果を確認してください

この数は270 000 000(または270M)です。

これが最初に発生する時点はエポック0秒です(公式にはこれについて議論の余地があります)。または1/1/1970 12:00:00 UTC

これらのイベントの簡単なリストは次のとおりです。

$ for i in $(seq 20); do mult=$((i*270000000)); printf '%12s -- %s\n' "$mult" "$(date -ud @"$mult")"; done
   270000000 -- Sun 23 Jul 1978 12:00:00 AM UTC
   540000000 -- Wed 11 Feb 1987 12:00:00 AM UTC
   810000000 -- Sat 02 Sep 1995 12:00:00 AM UTC
  1080000000 -- Tue 23 Mar 2004 12:00:00 AM UTC
  1350000000 -- Fri 12 Oct 2012 12:00:00 AM UTC
  1620000000 -- Mon 03 May 2021 12:00:00 AM UTC
  1890000000 -- Thu 22 Nov 2029 12:00:00 AM UTC
  2160000000 -- Sun 13 Jun 2038 12:00:00 AM UTC
  2430000000 -- Wed 02 Jan 2047 12:00:00 AM UTC
  2700000000 -- Sat 24 Jul 2055 12:00:00 AM UTC
  2970000000 -- Tue 12 Feb 2064 12:00:00 AM UTC
  3240000000 -- Fri 02 Sep 2072 12:00:00 AM UTC
  3510000000 -- Mon 24 Mar 2081 12:00:00 AM UTC
  3780000000 -- Thu 13 Oct 2089 12:00:00 AM UTC
  4050000000 -- Sun 04 May 2098 12:00:00 AM UTC
  4320000000 -- Wed 24 Nov 2106 12:00:00 AM UTC
  4590000000 -- Sat 15 Jun 2115 12:00:00 AM UTC
  4860000000 -- Tue 04 Jan 2124 12:00:00 AM UTC
  5130000000 -- Fri 25 Jul 2132 12:00:00 AM UTC
  5400000000 -- Mon 13 Feb 2141 12:00:00 AM UTC

それはUTC時間(協定世界時)、これは表示されません。ユンチョ.それは違う国際原子市(TAI)GPS時間とは異なります。

私はイベントの名前が指定されているかどうかわかりません(また、名前を付ける必要があるとは思わない)。

ちょっとしたことがあります。ウィキペディア:

  • 2009年2月13日金曜日23:31:30 UTCのUnix時間の10進数の表示は1234567890秒に達しました。

答え3

原則として、1日の秒数(24・60・60=86400=2・3・3・5²)と10・=2・5・7(2・3・3・5・7)の最小公倍数を求めます。

2・3・5・7を1日の秒数で割ると次のようになります。

2⁷·3³·5⁷
-------- = 5⁵
2⁷·3³·5²

つまり5⁵=3125日です。

もちろん現実はそんなに順調に流れない。 「真夜中」がうるう秒に依存するという事実を考慮すると、質問で時間がどのように計算されるかによって、それを定義する必要があることをすばやく知ることができます。 UTCはGPSシステム時間と同じではありません。時計に表示されているものと異なる場合があります。時間は、Googleが内部的に使用する時間とは異なります。


1多くの人々は、Googleがより長い期間(1日)の期間制限を「延長」し、うるう秒の一貫性の問題を「解決した」と賞賛しました。私は個人的にこれを嫌います。他の人の時間に合わせるために必要な措置を取るのではなく、時計を操作することです。他の誰もがこの問題を大規模に解決しました。 Googleが自称する「地球規模」コンピューティングを、世界中のモバイルネットワーク事業者が30年以上にわたって行ってきた作業と比較すると、同期の問題はそれほど難しくありません。

関連情報