为什么没有人开发128位的操作系统?
一、正方支持观点。
这是一个很有趣的问题,因为回答这个问题需要一些想象力。128位操作系统的开发是离不开128位CPU的,所以,请允许我畅想一下,什么时候会出现128位CPU。
128位CPU的开发条件
咱们先明确一下什么是128位CPU。这样的CPU要满足下面两个条件
· 寄存器的大小为128位
· 地址空间的大小达到128位
使用128位寄存器的CPU已经有了。比如,因特尔酷睿系列SIMD的输入输出寄存器。所以第一个条件已经满足了,128位CPU的出现条件就剩下内存空间是否需要128位寻址了。也就是说,如果目前主流的64位CPU无法满足内存空间的寻址需求时,就要使用128位CPU了。
128位CPU的寻址空间
64位CPU的寻址空间的上限为16EB(Exabyte),约172亿GB(Gigabyte)。128位CPU的寻址空间上限约为2800亿YB(Yottabyte),约天文数字GB(因数太大不会算了)。
128位CPU的推测
2018年现在电脑的标配内存大概是8GB左右,到达上限还需要将内存增大23亿倍。感觉不太可能了吧。不过35年前,也就是80年代的时候,电脑的内存标配只有64KB跟那个时候相比,现在的内存空间增长了13万倍。按照这个趋势我预计70年后,电脑的内存将达到EB的级别,到那时候,64位CPU就该升级到128位了。如果还要问会出现256位CPU吗?那应该是200年以后的事了,谁知道呢。
或许您觉得没有必要用这么大的内存。想想看4k高清的视频文件动辄就有几十GB大小,而几年前在标清的年代这个视频最多数百MB,短短数年视频文件的大小已经增加了数万倍,需求的增长速度要比内存的增加速度还要快得多。我觉得不会等到70年才开发出128位CPU,可能在50年甚至更短的时间里就会出现。
二、反方反对观点
开发128位操作系统并没有什么好处。128位,甚至更高的结构对于某些要求大量数学运算的操作当然有好处,比如制图、密码,或是复杂的系统建模,但是,现在的问题主要针对操作系统。
目前最大的问题是,32位的操作系统最大可寻址内存是4GB。但是,我们不一定非要64位的结构和操作系统解决这个问题。事实上,40位的结构,其可寻址内存就可以达到1TB,这在未来一段时间内都是绰绰有余的。
你要知道,每在结构中增加一位,你能获得的可寻址内存就会翻番。其地址数量就是某个特定位数能构成的所有组合的数量。举个例子:
1位只有两种组合:1和0;
2位有4种组合:00,01,10,11;
3位总共有8种组合:000, 001, 010, 011, 100, 101, 110,或111。
所以从32位晋升到64位,其组合数就从4,294,967,296增加到18,446,744,073,709,551,616,这绝对超出需求了。而且,骤增的不只有可寻址内存,你看看下面的表格就明白了:
64位已经花了我们很长时间。现在,就当娱乐一下,我们来看看128位会给我们带来多少组合:
340,282,366,920,938,463,463,374,607,431,770,000,000
而64位只有:
18,446,744,073,709,551,616
所以说,开发128位操作系统就是杀鸡用牛刀,说是资源过度浪费都不足以表达开发128位的浪费。