当前位置: 华文世界 > 数码

万字长文:读懂大型机的前世今生!

2024-06-27数码

大家好,我是老猫, 今天我们来考古下大型机。

很多人都知道,个人电脑之前被称为 微型计算机 ,那么有微型计算机就有小型机、中型机、 大型机 今天我们重点来聊聊大型机。

▉ 什么是大型机?

可能小伙伴会问,什么是大型机?

我们先来看看维基百科是这样介绍大型机的, 大型机或者称大型主机,英文名mainframe。 大型机使用专用的处理器指令集、操作系统和应用软件。大型机一词,最初是指装在非常大的带框铁盒子里的大型计算机系统,以用来同小一些的迷你机和微型机有所区别。大多数时候它却是指system/360 开始的一系列的IBM计算机。

大型机主要用于大量数据和关键项目的计算,例如银行金融交易及数据处理、人口普查、企业资源规划等。

作为大型机目前 仅存的巨头厂商 ,IBM是这样介绍大型机的:从核心而言,大型机是高性能的计算机,具有大量内存和处理器,能够实时处理数以十亿计的计算和事务。大型机是需要高度的弹性、安全性和敏捷性的商用数据库、事务服务器和应用的关键所在。

说人话就是:大型机是给有钱人用的顶级服务器,具有顶级的计算能力、可靠性以及售后能力。

▉ 为什么需要大型机?

很多人可能会问,为什么需要大型机?

答案就是无可替代, 大型机是计算能力非常强大、可靠性非常高的电脑, 大型机出现就是为了满足专门的需求,所有东西都是封闭的,是真正的软硬件一体机,代码都是针对某种场景特殊优化的, 所以可以应对大量数据和关键任务,通常用于金融、银行和政府部门。

我们前面提到的中型机、小型机在性能、稳定性等方面要差很多, 完全满足不了大量数据和关键任务的需求。 同理,x86服务器虽然性价比高,但是性能和稳定性就更差了。

可能有人会说,我们不是有超级计算机吗?这个不能替代大型机吗? 超级计算机和大型机之间的差异在于它们处理的问题类型。 一台超级计算机将所有的数字技术都集中在尝试解决单个问题上。大型机使用其所有的计算能力来执行数十亿的小事务。这也是大型机经久不衰的重要原因。

我们用个比喻来形容下大型机, 在大型机中,任务像主人,操作系统和CPU是管家,它们都围绕着任务转,一切都井井有条,精细分配,确保满足任务要求,在业务之初,就大概知道响应时间最差是多少。 而在Unix和小型机(及以后的PC,手机),任务就像窗口排队打饭的大学生,操作系统是窗口大妈,业务是否堆积,调度是否平顺,没人管的,但只要大妈手快,也没见谁吃不上饭,至于偶尔窗口堆积(卡顿),谁在意呢?

但很多场景,是不允许有卡顿的,例如,你在银行存钱,钱存进去了,但是查询银行卡余额一直没有增加,这是肯定不行的。

▉ 大型机的发展史

在大型机的几十年的发展史中,大型机既迎来过无数印花与掌声、也经受过诋毁与指责。它诞生后而又重生(而且不止一次),甚至曾经宣告灭亡。然而时至今日,大型机在众多巨头级企业当中仍然扮演着提供计算资源的关键性角色,其生命力也将继续延续下去。

下面我们将回顾大型机多年来的发展历程, 闲言少叙,下面书归正传。

The Harvard Mark I(哈佛马克一号)

大型机之旅始于IBM,相信这应该并不令人意外。在20世纪30年代,当时人们还是手持计算尺来计算,IBM主要以打孔卡片机而闻名。但 IBM迎来了一位远见卓识的领导托马斯·沃森, 这让IBM从众多商用机器销售商之一转变成为了后来的计算机垄断公司。

Harvard机器是托马斯·沃森愿景的体现,尽管从实际的角度来看,它并不被很多人认为是大型机技术的一个起点,但是仍然值得我们一看。

这一切都始于1936年,当时哈佛研究员霍华德·艾肯正在尝试解决一个与真空管设计相关的问题。为了取得进展,他需要解决一组非线性方程,而当时没有可用的东西可以为他做这件事。 艾肯向哈佛的研究员提出,你们应该建造一个能够解决这些问题的大型计算器。但他的请求并没有得到很好的回应。

随后艾肯接触了门罗计算公司,该公司拒绝了这个提议,于是艾肯把这个提议带到了IBM。 艾肯的提议只是一个需求文档,并不是一个真正的需求,而是需要由IBM来弄清楚如何满足这些需求 。最初这个商机的成本估算需要15000美元,但是到1939年IBM正式接受提议时,这个数字迅速膨胀到100000美元。而最终IBM花费了大约200000美元来制造哈佛马克一号。

直到1943年哈佛马克一号才运行了第一次计算。因为计算机需要在不同的计算单元之间进行机械同步,所以由一个五马力马达驱动的轴贯穿其整个长度,计算机「程序」是通过在插线板中插入电线链接来创建的,数据是通过打孔卡片读取,结果通过打孔卡片或电动打字机打印出来。 即使按照当时的标准,哈佛马克一号的计算也是很慢的, 它每秒只能做三次加法或减法,机器做一个单独的乘法需要相当缓慢的六秒钟。对数和三角形计算每个都需要超过一分钟。

正如前面提到的, 哈佛马克一号进入了一个技术死胡同,在它使用的15年里并没有做太多重要的工作。 尽管如此,它 代表了有史以来制造的第一台全自动计算机。 虽然它非常慢,机械的并且缺少像条件分支这样的必需品,但它是一台计算机的雏形,代表了人类向第一台电子计算机的迈进。

阿塔纳索夫-贝瑞计算机(Atanasoff-BerryComputer,简称ABC)

如今,ABC已经被公认是第一台电子计算机。

你可能会认为「电子」是多余的,但正如我们刚刚看到的哈佛马克一号,它确实可以称为计算机,只不过没有电子组件,而是使用机械开关、可变齿轮、继电器和手摇曲柄。 相比之下,ABC使用电子进行所有计算,因此代表了计算的一个重要里程碑。

虽然它是电子的,但计算机的部件与今天使用的部件非常不同。事实上, 当时在1939年约翰·阿塔纳索夫获得资金建造原型时晶体管和集成电路并没有出现,因此使用了当时可用的东西:真空管。 真空管可以放大信号并充当开关,因此可以用来创建逻辑电路。然而,它们使用了很多电力,变得非常热,并且非常不可靠。真空管是当时人们权衡利弊的选择,也成为当时计算机一个不好的特征。

ABC通过真空管创建的逻辑电路是快速的, 并且使用的是二进制计算方法, 可以在每秒30次操作中进行加法和减法计算。虽然今天使用二进制系统会很正常,但在当时,由于许多人不熟悉这种数字系统,所以计算机使用二进制系统是很少见的。

ABC的另一个重要的技术是使用电容器进行内存存储, 但在当时内存并不是真正的随机,因为它实际上包含在一个每秒旋转一次的旋转鼓中。特定的内存位置只能在鼓的该部分在读取器上方时读取,这显然有严重的延迟问题。

后来,ABC增加了一台打孔卡片机(当时企业非常广泛地使用打孔卡片来存储记录并在它们上面执行计算),以保存不适合鼓内存储的数据。

在现在看来,这台计算机在当时并不是很有用,它甚至不是可编程的。但至少在概念层面上,它对计算机来说是一个非常重要的里程碑,可以说是未来计算机的祖先。

另外值得注意的是 ,在这台机器工作时,阿塔纳索夫先生邀请了一个名叫 约翰·莫奇利 的人来看他的创造。让我们记住这个人的名字,他在后面很重要。

ENIAC

1941年12月7日,日本袭击了珍珠港,将美国卷入第二次世界大战的冲突。

每个参战国都有一个问题,即为他们 编制枪支和火炮编制的数据表格。 射表描述了仰角、射高、射程等性能诸元之间的关系。典型的射表包括 3000 条弹道数据,即便利用当时性能最强大的计算工具,编制一份完整的射表也要一个月时间。这种速度根本无法满足战时需求,实验室主管心急如焚。

因此,美国军方向宾夕法尼亚大学的摩尔电气工程学院提供了资金,

以建造一台电子计算机来促进这项工作。而我们上面提到的 约翰·莫奇利 就在那里,然后他与一位非常有才华的研究生 约翰·埃克特一起承担了这个项目 。这次合作更改了历史进程和战争结果,并为人类往后几十年的生活方式做出了巨大变革。

但是第二次世界大战在机器完成之前就结束了。在1946年完成时,ENIAC是一个30吨的怪物,由49英尺高的机柜、18000个真空管、1500个继电器、70000个电阻器、10000个电容器和6000个手动开关组成,能消耗200千瓦电。

尽管在战后完成,ENIAC几乎被证明是无用的。但这台机器每秒能够进行5000次加法、357次乘法或38次除法,其性能令人难以置信。人类数学家需要20小时解决的问题,ENIAC只需要30秒。

除了所有真空管机器固有的不可靠性之外, 这台机器的主要问题在于它在传统意义上并不是可编程的。 "程序"是通过在插线板和开关组上工作的"ENIAC女孩"输入的。这通常需要几个小时到几天。此外,与ABC计算机相比,ENIAC是一个倒退,它使用十进制而不是二进制数字。

尽管如此, ENIAC 对美国来说是一个非常有用的机器,尤其是后来增加的增强功能。 在其使用寿命期间,它处理了从天气预报、随机数研究、热点燃、风洞设计、火炮轨迹计算,甚至是氢弹开发的问题。事实上,直到1955年它退役时,据估计ENIAC单独完成的计算比1945年之前所有人类完成的计算还要多。

虽然ENIAC的故事在1955年就结束了,但莫奇利和埃克特这两位计算机领域的传奇人物的故事还远没有基础。

EDVAC

当时,虽然ENIAC运行很快,但在ENIAC进行第一次测试之前,莫奇利和埃克特意识到ENIAC存在的种种不足。

ENIAC有几个主要问题。首先它的 存储空间非常小。 而且它必须通过重新布线来重新编程,这可能需要几个小时甚至几天,而且由于计算机使用了那么多真空管, 它不够可靠 。同时除了不可靠之外,真空管还使用了 很多电力,占用了很多空间,并产生了很多热量。 据称当它运行时,莫尔学院所在小镇的灯光都会变暗。

在1944年8月莫奇利和埃克特便提出研制 ENIAC 的后继机型——EDVAC(离散变量自动电子计算机)。

与ENIAC 不同,EDVAC有两个重要的变化 。首先,EDVAC是二进制而不是像ENIAC那样的十进制,这更有效。其次,EDVAC不需要你每次想改变「程序」时重新给机器布线,EDVAC引入了将程序存储在内存中的想法,就像它是数据一样。 这就像我们今天所做的,为应用程序和它们的数据分别设置RAM区域,处理器根据访问内存的上下文知道它是数据还是可执行文件。

此外, 内存不再由真空管组成,而是以水银中的电脉冲形式存储。 水银延迟线存储器在存储数据所需的电子方面比以往任何时候都高效100倍,使得更大量的内存变得可行且更可靠。

EDVAC是一个重大进步,直到1960年退役,证明是非常有用的。 它是一个二进制存储程序计算机,比ENIAC可以编程的速度要快得多。它也小得多,重量不到9吨,消耗「只有」56千瓦的电力。 尽管如此,莫奇利和埃克特两位传奇人物并没有满足。

UNIVAC

1946 年春天,新上任的莫尔学院研究主管要求莫奇利和埃克特将所有专利成果移交给宾夕法尼亚大学,遭到两人断然拒绝。

莫奇利和埃克特坚信制造计算机是一门有利可图的生意, 两人决定从莫尔学院辞职,并利用风险投资创立了全球第一家计算机公司——电子控制公司(Electronic Control Company), 在1947年两人将公司注册为Eckert-Mauchly计算机公司,或称EMCC。

EMCC员工

他们的离开推迟了EDVAC的完成,以至于基于EDVAC设计的EDSAC实际上在它之前就完成了。然而,这个充满活力的二人组想要探索这种新技术提供的商业机会,而这在大学资助的研究中是不可能的,所以他们根据他们对EDVAC的想法开发了一台计算机UNIVAC。

UNIVAC是有史以来第一台商业计算机 ,在1951年推出后,共有46个Units被出售给企业和政府。

在UNIVAC之前,所有计算机都是独一无二的, 这意味着它们只制造了一个。UNIVAC的不同之处在于可以设计出多个相同的UNIVACS。同时埃克特和莫奇利还得出结论, 计算机不仅可以用于计算,还可以用于数据处理,而当时他们许多同时代人认为使用同一台机器解决微分方程和支付账单的想法是荒谬的。 无论如何,这一结论对于UNIVAC的设计和成功至关重要。

在设计细节层面上,UNIVAC由5200个真空管组成(几乎所有的都在处理器中),重29000磅,消耗125千瓦电力,并以惊人的2.25兆赫时钟速度运行。它每秒能够进行455次乘法,并可以在其水银延迟线内存中存储1000个单词。每个内存单词可以包含两个指令、一个11位数字和符号,或12个字母字符。虽然处理速度大致相当于ENIAC完成它能够执行的任务所需的时间。但在几乎所有其他方面,UNIVAC都要比ENIAC更好。

而且最重要的是, UNIVAC比ENIAC更可靠 (主要是因为它使用的真空管少得多)。此外,它的名字中的「Automatic」暗示了它不需要人力来运行。所有数据都存储在金属磁带驱动器中(而不是每次运行程序时都必须手动加载纸带或打孔卡片)。使用磁带使得实际处理速度比ENIAC快得多,因为I/O瓶颈得到了缓解。

当然,UNIVAC还引入了其他一些便利功能,如缓冲区(类似于缓存),在相对较快的延迟线和相对较慢的磁带驱动器之间,用于数据检查的额外计算。

为推广 UNIVAC,雷明顿-兰德说服哥伦比亚广播公司采用 UNIVAC 预测 1952 年美国总统选举的结果。莫奇利在他人协助下编写了一套预测程序,尝试利用部分关键州的提前投票结果预测大选结果。

最终,德怀特·艾森豪威尔击败阿德莱·史蒂文森当选第 34 任美国总统, 两人分别获得 442 张和 89 张选举人票,这个结果与 UNIVAC 最初的预测(438 票和 93 票)相当接近。 这让UNIVAC声名鹊起。

哥伦比亚广播公司利用 UNIVAC 预测 1952 年美国总统选举的结果

UNIVAC 是第一台商业上可用的计算机,使Remington Rand公司(后来收购了EMCC)在新兴的电子计算机行业中占据了非常强势的地位。但此时IBM在做什么?

IBM 701

UNIVAC 在大选之夜的出色表现令 IBM 倍感震惊。公司总裁小托马斯·沃森决定,IBM 必须立即进军数据处理计算机市场。

1952年4月29号,IBM所展示的国防计算机最终以IBM 701电子数据处理设备的名号正式与广大用户见面了。

从IBM 701开始,IBM开始正式进入大型机市场,701和UNIVAC之间有许多相似之处,但也有许多不同之处。 IBM 701内存不是存储在水银延迟线存储器中,而是存储在被称为「威廉管」的3英寸真空管中, 尽管它们比普通真空管更可靠,但它们仍被证明是计算机最大的不可靠来源。然而,「威廉管」一个好处是一个单词的所有位可以同时检索,而不是UNIVAC的水银延迟线存储器,内存是逐位读取的。

IBM 701的CPU也比UNIVAC的快得多,几乎每秒可以执行2200次乘法,而UNIVAC是455次。它还可以每秒执行近17000次加法和减法,以及大多数其他指令。这在当时是显著的。

另外,IBM的800万字节磁带驱动器也非常好,可以比UNIVAC的更快地停止和启动,每秒能够读写12500个数字。然而,与拥有缓冲区的UNIVAC不同,IBM 701处理器必须处理所有I/O操作,这可能会严重影响基于I/O的应用程序的性能。

1956年,IBM推出了一种名为RAMAC的技术 ,这是计算机的第一个磁盘系统。它允许数据快速从磁盘的任何位置读取,并且不仅可以连接到701,还可以连接到IBM的其他计算机,包括接下来会看到的IBM 650 磁鼓数据处理机。大多数人都没有意识到的,这项技术到今天仍然与我们在用的硬盘是一样的起源。

IBM在当时生产了19台701 Units,这比UNIVAC制造的数量少,但仍然足以防止Remington Rand公司主导大型机领域。成本是IBM 701一个严重的阻碍,用户每月花费超过16000美元。另外,701只是IBM回应的一部分。650系统是IBM非常重要的另一个大型机系统。

IBM 650磁鼓数据处理机

虽然IBM对UNIVAC的更直接回应是701(以及后来的702),IBM同时还在开发一种名为650磁鼓数据处理机的低端机器。IBM 650定位在像701和UNIVAC这样的大型主机和当时使用的打孔卡片机之间,当时后者仍然主导着市场。

尽管701引起了大部分兴趣,但650却赚取了大部分钱,并帮助IBM确立了在电子计算机行业的地位。 IBM 650每月的使用成本为3250美元(IBM当时不出售计算机,只出租), 它比701和UNIVAC便宜得多,但仍然比当时非常普遍的打孔卡片机贵得多。总共,这些机器制造并出租了2000多台。虽然这大大超过了701和UNIVAC的部署,但与IBM在同一时期销售的打孔卡片会计机的数量相比,这个数字还是微不足道的。

尽管按照计算机标准非常可靠,但它仍然使用真空管,因此本质上不如IBM的机电会计机可靠。此外,它的成本也高得多。最后,机器的外围设备充其量是平庸的。所以,直到1950年代末,IBM的主导机器是打孔卡片会计机407。

要能够取代IBM会计机407,需要一场剧变。计算机需要更好的外围设备,必须变得更可靠、更快,同时成本更低。

旋风计算机项目

旋风计算机项目是具有讽刺意味的。 它的预算远远超支,耗时比预期长得多,却从未在其预期的角色中使用过, 但可以说是计算机领域最重要的技术成就之一。

1943年,当美国空军给麻省理工学院的杰伊·福雷斯特旋风项目时,他被告知要创建一个模拟器来训练飞机飞行员,而不是让他们实际上在飞机中学习。 这个预期用途非常重要,因为它需要现在所说的「实时系统」,因为模拟器必须足够快地做出反应以模拟现实。 当其他工程师正在开发每秒可以处理1000到10000条指令的机器时,福雷斯特必须创建一台每秒至少能够处理100000条指令的机器。此外,由于它是一个实时系统,其可靠性必须比当时的其他系统高得多。

这个项目拖延了很多年,直到第二次世界大战结束后很久。而那时,将其用于飞行模拟器的想法消失了, 有一段时间,他们不太确定这台机器正在被开发做什么。 直到苏联引爆了第一颗原子弹,美国政府决定升级其陈旧且无效的现有防空系统。 其中一部分是开发基于计算机的指挥控制中心。 旋风项目有了新的使命,而且由于当时国际环境岌岌可危,大量资金被投入到这项研发。

然而,在当时,内存是一个问题。其它机器使用的水银延迟线存储器太慢了, 所以福雷斯特决定尝试一项有前景的技术:静电存储管。 这面临的一个问题就是当时可用的静电存储管还不存在,所以必须在这个之前投入大量的开发工作,然后才会有一个成型的可用产品。

当时,静电存储管被认为不可靠,而且它的存储容量非常令人失望。 因此,福雷斯特一直在寻找更好的技术,开始研究后来被称为「核心存储器」的东西。 他把他的工作传给了也在该项目上工作的研究生比尔·帕皮安,后者在1951年准备好了一个原型,并在1953年用铁氧体磁芯阵列替换了静电存储器作为主要存储器的计算机。这种阵列使计算机拥有17408个比特的存储容量,而且非常快,非常可靠,甚至不需要电力刷新就能保持其值。

核心存储器是解开谜题的最后一块拼图 。旋风计算机在1953年实际上已经完成,并首次部署在科德角。尽管它没有达到预期的性能水平,但它仍然能够每秒处理75000条指令。这远远超过了当时可用的任何东西。麻省理工学院将这项技术转移给IBM,生产版本被重新命名为IBM AN/FSQ-7,并在1956年投产。这些怪兽有超过50000个真空管,重超过250吨,使它们成为有史以来建造的最大的计算机。它还消耗了超过一兆瓦的电力,这还不包括必要的空调。

在当时,旋风计算机打算用于跟踪轰炸机的应用,但直到到1963年才完全运行。具有讽刺意味的是,这时候已经过了旋风真正有用的时代,因为它被设计用于跟踪轰炸机,而那时,洲际弹道导弹几年前已经出现。

尽管如此,虽然旋风计算机的实际用途存在疑问,但由它创造或加速的技术却非常重要。这些不仅包括前述的核心存储器,还包括印刷电路板、大规模存储设备、计算机图形系统(用于绘制飞机)、CRT和甚至是光笔。 将这些计算机连接在一起,使美国在网络专业知识和数字通信技术方面获得了巨大的优势。 它甚至有一个现代计算机所缺乏的功能:内置的点烟器和烟灰缸。显然,花费80亿美元完全安装SAGE(导弹跟踪系统)是值得的,尽管SAGE从未帮助拦截过一架轰炸机。

IBM 704

1954年宣布的IBM 704是第一台大规模商业可用的计算机系统,采用全自动浮点算术命令,并首次使用为旋风项目开发的磁性核心存储器。

核心存储器由微小的甜甜圈形状的金属片组成,大小大致与针头相当,导线穿过其中,可以朝任一方向磁化,给出逻辑值0或1。核心存储器有许多优点,尤其是它不需要电力来维护其内存。它还允许真正的随机访问,任何内存位置都被访问得和其他位置一样快(当然,使用交错时除外)。这与以前的存储器形式不同,它比其他使用的存储器技术快得多,访问时间为12微秒。

另外最重要的是, IBM 704提供的可靠性要大得多。对于长期存储,IBM 704使用磁鼓存储单元,对于额外的存储,使用能够容纳五百万字符的磁带。

704非常快,每秒能够执行4000次整数乘法或除法。然而,正如上文提到的,它也能够本地执行浮点算术,并能够每秒执行近12000次浮点加法或减法。更重要的是,704增加了索引寄存器,这不仅显著加快了分支,而且还减少了程序开发时间(因为现在硬件处理了)。

704开创了我们今天拥有的两项重大技术:索引寄存器和浮点算术。磁性核心存储器也非常有用,提供了更快的速度和更高的可靠性,但它是一种过渡技术。

IBM 1401数据处理系统

虽然650让IBM登上了大型机的路线图,但它的替代品—— IBM 1401 数据处理系统,使打孔卡片机变得过时。它 被认为是计算机行业的「Model T」 ,因为它的功能和相对低成本的结合,使许多企业开始使用计算机技术。

IBM 1401的普及帮助IBM成为那个时代的主导计算机公司。具有讽刺意味的是,它的成功并不完全对IBM有利,这台机器肯定不是它最大或最有利可图的。事实上,在某些情况下,它只是被用作它的大哥的附属品,将打孔卡上的数据转移到磁带上,并进行打印。

然而,这是第一次,大型机的成本、可靠性和功能对客户非常有吸引力。 与IBM 1401取代的650相比,1401大约快七倍,更可靠,并且得到了更好的支持。最重要的是,它有更好的I/O。IBM有先见之明地开发了一台机器,实际上做了它的客户真正需要的事情,并且以对他们有意义的成本。

同时,这个更新换代也给IBM带来了烦恼,因为当一个又一个客户将他们租用的会计机退还给IBM以换取这些新产品时,在短期内给IBM带来了很多问题。但这对IBM长远来说是有益的,忍受了这段痛苦,大型机为后来IBM带来了更多的收益。

那么, 是什么让这台计算机与客户产生如此强烈的共鸣呢? 核心存储器、晶体管、软件和打印机都是巨大的进步,其中任何一个方面都比650有了很大的进步。将它们全部放在一起,这台机器的销量超过了IBM预期的12倍。

我们已经在704的描述中介绍了核心存储器。它的速度、可靠性、高容量和更低的功耗使其成为一个非常重要的技术。然而,704是非常昂贵的机器,许多企业负担不起。1401将这项技术带到了更大的市场。

现在我们都知道晶体管是什么,但与当时的现有技术相比,它们的改进包括可靠性、功耗、散热和成本。

IBM采取的整体打包的方法还包括软件首次免费, IBM软件包括了满足客户需求的软件包,而不是让客户自己开发。 这至关重要,因为它节省了大量的时间和金钱用于内部开发,并允许没有程序员的企业最终获得计算机的好处。

而且奇怪的是,1401最大的优势之一是它的打印机。 1403「链式」打印机的额定速度为每分钟600行,是407会计机的四倍。 它也非常可靠。事实上,对许多人来说,1403打印机是大型机系统的一个重要特征,通常它与计算机一起销售给客户。

所有这些因素促成了一台改变计算机行业的机器。它不仅因其出色的技术特性而非常成功,而且由于其低廉的起始价格每月仅2500美元。事实上,在1401发布后,大型机赛道上仅剩 IBM 与另外 7 家公司。IBM 成为无可争议的王者,媒体将「蓝色巨人」及其竞争对手称为「IBM 与七个小矮人」。计算机行业的竞争进入新的阶段。

IBM 7090

1958年底,IBM宣布用7090取代了老化的709(我们前面看到的700系列中的最后一个)。事实上,在许多方面,7090本质上是一台用50000个晶体管而不是真空管制造的709。所以它带来包括速度和可靠性在内的许多好处。

7090及其后来升级的形式7094,都是非常经典、强大且非常大的大型机计算机——它们非常昂贵。7090每月租金约为63500美元,这是典型配置,还不包括电费。

尽管成本高昂,但这台机器的速度仍然可能非常吸引人。它比它取代的709大约快五六倍,每秒能够执行229000次加法或减法、39500次乘法或32700次除法。1962年宣布的7094能够每秒执行250000次加法或减法、100000次乘法和62500次除法。它可以使用32768个36位字的核心存储器。

然而, 除了实现最新技术(核心存储器、RAMAC、晶体管等)及其在速度、功耗和可靠性方面的相应改进之外, 它在功能上与前代产品并没有太大不同。工作是通过收集磁带卷上的作业来执行的,并以批处理方式运行,完成后将结果返回给程序员。

虽然这些机器的性能、容量和可靠性给人留下了深刻印象(主要归功于转向晶体管和其他新技术),但如果要称之为突破性的机器,推动了计算的边界,可能有些牵强。

IBM 7030(Stretch)

IBM 7030,或者说Stretch引入了许多至今我们仍在使用的技术,并且在推出后的三年里一直是世上最快的计算机。然而,它也被认为是一个失败,以至于IBM在很快降低了它的价格,损失了大约2000万美元。 怎么会这样呢?

1956年,洛斯阿拉莫斯科学实验室授予IBM一份建造超级计算机的合同。这台计算机的目标是提供比IBM 704的性能提高一百倍。这确实是一个雄心勃勃的目标。实际上,当7030在1961年发布时,它的性能比704高出最多38倍。 由于这个「令人失望」的性能,IBM被迫将这台机器的价格从1370万美元降低到区区778万美元,这意味着IBM在每台机器上都在亏钱。

虽然如此,在履行了合同义务后,IBM将7030撤出市场,这是一个重大的失望和失败吗?或许现在看来很难定义。

这台机器的性能远远领先于它所处的时代(0.5 MIPS),而且它引入的技术看起来像是现代计算机的名人录。指令预取听起来熟悉吗?操作数预取呢?那么并行算术处理呢?还有一个7619单元,它将数据从核心存储器传输到外部单元,如磁带、控制台打印机、卡片穿孔机和卡片阅读器。这是我们今天使用的DMA功能的昂贵版本,尽管大型机通道本身是实际的处理单元,并且比DMA功能强大得多。

它还增加了中断、存储器保护、存储器交错、存储器写缓冲、结果转发,甚至是推测执行。这台计算机甚至提供了一种有限形式的乱序执行,称为指令预执行。

同时,7030的应用几乎同样令人印象深刻。7030被用于发展核弹、气象学、国家安全和阿波罗任务的发展。 这只有在Stretch才变得可行,因为它拥有巨大的存储容量和令人难以置信的处理速度。事实上,它能够在一秒钟内执行超过65万个浮点加法和超过35万个乘法。索引单元内最多可以有六个指令在处理中,而前瞻和并行算术单元内最多可以有五个指令在处理中。

因此,在任何时候,Stretch内部最多可以有11个指令在执行阶段。即使与当时发布的出色的7090相比,7030的速度也快了0.8到10倍,这取决于指令流。

那么,尽管7030的生命周期短暂但非常有用,它的技术至今仍与我们同在,并且对传奇的System/360系列产生了非常重要的影响。这可能是大型机历史上最重要的计算机。然而,它是否是一个失败的产品呢?谁又能说清它的意义呢?

B 5000

自从UNIVAC以来,IBM并不是唯一制造计算机的公司。让我们来看一下 Burroughs的一台机器B 5000 。这是一个非常有趣的机器,特别是考虑到它在1961年宣布。事实上,直到今天,UNISYS仍然支持该软件。

B 5000是为高级语言开发的,即COBOL和ALGOL 。我的意思是机器语言主要是为了便于从更高级的语言翻译而创建的 。它包含一个硬件栈、分段以及用于数据访问的许多描述符。

描述符有许多用途,包括允许在硬件中进行边界检查、区分字符串和单词数组、简化动态数组分配、指示字符的大小,甚至是某物是否在核心存储器中。我们为什么需要这个?

用一个词来说,就是虚拟内存。B 5000是第一台商业上带有这项技术的计算机。它还支持多处理和多编程,即使是用ALGOL和COBOL。事实上,主控制程序(MCP),就像操作系统被称呼的那样,处理内存和输入/输出单元分配、程序的分段、子程序链接和调度,这解放了程序员从所有这些繁琐且耗时的任务中。

Burroughs自豪的另一个方面是计算机的模块化特性。它可以增加或减少,而无需对整个机器进行昂贵的「重新编程」。

B 5000并没有像IBM大型机那样取得商业成功。事实上,它有时被称为每个人都喜欢但没人买的机器。然而,它的设计无疑是领先和高效的。它专注于解决人类与计算机交互和关联的问题,而不是为了速度而速度。更重要的是,它引入的一些技术,如虚拟内存和多线处理,在现在的计算机中是必需的,其中一些技术在引入48年后仍然支持这一宏伟架构。

UNIVAC 1107

虽然IBM在Stretch的创新值得大量赞誉,但当时世界第二大计算机公司Remington Ran也忙着用自己的魔力创造UNIVAC 1107薄膜存储器计算机。

正如你会从它的名字中猜到的,它主要的技术成就是使用薄膜存储器。 它的访问时间是300纳秒,一个完整的周期时间是600纳秒,这在1962年机器发布时是极其快的。然而,这并没有取代具有大约两微秒周期时间的核心存储器,而是被用来提供多个累加器、多个索引寄存器和多个输入/输出控制寄存器。这允许更大的并行性,最终结果是速度的提高。总共有128个36位字的薄膜存储器(或者因为其功能被称为「控制存储器」)。按照今天的标准,这根本不能被视为存储器,而是处理器的一部分,就像寄存器一样。

尽管在两种情况下,它们确实是非常快的内部存储器。一个区别是控制存储器寄存器实际上是通过使用存储器地址而不是寄存器名称来访问的,但只有当使用特殊的指令指示符或被执行地址引用时。如果不是这种方式访问,地址会被映射到核心存储器。所以,相当奇怪的是,前128字节的存储器映射会根据不同的上下文而不同。

虽然薄膜存储器当然是池中最大的水花,但这条持久的产品线还有其他值得一提的有趣特性。 首先,它有36位的可用字大小。字符以6位表示。存储器banks是交错的,这样如果从不同的banks连续读取,访问时间仅为1.8微秒。如果单词在同一个bank中,则是4微秒。正如提到的,由于更有可能访问不同的bank,这平均为两微秒。1107还包括16个输入和16个输出通道,所有这些都可以同时使用,以支持每秒最多25万个单词。

该机器的主要存储器由一到八个磁鼓组成,每个能够存储从262144到6291456个单词,这使得这台机器具有超过9400万个36位单词(或超过5亿个字符存储)的庞大容量。

尽管UNIVAC 1107无疑是一台优秀的机器,但它更重要的意义是它所开创的计算机系列。 虽然从未接近IBM即将推出的计算机系列的销量,但UNIVAC的1100系列使该公司多年来成为世界第二大公司,至今仍由UNISYS支持。

这里已经足够谈论UNIVAC了 ,接下来让我们回到IBM。

IBM的System/360系列

当大多数人想到大型机时,他们会想到IBM的System/360系列计算机,这可以说是IBM创造的最重要的计算机架构。 在许多方面,它与8086处理器类似,因为它为一个行业创造了标准, 并催生了一系列至今仍在活跃和繁荣的后代。

我们先回到手头的问题。在System/360之前 ,IBM手上有点混乱,因为它创建了许多彼此不兼容的系统。 这不仅使得客户升级更加困难,而且对于IBM来说,在不同的硬件上支持所有这些不同的操作系统也是一个运维噩梦。所以,IBM决定创建我们今天几乎认为理所当然的东西:一系列兼容的计算机,具有不同的速度和容量,但都能够运行相同的软件。

事实上,在1964年4月,IBM宣布了六台计算机,性能在最高和最低端机器之间相差50倍。这实际上是设计目标25的两倍,这本身就给IBM带来了许多问题。 这种规模的可扩展性据说甚至是才华横溢的Gene Amdahl都说是不可能的。 这从来就不是一个简单的问题,只是使某些东西比最小的部分「更大」25倍,它确实需要完全重新实现。

今天,我们通常会禁用处理器的部分,或者降低时钟频率,以某种方式妥协性能。 但那时候,创建一个高端处理器并人为降低其性能以满足市场营销目的,在经济上是不可行的。 所以,IBM决定在System/360上添加「微编程」,这样所有家族成员都使用相同的指令集(除了最低端的20型号,它可以执行一个子集)。然后,这些指令被分解为一系列「微操作」,这些操作特定于那个系统的实现。通过这样做,底层处理器可以非常不同,这允许IBM想要的可扩展性,并且如上所述,甚至超过了两倍。

这对你来说可能听起来很熟悉,因为自从Pentium Pro(或者实际上是NexGen Nx586)以来,类似的东西已经在x86处理器上实现了。 然而,正如提到的,IBM是计划好的。 x86设计师之所以这么做,是因为指令集非常差,它不能被直接有效执行。微编程有一个非常重要的优势,这在微处理器上不容易实现。通过创建新的微编程模块,System/360可以与非常流行的1401兼容,对于低端机器,甚至是7070和7090对于高端System/360。由于这是在硬件中完成的,它比任何软件仿真都要快得多,实际上通常在System/360上运行旧软件的速度比在原生机器上快得多,因为机器更高级。

这些进步中的一些至今仍与我们同在。首先,System/360将字节标准化为8位,并使用32位的字长,这两个都有助于简化设计,因为它们是2的幂。除了最低端的20型号外,所有型号都有16个通用寄存器(与x86-64相同),而大多数以前的计算机只有一个累加器,可能有一个索引寄存器,以及可能的其他特殊功能寄存器。System/360还可以寻址高达16 MB的巨大存储器,尽管在那个时候这种存储器并不可用。最高端的处理器可以运行在非常可观的5 MHz(回想一下,这是8086在14年后推出时的速度),而低端处理器运行在1 MHz。1966年后期推出的型号还有流水线处理器。

虽然System/360确实开辟了许多新的领域,但在其他方面它未能实现重要的技术。 最明显的不足是没有动态地址转换(除了后来的67型号)。这不仅使虚拟内存变得不可能,而且使机器不适合适当的时间共享,这现在随着计算机性能和资源的提高成为可能。

此外,IBM避免了集成电路,而是使用了「固体逻辑技术」, 这可以大致被认为是介于集成电路和简单晶体管技术之间的某种技术。相反,在软件方面,IBM对OS/360可能有点过于雄心勃勃,OS/360是为System/360设计的操作系统之一。它迟迟未推出,使用了大量的存储器,非常臃肿,缺少一些承诺的功能,而且更重要的是,发布后很长时间内仍然臃肿。这是一个众所周知的、高知名度的、戏剧性的失败,尽管IBM最终做到了,并且它催生了非常重要的后代。

尽管存在这些问题,System/360受到了难以置信的好评,在第一个月就有超过1100个Units被订购 ,远远超过了IBM的目标和能力。它不仅最初成功,而且证明是持久的,并催生了一个大型克隆市场。克隆甚至在当时的苏联制造。它被设计成一个非常灵活和适应性强的系列,被广泛用于各种类型的努力,最著名的或许是阿波罗计划。

更重要的是,System/360开创了一个系列, 几乎50年来一直是计算的支柱,并代表了计算历史上最商业重要和持久的设计之一。

CDC 6600

当IBM忙于关注其System/360系列的广泛兼容系统时,一家名为 CDC 的公司为其下一台计算机 设定了不同的设计目标:快,更快。

没有任何其他考虑的束缚,如兼容性或成本,西摩·克雷(Seymour Cray)得以自由地运用他传奇般的才能 专注于纯粹的速度 。他成功了,因为这台大约700万美元的机器通过采用现在被称为非对称多处理器设计的独特设计,从1964年到1969年成为最快的计算机。

CDC 6600主CPU以惊人的10 MHz运行,但它能执行的指令非常有限, 因为它在非常真实的意义上是RISC处理器,早在这个术语被创造出来之前。它只能执行非常简单的ALU功能,但它由10个逻辑外围处理器补充,这些处理器可以做CPU不能做的事情,并为它提供数据,同时不受数据的束缚。使处理器更加专业化的能力和使用10个「桶」处理器的并行性是这台机器卓越性能的关键组成部分。拥有巨大的存储器(128 K字),这台60位计算机可以为了简单指令集可以提供的额外性能而交换更大的可执行文件大小。

尽管CDC 6600是一台盈利的机器,但它从未威胁到System/360的市场份额 ——也从未打算这样做。就像我们的下一台机器一样,有时在IBM没有竞争的地方竞争,比在它已经瞄准的地方竞争更好。6600针对的市场甚至高于System/360 Model 75可以达到的市场,而我们接下来要看的计算机针对的市场低于System/360 Model 20。

DEC PDP-8

当IBM忙于发布其宏伟的System/360系列时,数字设备公司(DEC)也即将发布一台将对未来计算产生重大影响的计算机,PDP-8。尽管System/360中的不同计算机在性能特性和容量方面有着巨大的范围,但它们仍然是大型机,即使是最低端的型号对许多企业来说仍然太昂贵了。DEC的创始人肯·奥尔森(Ken Olsen)没有错过这个机会。

尽管DEC早在1960年就发布了计算机,但这些型号只取得了有限的成功,对行业影响甚微。然而, 技术的稳步进步,主要是集成电路的形式,使DEC能够销售比上一代更小、更便宜的计算机。 集成电路还允许更低的功耗,随之而来的是更少的散热。这使计算机摆脱了专门建造的空调房间。1965年发布时,PDP-8的售价惊人的低,仅为18000美元,加上前面提到的住房要求,使计算机在许多以前发现它们过于昂贵的公司中变得触手可及。

PDP-1,DEC的第一款产品,一个独特的功能是使用真正的直接存储器访问(DMA),这比大型机使用的通道便宜得多,也更不复杂,而且对处理器性能没有太大负面影响。事实上,一个单一的大型机通道的成本超过了整个PDP-1。DMA在DEC制造的每一台后续计算机上都使用了,包括PDP-8。

然而,为PDP-8做出的所有成本削减妥协并非都是良性的。12位字长极大地限制了直接可寻址存储器的数量,而字中的7位包含地址字段,只允许直接寻址128字节。有一种解决方法是使用间接寻址,其中7位指向包含要访问的实际地址的存储器位置,这虽然慢,但允许完整的12位访问。另一种方法是将存储器划分为128字节的段,并在必要时更改段(人们认为16位x86处理器的64 K段已经很糟糕了)。这两种解决方案都不理想,它们严重限制了PDP-8与高级语言的实用性。PDP-8也不是速度之王,只能每秒执行35,000次加法。

尽管做出了这些妥协, PDP-8取得了显著的成功,在停产之前卖出了超过50000台机器。 低廉的购买价格、持续的低成本和易于安置都是比它的缺陷更有说服力的因素。事实上,这台谦逊的机器激发了一种全新的计算机类型,即迷你计算机,它在接下来的二十年里非常成功,并使DEC成为世界上第二大计算机公司。也许遗憾的是,迷你计算机没有在微计算机的进军中幸存下来,现在它已经是一个灭绝的物种,因此更适合被称为恐龙,而不是通常接受这一不雅称呼的大型机。大型机仍然位于食物链的顶端,能够完成远远超出桌面计算机的任务。

System/370

尽管System/360非常成功,在某些方面是革命性和创新性的,但它也避免了一些领先技术,给其他公司留下了利用的机会。然而,值得称赞的是,即使在宣布六年后,它仍然卖得很好,并且为后续几代产品奠定了基础,其中System/370是第一个。

1970年最初推出的System/370只包括两台机器, 魅力四射的155(运行速度接近8.70 MHz)和165(运行速度为12.5 MHz) 。自然,两台机器都与为System/360编写的程序兼容,甚至可以使用相同的外围设备。此外,性能大大提高,System/370 165的性能接近System/360 65的五倍,后者是在1965年11月发布的该系列中最快的机器。

与System/360相比,System/370还有一些新技术。IBM终于转向了集成电路,许多人认为这一变化早就应该到来。 系列中的大多数型号都采用了晶体管存储器而不是核心存储器。 System/370还终于支持动态地址转换(除了最初的两款车型),这是时间共享和虚拟内存的重要技术。还有一个非常高速度的存储器缓存(165为80 ns),IBM称之为缓冲区。这是处理器用来减轻相对缓慢(两微秒或2000 ns)主存储器访问时间的。另一个重要考虑是,System/370从一开始就考虑了双处理器和多编程的构建。

所以,虽然System/370并不是一个惊人的公告,但它确实填补了System/360的一些明显漏洞,大大提高了速度,扩展了指令集,并保持了高度的兼容性。这是一个坚实的向前迈出的一步,并保持了IBM在大型机世界的主导地位。

IBM 3033:一个大家伙

虽然System/370系列通过引入具有新功能和性能特性的新型号多年来主导了大型机计算,但IBM在1977年3月宣布了这个非常成功的计算机家族的继任者,3033,或「大家伙」。

尽管IBM主要强调了额外的速度(比System/370 168-3快1.6到1.8倍)和它更小的尺寸,但对于「大家伙」来说,具有讽刺意味的是,这台机器的技术优势在现代计算机中看起来并不突兀。以17.24 MHz运行的处理器拥有一个八级流水线、分支预测,甚至是推测执行。它包含几个逻辑单元和12个通道。3033处理器的单元是指令预处理功能(IPPF)、执行功能(E-function)、处理器存储器控制功能(PSCF)、维护和重试功能,以及所有IBM大型机固有的众所周知的通道。IPPF获取指令并为E-function执行做准备,确定优先级,并为操作数发出获取请求。它不仅使用分支预测,还可以一次性缓冲三个指令流,因此在「猜测」错误时,它很可能会准备好并预处理另一个指令序列以供E-Function使用。E-Function毫不意外的是处理器的执行引擎,首次拥有一个非常大的64 K缓存(行大小为64字节),以加速存储器访问。存储器本身是八路交错的,允许在执行读取时,在它不访问的七个银行中进行刷新,如果在下一次访问中的一个银行之一,这加快了读取时间(DRAM需要在读取后刷新才能再次访问)。

处理器存储器控制功能处理所有来自处理器存储器的存储或获取数据的请求,并使用我们之前提到过的动态地址转换技术将虚拟地址转换为绝对存储器地址。像现代处理器一样,它使用转换后备缓冲区来加速这一过程。本质上,这是一个已经从虚拟转换为绝对的地址的缓存,因此如果处理器可以在那里找到它们,就不需要转换。在3033上,如果能找到地址,它将在一个时钟周期内解决它,或者如果没有,它可能需要10到40个周期,这是一个相当大的差异。

维护和重试功能为操作员控制台和3033处理器之间提供了手动和服务操作的数据路径。

所以,虽然表面上3033只是比强大的System/370 168-3更快的继任者,但当我们仔细查看时,我们发现它几乎拥有现代处理器的所有技术,甚至有些是今天现代CPU中所缺乏的 。然而,它仍然是一个标量设计,尽管它的特性令人印象深刻,但很快就被3081取代了。虽然我知道你对3081(谁能责怪你?)充满了好奇心,我保证我们会非常熟悉它,但让我们首先通过看看当时世界上第二大计算机公司DEC所提供的产品来进行短暂的插曲。

VAX-11/780

虽然我们大多数读者都知道x86指令集起源于1978年的8086,但也许更重要的是,1977年发生了一个更重大的发展,当时Digital发布了轰动一时的VAX-11/780。但是,有什么可能比x86指令集更重要呢?

当大多数人想到DEC时,他们记得这是一个大型迷你计算机制造商,它失败了,并在微计算机篡夺DEC的关键市场时被Compaq收购。但是1977年发生了什么重要的事情呢?DEC的VAX和它非常迷人的伙伴,VMS,后者至今仍具有很大的相关性。

VAX-11/780表面上发布是为了解决非常成功且非常受欢迎的PDP-11的缺点。 DEC淡化了许多变化,而是专注于终于打破PDP-11的16位(64 K)可寻址内存限制,VAX-11/780的32位地址。然而,它的意义远不止于此。

VAX被认为是所有CISC指令集中最优秀的,仅次于受其影响的那些。它是一个高度正交的指令集,有243条指令用于几种基本数据类型,有16种不同的寻址模式。这种优雅的架构对摩托罗拉68000系列产生了强烈的影响,后者成为了苹果Lisa和MacIntosh的平台,直到90年代被PowerPC取代。顺便说一下,VAX-11/780的性能被采纳为标准度量,当「VAX MIPS」或后来简称为「一个MIPS」成为计算机性能的度量时。

然而,VAX最重要的贡献可能是VMS。 Windows NT是由VMS的设计师戴夫·卡特勒(Dave Cutler)开发的。他是许多VMS开发者之一,他们转向微软从事Windows NT的开发。尽管围绕Windows存在争议, 但Windows NT仍然是当今使用的主导操作系统, 并且在可预见的未来仍将如此,特别是因为Windows 7比Vista更受欢迎。这并不是为了贬低VMS操作系统的重要性,除了它对Windows NT的影响之外,它是一个备受尊敬的设计,特别是用户友好。

许多人对这款易于使用的操作系统赞不绝口,它非常超前于它的时代。事实上,尽管VAX已经死了,但OpenVMS显然没有,目前它正在Intel的Itanium处理器和HP的过时Alpha处理器上运行,今年晚些时候将发布新版本。因此,自从32年前发布以来,操作系统仍然非常强大。

尽管VAX和VMS都很愉快,后者仍然如此,它们从未在任何真正的经济意义上挑战过蓝色巨兽,反而可能帮助IBM在与政府的斗争中,后者不太喜欢他们认为是IBM的垄断。1981年,罗纳德·里根总统放弃了对IBM的反垄断诉讼,同年,Big Blue发布了3081,这恰好是我有经验以来的第一款大型机。那真是一次经历。

IBM 3081大型机

如前所述,与当时的个人电脑相比,大型机接口较差,但操作系统的可靠性远远超过了我们今天使用的Windows NT衍生产品。 3081是「二元」设计,意味着它有两个处理器,甚至共享相同的缓存。但它们不能被分成两台计算机,因为它们是不可分割的。

然而,这个操作系统的复杂性如此之高,以至于 即使一个处理器死了,系统也会保持运行并继续执行。使用失败处理器的应用程序将会崩溃,但是它会相当优雅地崩溃, 因为操作系统会识别失败并将其发送到崩溃应用程序的正确位置(系统会在OPC中跟踪它们,要么自己修复它们,要么让他们的支持团队来解决问题)。这并不是暗示3081 CPU总是崩溃,因为它们很少这样做。

每个3081处理器的运行速度惊人的接近38.5 MHz。根据IBM有些乐观的测量,基本的3081(型号D)比3033UP快21倍,而更高端的型号K则快了将近30倍。当然,其中一些来自额外的处理器,尽管共享缓存确实产生了一些开销。例如,单处理器3083实际上比3081运行速度快15%,当工作负载无法使用3081的第二个处理器时。

3084是这个系列的另一个扩展,实际上有一对二元处理器。与3081不同,它可以被分成两台独立的机器。3081的另一个改进是它可以寻址超过16 MB,并使用31位寻址而不是3033的24位寻址。总之,考虑到它比3033晚了四年发布,这是一台大大改进的机器。硬件是好的,软件的稳定性简直令人难以置信。

然而,尽管3081、3083和3084都令人惊叹,我们仍然要重点介绍下3090这个台大型机,它的性能有很多令人难以置信的设计。

IBM 3090

虽然IBM 3090并不是一个知名度很高的大型机, 但当它在1985年被宣布时,它在System/370架构上提供了一个坚实的进步, 不仅继续提高了速度,还增加了处理器的数量,同时为它们提供了向量处理选项。

最初只有200型和400型(第一个数字表示处理器的数量)可用,在它短短四年的生命周期中,产品线得到了戏剧性的扩展。增加了单处理器版本(1xx系列)和600系列处理器,以及每个模型的增强版本(在型号后用"E"表示;例如,600E)。即使是最初的模型也很强大,运行速度超过54 MHz,执行指令的速度几乎是它们所取代的3081的两倍。

第二年,3090扩展了向量处理功能,增加了171条新指令,将计算密集型程序的速度提高了1.5到3倍。3090的"E"版本运行速度为69 MHz,每个处理器大约能够达到25 MIPS。相比之下,当时的x86处理器80386运行速度为20 MHz,大约能够达到4 MIPS,仅支持单处理器,并且没有向量指令。

3090在短短四年后被ES/9000系列取代。随着局域网(LANs)的日益普及,以及像80486和许多RISC设计(包括IBM自己的POWER)这样的强大新处理器的出现,越来越明显的是,这些技术将很快使大型机变得过时和灭绝,

IBM ES/9000

1990年底,IBM用ES/9000系列取代了著名的3090,这标志着IBM称之为ESCON或企业系统连接的光纤技术的引入。自然,这些系统的新事物不仅仅是这个。 实际上,托马斯·J·沃森(Thomas J. Watson Jr.)认为ES/9000是公司历史上最重要的发布。 甚至比System/360还重要?嗯,沃森先生这么认为。

ESCON是一项重要的技术。这是一种串行光纤通道,能够在发布时以10 MB/s的速度传输数据,并且相隔九公里远。而且他可能是指它能够使用的大量9 GB内存,还能是在一个sysplex中使用八个处理器的能力,这允许它被视为一个逻辑单元?人们可以创建多个分区,为每个逻辑分区分配处理器资源,并在它们上面运行任何新的(和兼容的)企业系统架构/390操作系统。

性能也非常出色,ES/9000大约是3090/600J(IBM之前最快的大型机)在商业应用中的1.7到1.9倍,在标量中的2.0到2.7倍,在向量性能中的2.0到2.8倍。虽然给人留下深刻印象,但我们已经看到过在代际之间类似的跳跃。这些听起来都不足以成为最重要的计算机公司历史上最重要的发布,对吧?是的,按照今天的标准,9 GB是很多,10 MB/s在九公里上比我们大多数人可以访问的互联网速度还要快。而且串行传输已经存在几年了,虚拟化越来越普遍。八个处理器是一个很好的数量,但双插槽四核处理器不再那么罕见了。我们很快就会有这么多核心的处理器。

也许它的发布时间与此有关。你知道的,1990年,486处理器正热门,老布什(George H.W. Bush)在他的任期的前半段。在雅虎(Yahoo!)出现之前, 从那个时间背景来看,ES/9000是一个巨大的成就,在 系统的许多方面都有如此多的重要进步。总的来说,很难不同意沃森先生的看法。你还会期待从这样一个杰出和有成就的人那里得到别的什么吗?

但是,尽管这个奇迹拥有的技术即使按照今天的标准来看也几乎不算过时,我们的故事肯定还没有结束。但是,什么能超越ES/9000呢?很难想象,但更难想象的是, 一个计算机系列能保持19年不变。那么,让我们来看一下来自IBM历史上另一个伟大的产品。

System z10 EC

2008年,IBM宣布推出System z10大型主机以帮助客户创建一个全新企业级数据中心。专业为企业级业务需求设计的世界一流的企业级服务器。

z10 EC为企业发展和大规模整合,实现更高的IT安全性、弹性和可用性,以及降低IT风险提供了全新的性能和容量,同时引入了即时资源分配来响应不断变化的业务需求。

在那个时代,很难想象一个体积庞大的计算机,但IBM确实成功地制造了一个占地30平方英尺、重达5000多磅、消耗27500瓦电力的巨兽。还不够印象深刻?那么1520 GB的内存呢?是的,这比大多数基于Core i7的发烧友盒子的6 GB内存要多得多。好吧,实际上,这比搭载Nehalem的PC的平均硬盘还要多。它还可以拥有1024个ESCON、336个FICON Express4、336个FICON Express2、120个FICON Express、96个OSA-Express3和48个OSA-Express2通道。这比X58的I/O还要多,不是吗?也许多了几个数量级?这台令人惊叹的机器甚至可以在一台机器中托管多达16个虚拟局域网。

不用说,这些计算机远远超过了普通的服务器,事实上,它们整合了许多较小的x86处理器计算机。 与逐渐消失不同,大型机正在找到以前从未使用过它们的客户,这些客户希望整合他们的x86服务器以节省空间和能源。这些服务器的灵活性确实令人印象深刻,因为如果Linux是操作系统的选择,可以配备多达64个集成设施(IFL)处理器,或者可以添加多达32个zAAP处理器来协助使用Java或XML与后端数据库集成的Web应用程序。还可以有多达32个zIIP处理器用于数据处理和网络工作负载,这些通常用于ERP、CRM和XML应用程序和IPSec数据加密。

主处理器,z10处理器单元芯片,拥有丰富的CISC设计,可以执行894条指令,其中668条是硬连线的。作为对ENIAC的致敬,处理器甚至支持硬件十进制浮点运算,这可以限制舍入误差,并且比使用二进制和转换要快得多。最重要的是,它仍然可以运行为System/360编写的软件,后者现在已经有45年历史了,以及令人难以置信的稳定MVS操作系统,尽管现在它被称为z/OS。可以运行多达64个这些4.4 GHz四核怪兽,设计用于99.999%的正常运行时间。难怪这些机器销售得很好,因为它们提供了令人难以置信的可靠性、出色的灵活性、难以想象的容量和非常先进且稳固的软件。

正如建议的那样,这些机器的虚拟化能力远远超过了普通服务器。自然,它们可以运行包括Linux、z/OS(包括UNIX的完整版本)、z/VM和OpenSolaris在内的多个操作系统,但不仅如此,它们能够在一个分区需要更多容量时,非破坏性地并且即时热交换容量。甚至可以在短时间内为突发活动带来额外的处理器,并在一天中的特定时间安排它们,如果有已知的高峰时段。

这些非凡的机器具有如此先进的功能,以至于可能很难理解。暂时忘掉这些机器的卓越性能和灵活性,它们仍然令人惊讶的可靠。例如,它们具有所谓的"锁步"功能,每个基于结果的指令都会运行两次,结果会被比较以确保它们是相同的。如果它们不同,指令将被重新执行,计算机尝试定位错误发生的位置。它甚至可以将飞行中的指令切换到其他处理器,从而从用户的角度消除错误的任何负面影响。更重要的是,当在并行sysplex中使用时(将多达32台大型机集成为一张逻辑图像),可以在任何大型机上更新所有软件和硬件,而无需停机或中断。

只有在这些宏伟的机器使普通的桌面机器相比之下显得微不足道的意义上,它们才是恐龙。它们比我们所知和喜爱的PC在硬件上更先进、更强大、更灵活、更宽敞、更有用,而且在系统软件的难以置信的稳定性方面也是如此。它们仍然是计算的支柱,并且完全没有死亡的迹象。相反,它们的销售每年都在增加。事实上,还能有其他方式吗?

▉ 今天的大型机:Z16

面对未来人工智能、安全性、混合云和开源等工作负载,满足企业发展需求,IBM 正式公布了z16大型机。 据IBM介绍,IBM z16大型机承诺提供一个为一毫秒,并包括 IBM 量子安全系统,以保护组织免受预期的基于量子的安全威胁。

IBM z16 采用了 IBM Telum 双处理器芯片有 16 个内核,运行频率为 5.2 GHz。IBM 表示,该系统在单个型号(型号 A01)中配备多达 200 个可配置内核,并且每个系统包括 40TB 的独立内存冗余阵列 (RAIM)。除此之外,IBM z16还有望加速 IBM 发展混合计算和基于开源的企业系统的其他核心战略,并专为人工智能应用程序进行了优化。

据 IBM 介绍 ,与具有 60 毫秒平均网络延迟的同等 x86 云服务器相比,带有 z/OS 的 z16 在推理时具有 20 倍的响应时间和 19 倍的吞吐量。

而且由于 AI 推理是在芯片上执行的,z16 无需像许多其他供应商的解决方案那样将数据移入/移出 AI 或分析设备,这在支持的大规模事务环境等情况下非常有益。

采用 z/OS 的 z16 服务器支持的响应时间比同类 x86 云服务器低 20 倍,吞吐量高出 19 倍。此外,z16 的容量和加密功能还使客户能够安全地运行关键任务应用程序和流程,同时还可以利用公共云服务。

▉ 总结:

如今,x86服务器已经成为目前服务器选择的主流,大型机变成了支流。但真正从事过软件开发的人会知道,真正有价值的是业务跟专业知识。大 型机依靠寄生业务的复杂、敏感、关键性,在未来的很长时间内会一直存在。 但是, 在我看来,老兵不死,只会慢慢凋零。 x86服务器也终将迎来这么一天,计算理论以及实践还在进步,我们能做的就是拥抱变化,迎接未来新的计算浪潮。