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
吃饱撑的,纠结这个问题