1943年(二战期间)宾州大学开始研发第一台计算机ENIAC,并且于1946年在纽约时报发布,计算机的发明和战争离不开,战争部门开始讨论利用计算机进行核武器分析、天气预报、石油勘探、飞行器设计、弹道测量等一系列功用,其中蒙特卡洛模拟、天气预报等恰好也是ENIAC的早期核心场景,在计算机出现之前,这些工作都是由大量的人手工计算,这些计算一般是女员工承担,而早期的计算机编程程序员也是女性为主的。此后政府继续计划第二台计算机EDVAC,其主要有三个维度的突破:其一是硬件,其采用高速内存+二进制存储;其二是采用冯诺依曼计算架构,其将计算机的开关(当时还是真空管,后来晶体管其实也是就是一系列开关的集合)称作神经元,将存放程序和数据的内存称作器官,而存储和计算都采用二进制,这就是bits。EDVAC有一个类似CPU的中心化计算单元,其仅与内存连接。其三则是具备一系列操作代码,其与人们进行科学计算习惯契合。EDVAC的基础循环就是从内存里面读取操作指令,对操作指令进行解码,然后执行。
早期计算机销售。冯诺依曼的夫人为ENIAC编写了第一个执行蒙特卡洛模拟的程序,此后科研人员还给类似的计算机配置了CRT显示器,增加了数据结构寄存器,将单个操作代码能访问的地址从1个增加到4个,且从传统的串行读取bits的的方式增加了并行读取。为了复用程序,汇编程序被发明第一个基于符号汇编程序是IBM进军计算机项目组开发的。1947年当时Association for Computing Machinery成立,这是IEEE的前身。早期业内人士认为计算机在美国市场很有限,可能也就5-6台的市场空间,结果证明其远远低估了计算机的潜力。1948年,第一台计算机建造者Eckert和Mauchly合伙成立公司开始销售类似的计算机,第一代Univac计算机每秒可以做465次乘法运算,运行时钟频率是2.25MHz,这些数据相比ENIAC,Univac内存更大,读取数据速度更快。第一台计算机交付给了美国统计局,到1954年大概有20台计算机投入使用,单价是100万美元(天价),这些客户里面主要是政府机构,也包括GE、Du Pont等大公司。从Univac早期应用场景来看,除了科研场景,商业场景里面其替代效应最强的是 ,比如GE购买计算机后主要用来四个具体任务:工资支付、原材料规划和库存管理、订单管理和支付、会计管理。这些场景原来就是基于IBM的卡片计算机(也可以解释为何后来IBM能够统治计算机市场,因为这个属于延续式技术创新),而更先进设备带来的人力节省(卡片计算机需要很多人力搬运卡片)是说服高管更换设备重要原因。
IBM成为领先者。二战结束后,冷战带来的国防预算依然是支撑计算机产业发展重要源泉。1952年IBM第一台电子计算机IBM701推出,其最早19台全部交付给了美国国防部,从而被称为“国防计算机”,其采取租赁形式,1.5万美元/月。IBM701计算机大致和Univac相似,但是读取内存速度更快,因为其一次读取一个词,而后者一次读取一个bit,701用作场景包括武器设计、飞行器设计、加密计算等。到1956年,得益于强大的销售能力和客户资源,IBM交付的大型计算机的数量就超过Univac,其主力型号704(交付了140台),是701的升级版,其采用了Core Memory(即使断电也可以存储数据),支持浮点计算能力(表示成10的几次方,对科学计算很重要,因为支持很大数字运算),支持结构化寄存器(编程更简单),从而获得了客户亲睐。下一代IBM 709进一步升级了硬件——能够支持大数据的输入输出、拥有独立数据存储、打印机设备管理的模块(单独计算机)。早期找到可靠的存储设备是难点,当时高端计算机存储用的都是高速磁带,也有用磁鼓(Drum)做存储设备的低价计算机(售价3万美元,相对于高端百万美元)。
科学编程语言Fortran等。汇编语言实现了人类书写指令,机器执行指令。而编译器则负责将数学公式,以及更高阶的编程语言转换成为机器能直接执行的语言。1957年,IBM基于704型号推出了Fortran编程语言,由于早期计算机编程效率很低,编程+debugging的成本甚至超过了执行程序的成本,因此Fortran出现更多将程序员从冗余的过程中解放,更多聚焦真正想解决的问题。比如Fortran用于计算的符号和语法和代数很接近,其编程效率和表现很强。早期的程序分享主要基于民间组织,1955年一群IBM 701客户组成了SHARE分享组织,很快聚集了62个会员单位,并且开始分享类似求逆矩阵等基础数学程序,这些分享组织是早期开源社区的基础。SHARE分享程序里面还包括早期操作系统的雏形,由于内存资源很稀缺,这些软件在本身体量很小的前提下提供管理内存等功效,早期GM(通用汽车)是实验室开发了一个batch processing的程序,用来控制程序运行的流程,告诉计算机接下来运行是Fortran程序,还是一个新的程序,其后来演变成为IBM计算机的早期的操作系统。Algol发布于1958年,也是早期重要编程语言,其引入了Block架构,拥有begin和end的block可以成为一个独立的指令,且Algol支持一个程序调用自己不断重复运行(recursion)。Stack(堆栈)的数据结构也被提出来,用来和Algol进行结合,而无线循环的程序就会遇到Stackover的错误。
晶体管和超级计算机。1950年,ATT旗下贝尔实验室发明了晶体管,由于其当时反垄断调查不允许其进入除运营商外赛道,因此贝尔实验室以较低价格(2.5万美元)给予其他公司晶体管授权,例如 就是这时候学习了这门技术,晶体管体积更小(尤其是后来集成电路发明后),更可靠,其很快在计算机领域普及替代真空管,成为计算机重要的“神经元”,比如IBM 709推出一年后,就推出了晶体管版本7090,售价300万美元,卖了几百台,其升级版本7094租赁价格是3万美元/月。早期程序员编程都不是实时的,需要先输入程序,然后等待运行结果,通过看指示灯检测运行状态,通过打印结果来看运行结果寻找问题。1955年,IBM推出超级计算机Stretch,其计算能力是IBM 704的100倍,相对传统计算机采用读取-解码-运行的步骤,Stretch读取数据时,可以同时计算其他程序,因此效率更高。Stretch还配备了IBM当时的黑科技“硬盘”,配备了虚拟内存技术,其类似现代的虚拟机,可以让有限的内存显得更大。1960年其正式被命名为7030,售价高达1350万美元(天价),但是其实际表现仅是规划的一半(虽然也是很强),其商业上不成功,但却孵化了后来划时代的IBM 360系列,没有汗水是被浪费的。其他超级计算机厂商主要包括Control Data,其Cray 1客户主要也是国防部,具备向量计算等能力,销量达到80台,单台售价800万美元,直到1982年,Cray都是全球最快的计算机。
IBM称霸商用计算机。计算机的应用场景除了科学计算,同样还有商业应用。美国企业中存在一种对自动化办公本身的信仰——他们相信计算机有一天能够处理公司全部交易,并且处理全部商业数据,为管理者提供决策依据。早期,IBM 650计算机是最成功的型号,其基于磁鼓存储,因此售价相对低廉,其销量达到2000台,月租金是3500美元。为了普及计算机,从源头大学生做起,Watson Jr允许大学用4折价格购买机器,而其后续型号IBM1401(其速度达到650系列7倍)则继续渗透到每一个IBM传统卡片式计算机的客户,销量达到1.2万。到1962年,IBM仅仅推出第一台电子计算机7年后,其来自计算机收入便超过了卡片式计算机,其占据美国计算机市场三分之一。针对大数据体量计算,IBM的硬盘发明也有了用武之地,相对于传统磁带(搜索数据要6分钟)或者磁鼓,硬盘可以高速提取任意数据,效率提升很显著。此外,在SHARE等开源社区,一些基础分类、工资支付等基础程序开始流行。相对于Fortran在科学计算领域成功,Cobol则是在数据处理领域核心的编程语言,其基于类似英语语法编程方式,能够实现各种数据处理的功能。
IBM360成为行业标准。从需求来看,科学计算和商用存在一定差异,前者需要复杂的计算,但往往数据量不大;但是后者则往往有大量数据,但只需要简单计算。因此早期IBM针对两种场景有单独产品线,但很快IBM就开始策划开发一款计算机产品打通两大需求。1965年,IBM推出了360系列,奠定了其此后50年在大型商用机领域的领先地位,同时也是打通科学计算(7070系列)和商用计算(1401系列)两大领域的划时代产品。360系列除了自身很强能力外,还有拥有向前兼容性,即有别于此前IBM计算机不同型号互相不兼容,360系列能够兼容此前IBM系列程序,360高端系列可以模仿科学计算机系列,而低端系列则能够胜任此前商用系列的能力。IBM360系列实际上是IBM身家性命的赌注,其连带一起发布了150款新产品,包括新键盘、硬盘、磁带等。360系列一经推出第一个月就收到了1100个订单,大多数NASA的计算机第一时间就切换到了360系列以适用当时美国登月计划。但是IBM初期经历了产能瓶颈,软件交付也是难题,最开始IBM准备推出一个单一OS/360操作系统,后来宣布放弃改成针对大小内存,硬盘和磁带存储的型号推出四个不同的操作系统。整体来看,360系列在商用领域还是更加成功,而科学超级计算机则是CDC的市场,不过商用领域后来市场规模远大于科学计算,1960年代中期计算机领域就被称为白雪公主(IBM)和七个小矮人 (RCA,Honeywell等) ,1970年IBM安装计算机达到3.5万台,1971年IBM净利润突破了10亿美元,360系列一直到1990年代仍然是IBM的拳头产品。
数据库和IRS。1960年代,基于计算机的数字化管理成为很多人的畅想,很多人觉得计算机可以传统公司管理架构和流程,传统员工对公司忠诚度之类的因素变得不再重要,而就事论事的理性元素将更加重要(因为任何人什么贡献都可以被计算机量化),管理将进一步被去中心化。然而,这种系列在当时技术条件下被证明只是美好的幻影,就连整合一个大公司各个不同系统都是一件很难的事情。不过,来自GE 的Bachman发明了数据库的雏形,Integrated Data Store(IDS),这样软件要使用数据,不用直接和数据打交道,而是采用IDS的指令,数据库成为系统重要基础设施,Bachman也因为这个发明获得了图灵奖。美国税务局IRS是商用计算机早期大客户,其1960年代税务升级系统预算达到6.5到8.5亿美元,1965年起针对每个美国纳税公民提供一个独特SSN号码,进一步便利了计算机进行数据处理。不过后来,针对公民隐私的指控(白宫可以方便看到任意公民的税务情况),使得IRS系统更新一直落后时。
杏彩体育官方平台 上一篇:51单片机外部中断实验 下一篇:晶升股份获35家机构调研:切割设备计划于今年4月左