한국   대만   중국   일본 
2038年?? - ?基百科,自由的百科全? 跳?到?容

2038年??

本页使用了标题或全文手工转换
?基百科,自由的百科全?
2038年??演示:第一行是「time_t」?字的二?制表示;第二行是其十?制表示;第三行是受影?的?算机理解的??;第四行是??的??
2038年??
大部?的32位操作系??? 2038年 1月19日
距今?有 4954
以?地???算
如??倒???不准?,?点?此?刷新

在?算机?用上, 2038年?? 可能??致某些?件在2038年1月19日3?14分07秒之后无法正常工作。所有使用 POSIX?? 表示??的程序都?受其影?,因???以自1970年1月1日??的秒?(忽略 ?秒 )?表示?? [1] 。????表示法在 ?Unix Unix-like )操作系?上是一??准,??影?以其 C?程?言 ???其他大部?操作系?使用的?件。在大部?的32位操作系?上,此「time_t」?据模式使用一?有正負號的32位元整數(signed int 32)存??算的秒?。依照此「time_t」?准,在此格式能被表示的最后??是2038年1月19日03:14:07,星期二( UTC )。超?此一瞬?,????“ ?回 ”( wrap around )且在?部被表示?一???,?造成程序无法工作,因???无法?此?????2038年,而可能?依個別實作而跳回 1970年 1901年 。因此可能?生??的?算及?作。

有少數的情況下,在制定規格時,特別規定以無正負號的32位元整數(unsigned int32)儲存POSIX??,因此錯誤會被延後到2106年。例如 比特幣 區塊? 中的區塊時間?記,就是以這種方法儲存。 [2] [3]

目前??有???有的 CPU 操作系? 搭配的??解?方案。直接?POSIX??更改? 64位 模式??破??于?件、?据存?以及所有? 二?制 表示??相?的部?的二?位兼容性。更改成无符?的 32位 整???影??多????之差相?的程序。不?,那?使用32位系?的?算机可能??少。

大部?64位操作系?已?把time_t這個系統變數改?64位寬。不過,其他現有架構的改動仍在進行中,不過預期「應該可以在2038年前完成」。然而,直到 2006年 ,仍然有?以?計的32位系?在運行中,特別是?多 嵌入式系? 。相?于一般??科技18至24?月的革命性更新,嵌入式系?可能直至使用?命??都不?改?。32位time_t的使用亦被??于文件格式,例如?所周知的 ZIP文件??格式 。其能存在的???比受影?的机器?。

新的64位?算器可以??至?2900?年后的292,277,026,596年12月4日15:30:08,星期日(UTC)。

參考文獻 [ ?? ]

  1. ^ The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition (definition of epoch) . IEEE and The Open Group . The Open Group . 2004 [ 2008-03-07 ] . ( 原始?容 存?于2008-12-19).  
  2. ^ Bitcoin Developer Reference - Bitcoin: Block Headers . bitcoin.org. [ 2018-03-05 ] . (原始?容 存? 于2020-12-08).  
  3. ^ Theymos. Block timestamp- Bitcoin Wiki . [ 2016-06-01 ] . (原始?容 存? 于2020-11-16).  

參見 [ ?? ]

外部連結 [ ?? ]