iphone4s上的日历为什么到2038年就没了?为什么日期最多只能改到2038年1月1日?

发布网友 发布时间:2022-03-25 21:05

我来回答

3个回答

热心网友 时间:2022-03-25 22:34

iPhone 使用的 iOS 系统是基于 Unix 内核的。

UNIX时间,或称POSIX时间是UNIX或类UNIX系统使用的时间表示方式:从协调世界时1970年1月1日0时0分0秒起至现在的总秒数,不包括闰秒。
现时大部分使用UNIX的系统(如 iPhone 的 iOS)都是32位的,即它们会以32位二进制数字表示时间。但是它们最多只能表示至协调世界时间2038年1月19日3时14分07秒(二进制:01111111 11111111 11111111 11111111,0x7FFF:FFFF),在下一秒二进制数字会是10000000 00000000 00000000 00000000,(0x8000:0000),这是负数,因此各系统会把时间误解作1901年12月13日20时45分52秒(亦有说回归到1970年)。这时可能会令软件发生问题,导致系统瘫痪。

因此,这个*导致 iPhone 理论上最多到 2038年1月19日3时14分07秒(协调世界时)。苹果把这个*调到了2038年1月1日。
目前的解决方案是把系统由32位转为64位系统。在64位系统下,此时间最多可以表示到292,277,026,596年12月4日15时30分08秒。

参考资料:维基百科 - UNIX时间
http://zh.wikipedia.org/w/index.php?title=UNIX时间

热心网友 时间:2022-03-25 23:52

这个手机到2038年肯定没用了,新一代的手机肯定会有更长的日历。

热心网友 时间:2022-03-26 01:27

吃饱撑的,纠结这个问题
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com