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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iphone4s上的日历为啥到2038年就没了?为啥日期最多只能改到2038年1月1日?相关的知识,希望对你有一定的参考价值。

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时间
参考技术A 这个手机到2038年肯定没用了,新一代的手机肯定会有更长的日历。 参考技术B 吃饱撑的,纠结这个问题

xp系统下运行cmd命令,命令窗口闪一下就没了是怎么回事?

批处理命令窗口闪一下就没了的原因:
1.如果没在行末加 pause,批处理默认以cmd /c的形式运行(运行完代码后不保存窗口——和其对应的是cmd /k命令),所以就会一闪就没了。
2.语法出错也会造成窗口一闪消失。(强调:语法错误!——对应的逻辑错误会得到错误结果,但是不会出现一闪而过——这也是cmd.exe的特性,像vbs这种功能比较强大的脚本就会提示语法错误的具体事项,而不会一闪而过)
例如:
for /l %%i in(1 1 10) do @Echo %%i
pause
::我的本意是要其输出1-10这十个数并暂停,但其却一闪而过了,这是因为 in(),in和()之间要空格!
参考技术A cmd有问题,重新下载一个cmd程序。注意覆盖win32时要取得所有权。 参考技术B 中毒了,建议扫描一下病毒!

以上是关于iphone4s上的日历为啥到2038年就没了?为啥日期最多只能改到2038年1月1日?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我写的ConsoleApplication运行后总是一闪就没了

为啥MATLAB启动后闪了一下就没了

手机软件更新后桌面有了两个相同的图标。删掉一个软件就没了。安卓系统

为啥用手机浏览器看不了百度地图一闪一闪

为啥word不能打字?:

IPHONE4越狱后重新刷机,突然发现好多文件不见了,但是依然占用空间,现在重新越狱也无法显示,请高手指点