为什么没有人开发128位的操作系统?

EvaLongoria


32bit os 需要升级到64bit最大的原因是内存寻址范围只有4G,64bit cpu的内存寻址范围已经很大,因此在内存上,目前需求不迫切。

运算能力上,128bit的CPU确实可以一次计算更多更大的数据,但是一旦需要计算大数,那128bit cpu也是不够的,现在所谓大数是指1024bit,2048bit这些大数,还是不能通过寄存器直接计算,反正对大数计算提升不大,那就目前来讲上128bit必要性就不大。

通常,128bit也意味着地址长度也是128bit,这样,CPU的片上cache的占用就得比64bit要多,当然这里可以通过设计去优化,但整体来说,片上cache增大,成本也跟随增大。


小x全栈工程师


首先,128位的操作系统是为谁服务的?它一次能访问128bit的数据,那么一定需要硬件来支持,就像我们之前比较老的32位CPU不能装在64位的Windows上一样,所以这个问题实际上是为什么没有128位的CPU?

在民用市场,我们看到的都是x86(电脑)或ARM(手机)处理器,最多也就是64位的处理器,没有看到128位的,那是因为距离用完64位地址空间还有很长的路要走。还是先来看看之前CPU的地址总线和它们能访问的内存大小。

• 8位CPU具有16位至20位的地址总线 / 最多访问1MB内存

• 16位CPU具有20+位地址总线 / 最多访问1MB内存

• 32位CPU是有32-36位地址总线 / 最多访问64GB内存

• 64位CPU通常具有40+位地址总线,通常小于64位 / 可访问数百TB内存

这是一个有趣的现象,并不是CPU位宽就等同于它的地址总线位宽,比如32位CPU实际可能寻址64GB的内存,所以下次有人说你这个是32位的,只能用4GB内存,可以纠正下,真正限制这个4GB大小的是32位的操作系统。

在PC上64位处理器中,地址总线为48位,能寻址256TB(2^48)内存,可我们还经常在讨论16GB的内存到底有没有必要呢,那256TB=256000GB,这个到底有多大真没什么概念,真想不到民用怎么才能用完。反正我们不太可能在单个处理器上看到这么多的内存。大多数使用海量存储器的现代系统都是分布式存储器架构,具有大量协作处理器,每个处理器都有自己的RAM和独立的地址空间,所以实际上不可能用到那么大的内存。

好吧,在1981年,伟大的比尔盖茨说过“对于任何人来说,640KB内存都足够了”,我们还是乐观预估下。毕竟扩大地址空间虽然没有太多价值,但增加每条指令执行的计算宽度还是有价值的,计算宽度的增加会增加计算逻辑与支持/控制逻辑的比率。支持/控制逻辑有它自己的增长压力,更加复杂的分支预测器,更复杂的缓存,更宽的总线以增加内存带宽,缓存一致性机制等等,可能128位的CPU就有价值了。在一些超级计算机上,已经有开始使用128位以上的存储器地址,能在硬件上实现128位浮点运算。

128位CPU可能意味着一些不同的事情发生,未来可期。

1971年,第一个4位CPU

1年后,1972年,8位CPU出现

5年后,1977年,16位CPU诞生

8年后,1985年,32位CPU发布

18年后,2003年,64位CPU登场

2050年会有128位CPU吗?


超能网


首先是没有支持128位的硬件,128位的操作系统需要128位的处理器支持才行,其次是现在没有必要上128位,用不到。我先来科普下这个计算机的位(bit)操作,这个位数指的是CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度,64位处理器就是64位指令集就是运行64位数据的指令,也就是说处理器一次可以运行64bit数据。

处理器的位数变化主要有两个好处,可以计算更大的整数、内存地址可以更大(也就是支持更大的内存)。比如从32位处理器到64位处理器,单次可计算的整数范围从2的32次方变为2的64次方,可以支持的内存也变大了,32位处理器可以支持4GB(2的32次方)内存,而64位处理器支持的内存空间变为2的64次方,现在还没有这么大的内存

如果你不懂,说的再形象一点,处理器要计算一个东西,需要指令和数据,数据在哪呢?一般是需要从内存读取,存储了那么多的数据怎么读取呢?一个国家有那么多人快递怎么找到你的呢?城市+小区+楼号+门牌号,计算机也是差不多的原理,给每个数据编一个地址,然后按照这个地址去读取。这个地址能有多大呢?就是内存的大小,32位处理器只能读取4GB的地址空间,64位处理器就是2的64次方的空间。64位的处理器支持的空间就已经够我们用了,128位显然现在是用不到的。


没有硬件的支持,128位的系统自然也就没有了,有了128位的系统还要有128位的内存,还要有支持128位的软件,不然也没什么意义。从32位的操作系统win95诞生到64位的普及用了大概20年,现在还有很多32位的系统,128位,你真的用得到?其实也不是完全没有,IBM的system 370有部分的128位处理能力,系统就是IBM自己的系统。


萌哈科技


谁说没有的呢。有的,也就是大名鼎鼎的PS系列。

当时的CPU基本是西方人制作的,然后日本人掺和捡来了。有部分原因是想保证国产。由于日本特殊的岛国单一民族心理,即使都去做同一件事情,那也要有不同之处。

操作系统一般要根据CPU来定制,我们现在常用的CPU就两家,AMD和inter的。他们当时的CPU架构都是32位的,因此操作系统也是32位的。后来由于其他配置的升级,CPU变成64位的。但是,索尼一开始就玩的128位的CPU架构。我们之所以没见过128位的PC操作系统,是因为索尼的CPU只自己用,不出售的。

32位系统指的是系统可以读取当地数值的极限是2^32。大约是42亿。换算成byte就是4G。这也是32位系统的内存上限。64位系统的读取上限是2^32^32。即40亿的32次方。这个数字有多大我没算过,但是应该超过20位数。远超过现在计算机配置的数值。也就没谁回去做更高级的128位地位CPU架构。因为用不到。


无所事事161773009


为什么没有人开发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年甚至更短的时间里就会出现。


日冲信息 黄


因为现在64位的操作系统已经满足现在任何操作系统运算的极限了,没有必要去研发没有意义的128位系统。

位数决定的是一台电脑所能支持的最大的运行内存,我们看一下早些年的32位操作系统,现在仍然有非常多的电脑都安装的是,而这款32位操作系统所支持的最高内存就已经达到了4GB,对于电脑来说4GB足够很多用户日常使用了。

现在电脑目前普遍使用的是64位的操作系统,这个系统对于内存和运算数据的处理是非常恐怖的,因为计算位数和带宽有一个计算公式就是2的N次方,比如32位的操作系统就是2的32次方了,那么对于64位操作系统来说这个数据量已经是个庞然大物了,更不要说128位了。

总结来说就是64位操作系统差不多能够用到电脑时代的结束,研发128位操作系统就好比画蛇添足,耗费大量的人力物力,实际对人类没多大价值的东西。


卡斐乐Cafele


开发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位的浪费。


小鸽子看世界


欢迎关注我,一个程序员老司机,和你分享编程、运营、需求等等经验和趣事。

128位的OS是否可以开发

以前是32位的操作系统,现在是64位的操作系统,也就是说,128位的操作系统是可以开发的,那么为什么在市场上我们看不到128位的操作系统呢?这主要是由于硬件的原因。

一台普通电脑最贵的是什么?

一台电脑最贵的部分应该是CPU、显卡,如果显卡显存越大那么价格就越贵,同理CPU也是,看看市场上的支持64位的CPU价格,我们就能够想象CPU的宝贵,从64位到128位操作系统,从科技观点来说,不是增加了2倍,而是增加了很多很多倍,换句话说,如果要制造出满足128位的CPU,除了对硬件的要求提高以为,其他很多方面都会有很大的变化,那么自然而然CPU的成本就非常非常高了,试想一下,如果让你花几万块钱为了买一个CPU,你会吗?答案肯定是很多人都不愿意。

总结

这种操作系统是可以做出来的,但是购买的人非常少,所以可行性分析通不过。


web互联网


32位系统是为解决16位存在2000年问题,1999年2月21日16时18分38,16位无法正常工作。

32位同样存在2038年问题,32位的最后时间是2038年1月19日03:14:07。

64位的最后时间是292,277,026,596年12月4日15:30:08,还能使用2900多亿年,有必要开发128位吗?


用户65866991935


处理器有128位的操作系统才能开发128位。

而且需要用128位来表示的数得有多大啊,

计算机做一次加法的时候

一下读进来128比特的数据

算个1+1等于2也得读进来128位的1吗(00000.......0001)

那岂不是很浪费资源?

2的64次方已经很大了

2的128次方。。。。

那可不是再乘个2的差距啊

简直大到我无法想象。。。

但是好像也没有什么用。。。

适可而止,吃火锅1个人200块钱肯定管够

你非要有钱加个平方,要吃40000块钱的火锅,

这40000块钱的火锅质量跟200的一样,

你说你能吃得完吗?

现在已经不是原来加主频,加位数,加核心的时代了

民用市场已经够用了

现在是定制计算的时代。

tpu计算单元 npu 这样的asic才是未来计算发展的方向


分享到:


相關文章: