時間為什么是從1970年開始計算
時間為什么是從1970年開始計算
1969年8月,貝爾實驗室的程序員肯湯普遜利用妻兒離開一個月的機會百科,開始著手創(chuàng)造一個全新的革命性的操作系統(tǒng),他使用B編譯語言在老舊的PDP-7機器上開發(fā)出了Unix的一個版本。隨后,湯普遜和同事丹尼斯里奇改進了B語言,開發(fā)出了C語言,重寫了UNIX,新版于1971年發(fā)布。
那時的計算機操作系統(tǒng)是32位,時間用32位有符號數(shù)表示,則可表示 68 年, 用32位無符號數(shù)表示,可表示136年。
他們認為 以 1970年 為時間 原點 足夠可以了。 因此,C 的 time 函數(shù) 就這么 定了,后來的 java 等也用它,微機也用它,工作站本來就是unix系統(tǒng)當然也用它。(今后若用64位機年限更沒問題。) 1970年1月1日 算 UNIX 和 C語言 生日。
由于主流計算機和操作系統(tǒng)都用它,其他儀器,手機等也就用它了。
Java時間為什么從1970
java起源于UNIX系統(tǒng),而UNIX認為1970年1月1日0點是時間紀元.最初計算機操作系統(tǒng)是32位,而時間也是用32位表示。因為用32位來表示時間的**間隔是68年,而最早出現(xiàn)的UNIX操作系統(tǒng)考慮到計算機產生的年代和應用的時限綜合取了1970年1月1日作為UNIX TIME的紀元時間(開始時間),而java自然也遵循了這一約束。
安卓系統(tǒng)文件的寫入時間為什么是1970年
以下全文,全本人手打。安卓系統(tǒng)文件的寫入時間為什么是1970年?是因為Unix時間戳是以1970年計時起點時間的。
而且Linux是來源于Unix,所以Linux也是1970年。
IOS和安卓都是基于Linux的,所以安卓也是1970年?!铋_始的Unix時間戳,為什么從1970年開始而不是其它年份?是因為unix誕生于1969年,1970年開始使用?!獮槭裁词褂脮r間是1970-2038年?是因為最初32位能表示的最長時間是68年,設定為1970開始,結束時候是2038年,正好滿足使用。——————————————————————————另外:unix誕生于1969年,linux誕生于1991年,安卓誕生于2007年不是樓上那兩人亂說的時間,也不是它們說的作者生日,那個年代的作者只考慮實用性,沒那么多花花,不像現(xiàn)在的程序員和總監(jiān),不重視程序基本功能,反而把重心放在沒有的地方上。
為什么說說的日期都是1970年
1970年是計算機一個時代的轉變,同時也是以距歷元(格林威治標準時間 1970 年 1 月 1 日) 為標準的 計算機 **時間初始化也就是服務器或者系統(tǒng) 更新的時候 出現(xiàn)了的一小段插曲 BUG 造成的時間初始化 。這個東西來自Unix系統(tǒng)的時間戳(timestamp),這個時間戳是系統(tǒng)和程序用來計時的一個東西,Unix系統(tǒng)規(guī)定當前時間的timestamp等于1970年1月1日0點到當前時間之間的秒數(shù),所以當timestamp=0的時候,時間就是1970年1月1日。
然后呢,qq的安卓版用的就是unix系統(tǒng),所以ios的看不到。
因為用32位來表示時間的**間隔是68年,而最早出現(xiàn)的UNIX操作系統(tǒng)考慮到計算機產生的年代和應用的時限綜合取了1970年1月1日作為UNIXTIME的紀元時間(開始時間),而java自然也遵循了這一約束?get?it?所有安卓機看到的都不對,但是蘋果的就沒事。
我的電腦時間總自動跳到1970年,怎么回事,怎樣處理?
應該是中毒了首先在任務管理器里把你認為可疑的進程終結了。我這里是一個數(shù)字(什么607A511.exe)一類的進程。
終結后還是不成,因為還有一個好像叫l(wèi)cframe(名字可能記不太對)的進程,這個才是主要的。
你直接用win自帶的任務管理器是關不掉這個進程的。所以可以下一個進程管理器的工具,我用的是瑞星防火墻的。終結后,到system32下把相應的**刪除了。此時修改時間可以發(fā)現(xiàn),時間不再像開始那樣,剛修改回來它又跳到1970年了。
重啟后時間就不再會被修改掉了。不過登錄時系統(tǒng)會提示報錯,找不到XXX文件,這個XXX就是**文件名。這是因為它在注冊表的winlogonh上做了手腳,這樣只要用戶登錄就會運行相應程序了。