当前位置: 首页 > 科技观察

再见!英特尔宣布全面关停业务

时间:2023-03-13 22:51:49 科技观察

作者丨LiamProvenTranslator|.  1960年代末和1970年代初的一些想法在今天仍然非常普遍,几乎每个人都知道它们,但在它们之后出现的好想法在很大程度上被遗忘了。  Optane是一项激进的革命性技术,但基于传统智慧和技术债,业内很少有人意识到Optane到底有多么激进。  回到这个问题的核心,我们不妨冷静地问:电脑文件的主要作用是什么?  第一台计算机没有文件系统。1940年代和50年代的超级计算机由数千个热阴极管组成,它们的内存只能存储几个字。最初,程序输入是通过将程序实际连接到计算机来手动完成的:只有数据在内存中。程序运行并输出一些结果。  随着存储容量的不断增加,我们迎来了冯·诺依曼架构,计算机程序与数据存储在同一内存中。在一些早期的机器中,内存是磁存储:一个旋转的磁鼓。  要将程序存入内存,请从纸上读取:穿孔卡片或纸带。当计算机的内存容量大到可以同时存储几个程序时,操作系统就出现了:这是管理其他程序的程序。  但是还是没有文件系统。有RAM,就有I/O:打印机、终端、读卡器等,但内存是计算机可以直接访问的所有存储。在1960年代,内存通常指的是核心内存,它有一个现在有时被遗忘的巨大优势:在计算机关闭后,核心内存中的任何内容都会保留在那里。重启电脑,上次的程序还在。  大约在这个时候,第一批硬盘开始投放市场:价格昂贵、速度慢,但与工作内存相比体积庞大。早期的操作系统被赋予了另一项工作:管理这个巨大的辅助内存。索引内容,找到需要的部分,并将它们加载到工作内存中。两级存储一旦操作系统开始管理磁盘驱动器,就会有主存储和二级存储。两者都可以直接由计算机访问,而不是像一卷纸带或穿孔卡片那样由操作员加载和卸载。主存储直接出现在处理器的内存映射中,其中每个字都是直接可读或可写的。  二级存储是一个更大、更慢的存储池,它对处理器不直接可见,但只能通过请求或将整个块发送到另一个设备(磁盘控制器)来访问池获取指定块的内容,或者将它们放入这个存储池中。这种分化一直持续到1970年代和80年代的8位微型计算机。我还记得将ZXMicrodrive连接到48KZXSpectrum。突然之间,Spectrum有了二级存储。Spectrum的Z80CPU有一个64kB内存映射,其中四分之一是ROM。虽然每个Microdrive磁带只有100kB左右,但存储容量相当于整个系统可用内存的两倍左右。所以必须有一些间接:磁带的全部内容不能加载到内存中。  内存放不下。因此磁带有索引,并且有包含BASIC代码、机器代码、屏幕图像或数据文件的命名块。  自微型计算机问世以来,我们仍然将主存储称为“RAM”,将辅助存储称为“磁盘”或“驱动器”,尽管在许多现代最终用户计算机中它们只是不同类型的电子设备,没有移动部件或单独的媒体。  可以通过将操作系统从“磁盘”加载到RAM来启动计算机。然后,当你想使用一个程序时,操作系统将它从“磁盘”加载到RAM中,然后程序可能会将磁盘中的部分数据加载到RAM中。即使是Chromebook,没有任何其他本机应用程序,单个应用程序也可以通过互联网从另一台计算机加载数据,然后将数据从磁盘加载到RAM中,最后将其发送到笔记本电脑。自1969年首次编写UNIX以来,“一切都是文件”一直是一句口头禅。类Unix操作系统使用文件系统来管理各种非文件操作:对机器的访问由文件上的元数据控制,对I/O设备的访问就像访问文件一样,可以通过将声音“复制”到音频设备来播放声音等来完成。自从1984年UNIXV8出现以来,甚至出现了一个名为/proc的伪造文件系统,它会生成伪造的文件供用户使用程序可以读取,在某些情况下还可以写入,显示有关正在运行的系统的信息。有关内存和进程的信息。  文件是一种强大的东西,在1969年被广泛使用是不可想象的,当时Unix是在一台只能存储多达64,000个单词并且没有声音、图形或网络的微型计算机上编写的。今天文件无处不在。  但文件和文件系统只是一个拐杖。  发明了“计算机文件”的概念,因为主存储太小,而二级存储太贵、太大、太慢。在60年代,将数百万字的内存连接到大型机的唯一方法是使用文件柜大小的磁盘驱动器,否则存储量将太大而无法放入计算机的内存映射中。  于是大型机公司设计了磁盘控制器,并在操作系统中内置了一种数据库。想象一个只有几千字大小的薪资程序,处理数万名员工的文件,以小块执行:从人事档案中读取一行,从工资文件中读取一行,计算结果,然后写一行Writetopayrollfile,然后重复。操作系统检查索引并将其转换为磁盘控制器的指令:“这里,从磁道4、磁头7、扇区65、磁道52、磁头12、磁头34和块57获取块47……现在,写入74.32到这个街区……”。  SSD出现在90年代,到2000年代,它们变得可以负担得起。固态硬盘用电子存储取代了磁存储,但它仍然是二级存储。SSD伪装成磁盘驱动器:计算机与磁盘控制器通信并发送和接收扇区,驱动器转换它们以模拟类似硬盘的写入512字节扇区的功能。  问题是必须这样访问flash。直接映射到计算机内存太慢,无法逐字节重写闪存。为了修改闪存块中的单个字节,必须将整个块的其余部分复制到别处,然后擦除整个块。计算机的内存控制器不是这样工作的。未来就在这里,但现在已经过去了  有了Optane,就有可能消除这种情况。与核心存储一样,它是工作内存:主存储。Optane设备与磁盘驱动器一样大且便宜。其容量达到数百GB,与普通SSD的容量相近,但可以直接安装到主板的DIMM插槽中。每个字节都出现在处理器的内存映射中,每个字节都可以直接重写。无需像闪存一样移动块来擦除它们。它还支持数百万次写入周期,而不是数万次。  数百GB甚至TB级的动态非易失性存储,比闪存快数千倍,可靠性也高数千倍。不是在磁盘控制器另一侧的辅助存储,而是在内存映射中。  不,不是无限可重写的。因此,您的计算机还需要一些RAM来保存变量和快速变化的数据。但是,不是每次要使用程序时都将程序从“磁盘”“加载”到“RAM”,而是加载一次程序,然后它永远驻留在RAM中,无论是否断电,无论您是否关掉电脑去度假一个星期。重新打开它,您所有的应用程序仍在内存中。  无需安装操作系统,无需启动,无需更多应用程序。操作系统总是在内存中,您的应用程序也是如此。如果您的计算机有1TB或2TB的非易失性内存,您还需要SSD做什么?都是回忆。一小段速度很快,几乎可以无限重写,但它的内容在断电后就消失了。剩下的95%永远持有内容。  当然,如果系统是服务器,可能会有一些旋转的磁盘,可以管理PB级的数据。数据中心需要它,但很少有PC需要它。  Linux当然支持这个。但是Linux毕竟是Linux,一切都得是文件,所以它通过对文件进行分区,用文件系统格式化来支持。使用主存储在软件中模拟二级存储。  目前主流的操作系统并不了解计算机只有主存储,根本没有辅助存储的概念。相反,它们分为小容量易失性部分和大容量非易失性部分。甚至很难向熟悉当前计算机工作原理的人描述,我试过了。  没有目录怎么找到要运行的程序?内容无处可存,如何保存?由于没有文件而无法将一个文件#include到另一个文件中时,如何编译代码?生成的二进制文件放在哪里?  有一些关于如何做到这一点的想法。就像Twizzler一样,这是一个研究项目,旨在研究如何使其看起来足够像Unix系统,以便现有软件可以使用它。在惠普实验室的一位研究人员发明了忆阻器后,惠普按捺不住激动的心情,想出了一些宏大的计划……但这项新技术要推向大众市场却花了很长时间,最终惠普放弃了。  但是英特尔让它成功了,把它推向了市场……但是没有足够多的人感兴趣,现在它也心灰意冷了。  未来已来,但从六十年代小型计算机操作系统的设计来看,如果一切都是文件,这个傲腾只是一个非常快的磁盘驱动器,不是吗?  不是这样。这是自小型机问世以来的最大进步。但是我们搞砸了。  再见,傲腾。我们还没来得及认识你。  原文链接:  https://www.theregister.com/2022/08/01/optane_intel_cancellation/