国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 手機技巧 > 正文

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

2020-06-17 13:09:43
字體:
供稿:網(wǎng)友

  繼上個月的十二行代碼分分鐘讓瀏覽器崩潰iPhone重啟事件之后,近日又有網(wǎng)友爆出:如果把64位的iOS設(shè)備(iPhone、iPad、iPod touch)系統(tǒng)時間修改為1970年1月1日,設(shè)備重啟后將變磚。

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  也有人稱:即便是進DFU模式都無法刷機重啟,只能到售后去解決問題。

  今天抱著No Try No High Give Me Five的心態(tài)把自己的iPhone(型號:5S)系統(tǒng)時間設(shè)置成了1970年1月1日:

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  當時的我心想:只要把時間設(shè)置成23點五十多分,只需十來分鐘就能恢復正常,想想都覺得自己機智得不要不要的,然后安心地重啟了設(shè)備。

  重啟之后,設(shè)備和大多數(shù)人的一樣:變磚了,一直卡在開機的Logo界面,而且設(shè)備還比平時更燙。

  原以為只有等十幾分鐘,系統(tǒng)日期轉(zhuǎn)為1970年1月2日的時候就能恢復,可是蘋果白屏持續(xù)了二十分鐘,然后又關(guān)機放了二十分鐘依舊不能開機!

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  終于,設(shè)備在系統(tǒng)時間為1970年1月2日零點三十多分的時候進入了正常界面,BTW沒想到的是輸入鎖屏密碼竟然有十來秒的延遲,然后設(shè)備又自動重啟了!然后就一直白屏、發(fā)燙直到?jīng)]電… 嗯,當時整個人的狀態(tài)是這樣的:

  No Zuo No Die Why You Cry,You Try You Die Don't Ask Why.

  蘋果客服給出了一個強制恢復方法:

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  使用這一方法時建議最好采用windows機器來進行操作。

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  到這一步時,選擇更新或者恢復均可。

  接著iTunes將會下載1.8個G的iOS9.2.1系統(tǒng)文件,下載完成將進行軟件提取、恢復操作:

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  恢復階段時iTunes、蘋果均會顯示進度條:

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法
蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  之后只需耐心等待數(shù)十分鐘即可。

  如果之前未進行數(shù)據(jù)備份,通過這種方法對iPhone進行恢復后原有數(shù)據(jù)將全部丟失!

  那么是否還有其他方法呢?答案是有的。那就是:拆機并拆出電池,放置10分鐘后重新安裝。(這一方法未進行驗證,如不想數(shù)據(jù)丟失的小伙伴可嘗試一下)

  為什么會有這個Bug?(下面答案內(nèi)容來自feomg@知乎)

  iOS系統(tǒng)時間使用Unix時間戳(Unix epoch)表示(time_t數(shù)據(jù)類型)。在系統(tǒng)中,使用系統(tǒng)位數(shù)個二進制位儲存時間。Unix時間戳規(guī)定:UTC時區(qū)的1970年1月1日 0點0時0秒的值為0,以秒為單位,即每過一秒,二進制數(shù)字加1。

  在32位系統(tǒng)中,time_t是長度為32位的,有符號整數(shù)(signed int)類型。首個二進制位是符號位,用來儲存正負。正數(shù)則為1970/1/1以后的時間,負數(shù)反之;其余的31位用來記數(shù)。當時間到達2038年1月19日 3時14分08秒時,數(shù)值位全部向前進1,導致符號位被置1,其余31位為0。介時,將出現(xiàn)『時間回歸』的情況,系統(tǒng)時間變?yōu)?901年12月13日 20時45分52秒,系統(tǒng)將會出現(xiàn)錯誤。

蘋果手機設(shè)置1970時間戳變磚的過程與解決方法

  那么64位系統(tǒng)中又是怎樣的問題呢?我們說到了以UTC時區(qū)的1970年1月1日 0點0時0秒為界限,數(shù)值為0,時間正常流逝為正數(shù),反之為負數(shù)。不過各位需要留意的是,時間受到時區(qū)的影響。

  假設(shè)一種情況,我原來是北京時區(qū),假設(shè)將時間設(shè)置到了1970年1月1日0點0時0秒,那么我將這個時間轉(zhuǎn)換為UTC時間,公式:北京時間= GMT+8 = UTC+8,那么UTC時間則為1969年12月31日16時0分0秒。這樣就會出現(xiàn)時間負值,即時間回歸bug觸發(fā),系統(tǒng)啟動卡在Kernel階段,時間錯誤,無法繼續(xù)進行啟動。

  蘋果是如何回應(yīng)的?

  蘋果官方對這一事件做出了回應(yīng),確認如果將系統(tǒng)時間手動設(shè)置為1970年5月或者更早,iPhone、iPad、iPod touch將會無法重啟。

  蘋果稱會在未來的軟件更新中解決這個問題,但不清楚會在如今的iOS 9.2.2上直接OTA,還是得等下個月的iOS 9.3。

  蘋果建議已經(jīng)變磚的用戶聯(lián)系蘋果售后,但是現(xiàn)在Apple Store里的很多員工都頭疼死了:因為不少人很好奇這個Bug,但舍不得拿自己的iPhone做試驗,就跑到蘋果店里把人家的展示用iPhone、iPad給玩死了……

  蘋果的這一問題不禁讓人想起:linux 2.6.18-164以下版本內(nèi)核在處理閏秒事件的問題以及千年蟲(計算機2000年問題,縮寫為“Y2K”)

  Linux內(nèi)核閏秒問題

  這一問題發(fā)生在2012年7月,當時水木社區(qū)用戶稱:低內(nèi)核版Linux開啟NTP服務(wù)將會在本月遇到閏秒BUG,從而導致服務(wù)器重啟。該用戶表示:國際地球自轉(zhuǎn)和參考坐標系統(tǒng)服務(wù)(IERS)將在格林威治時間2012年6月30日**增加一閏秒。

  由于Linux kernel和Posix關(guān)于NTP時間跳變的標準不同,將在2012年6月30日23:59:59跳變到2012年7月1日后引起ntpd進程鎖死,從而造成部分開啟ntp服務(wù)的linux系統(tǒng)重啟。Linux內(nèi)核在2.6.18-164.e15之后的版本中解決了這個問題。

  格林威治時間對應(yīng)到北京時間即7月1日的7點59分59秒,中國也曾于這個時間全球同步進行閏秒調(diào)整,出現(xiàn)了7點59分60秒的特殊現(xiàn)象。

  千年蟲問題

  百科上的資料顯示:計算機2000年問題,又叫做“千年蟲”、“電腦千禧年千年蟲問題”或“千年危機”。縮寫為“Y2K”。是指在某些使用了計算機程序的智能系統(tǒng)(包括計算機系統(tǒng)、自動控制芯片等)中,由于其中的年份只使用兩位十進制數(shù)來表示,因此當系統(tǒng)進行(或涉及到)跨世紀的日期處理運算時(如多個日期之間的計算或比較等),簡單來說,就是由于早期的計算機配置比較低,為了節(jié)省空間就把年份只用后兩位數(shù)表示,如1900就表示為00,這樣到新千年時便會出現(xiàn)問題了:電腦把2000年認為是1900年。就會出現(xiàn)錯誤的結(jié)果,進而引發(fā)各種各樣的系統(tǒng)功能紊亂甚至崩潰。因此從根本上說千年蟲是一種程序處理日期上的bug,而不是病毒。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 若羌县| 三门县| 河西区| 勐海县| 江安县| 垦利县| 尚义县| 雅安市| 成都市| 宜章县| 阳新县| 金山区| 岳西县| 五大连池市| 定西市| 绥中县| 赣榆县| 庄浪县| 松原市| 拉孜县| 前郭尔| 东明县| 凉城县| 寿光市| 吴川市| 彝良县| 洛南县| 武安市| 高淳县| 丰宁| 郁南县| 吉安市| 海宁市| 浦东新区| 涞源县| 宁明县| 特克斯县| 南康市| 巴南区| 巴东县| 万宁市|