计算机的发展历程
1946 年第一台电子计算机的问世,构成计算机硬件的逻辑组件为标志,计算机的发展大致经历了从电子管、晶体管、中小规模集成电路到大规模和超大规模集成电路计算机等四个发展阶段,统称 “四代” 计算机:
第一代 (1946—1957 年) | 第二代 (1957—1964 年) | 第三代 (1964—1972 年) | 第四代 (1972 年至今) | |
---|---|---|---|---|
逻辑元件 | 电子管 | 晶体管 | 中小规模集成电路 | 大规模和超大规模集成电路 |
存储器 | 延迟线、磁鼓、磁芯 | 磁芯、磁带、磁盘 | 磁芯、磁带、磁盘 | 磁盘、光盘、半导体 |
典型机器 | IBM-701 IBM-650 | IBM-7090 IBM-7094 | IBM-370(大型) IBM-360(中型) PDP-11(小型) | ILLIAC-IV(巨型) IBM-3033(大型) VAX-11(小型) 80486(微型) 8098(单片机) |
软件 | 机器语言 汇编语言 | 高级语言 管理程序 | 结构化程序设计 操作系统 | 数据库,软件工程 程序设计自动化 |
应用 | 科学计算 | 数据处理 工业控制 科学计算 | 系统模拟、系统设计、大型科学计算、科技工程各领域 | 事务处理、智能模拟、大型科学计算、普及到社会生活各方面 |
由四代计算机发展开始,计算机的硬件和软件技术都获得了惊人的发展。计算机系统向微型化、巨型化、网络化和智能化的方向发展,计算机系统软件的功能日趋完善,规模越来越大,应用软件开发日愈简便。多媒体技术的兴起引发了计算机应用领域的革命,利用声音、符号、图形、图像技术即可开发计算机应用。在网络支持的支持下,信息表达工具(电话、电视、终端,信息处理工具(计算机)和信息传输工具(有线通信、无线通信和卫星通信)逐渐趋于一体化,方便处理信息开辟广阔的前景
微型计算机
经过微电子技术的不断发展,一台计算机的各组成部分或整个计算机都可以集成在一片大规模或超大规模集成电路芯片上,从而成为以微处理器为核心的微型计算机,简称微型机或微机。1971 年美国的 Inter 公司推出第一台微处理器 Inter 4004 后,微型计算机的发展大致经历五个阶:
1.第一阶段(1971—1973 年)
第一阶段的典型微处理器有 Inter 4004、Inter 8008,数据线为 4~8 位,地址线为 4~8 条。这些微处理器组成的微型计算机较简单,指令系统也不是很完整,只支持汇编语言,没有操作系统,用途主要是:工业仪表、过程控制和计算;芯片是采用 PMOS(P type Metal Oxid Semiconductor,P 型金属 - 氧化物 - 半导体)工艺,速度较慢。
2.第二阶段(1974—1977 年)
该阶段具有代表性的微处理器有 Inter 8080、Inter 8085、M6800、Z80 等,数据线为 8 位,地址线为 16 条。由这些微处理器组成的微型计算机已经有了较完整的指令系统,同时配有磁盘操作系统(相较简单的,如:CP/M,Control Program/Monitor),支持高级编程语言,具有较强的功能;此时出现了个人计算机(Personal Computer,PC)。芯片采用 NMOS(N type Metal Oxide Semiconductor,N 型金属 - 氧化物 - 半导体)工艺,速度较快。
3.第三阶段(1978—1981 年)
到了这个阶段的处理器有 Inter 8086、MC68000、Z8000 等,数据线为 16 位,地址线有 20~24 条。这些微处理器所组成的微型计算机已经吸收传统小型计算机甚至大型计算机的设计思想,如:虚拟存储和存储保护等,已具备相较完善的操作系统、高级语言、工具软件和应用软件,出现了多用户微型计算机系统及多处理机微型计算机系统。
4.第四阶段(20 世纪 80 年代初期—中期)
在这个阶段的代表微处理器有:Inter 80x86(如:80286、80386、80486),数据线为 16~32 位,地址线为 24~32 条。他们所组成的微型计算机在芯片、操作系统及总线结构等方面完全开放,实际上已经形成了国际性的微型机工业生产的主要标准,是微机发展的一个里程碑。这个阶段的微型机已初具菜单式选择功能及图形用户界面,他推动了微型机应用的飞速发展。
5.第五阶段(20 世纪 80 年代中后期)
最后的这个阶段是到目前为止的,典型的微处理器有:PentiumⅠ、Pentium Ⅳ、SPARC、Power60x 等,数据线为 64 位,地址线为 32 条。这些微处理器采用了精简指令系统计算机(Reduced Instruction Set Computer,RISC)技术,指令执行时间大大缩短。RISC 微处理器,如:SPARC、Power60x,的推出使微型机的运算速度提高到几亿次每秒。RISC 技术使微型机、小型机和大型机的界限越来越模糊。
微型计算机按照组装形式分为便携式和非便携式两类,便携式如:笔记本电脑;非便携式如:台式微型机。根据微型计算机的最终用户使用,微型机也可以分为独立式微型计算机和嵌入式微型计算机;前者供最终用户直接使用,如:个人计算机;后者是作为信息处理部件装入应用设备,如:医疗设备、家电产品等,嵌入式微型机一般是单片机或单板机。
不断研究集成电路的制造工艺,从光刻技术、微刻技术到现在的纳刻技术,使集成电路的规模越来越大,形成了超大规模集成电路(Very Large Scale Integration,VLSI)。集成电路的发展就像 Inter 创始人戈登•摩尔(Gordon Moore)预言的一样:“当价格不变时,集成电路上可容纳的晶体管数目大约每隔 18 个月增加 1 倍,性能也将提升 1 倍”(所谓的摩尔定律)。
巨型计算机
尖端科学技术的发展要求具有超高速、超大容量和高可靠性的计算机,以满足大量复杂的高精度数据计算和处理的要求,这就促进了巨型计算机(Super Computer)的发展。早期典型的巨型计算机如:美国的 ILLIAC-IV 型计算机(运算速度为每秒 1.5 亿次)、CRAY-1 型计算机(运算速度为每秒 1 亿次)。中国在 1983 年研制成功 “银河” 计算机(运算速度超过 1 亿次)、1994 年初,研制成功 “曙光一号” 并行计算机(定点运算速度可达每秒 6.4 亿次)、2002 年 8 月公布的联想深腾 1800(浮点运算速度实测为每秒 1.027 万亿次),这些标志着中国已跻身世界巨型计算机的先进行列。中国自主研制的 “神威•太湖之光” 超级计算机(2016 年问世)连续四次雄踞 “全球超级计算机 500 强” 榜首、连续两次摘得高性能计算应用领域最高荣誉 “戈登•贝尔奖”。“神威•太湖之光” 安装了 40960 个中国自主研发的 “申威 26010” 众核处理器,这款众核处理器采用 64 位自主申威指令系统,峰值性能为每秒 12.54 京次(一亿亿为一京),持续性能为每秒 9.3 京次。一分钟的计算能力需要全球 72 亿人同时用计算器不间断计算 32 年。2020 年 7 月中国科学技术大学在 “神威•太湖之光” 上首次实现千万核心并行第一性原理计算模拟。2020 年 6 月超级计算机 500 强第一名为日本的富岳(Fugaku)(运行速度为每秒 41.553 京次,峰值浮点性能高达每秒 51.3 京次)基于富士通 48 核 A64FX 系统芯片能够运行 158976 个独立 CPU,为第一台运行在 ARM 架构处理器上的超级计算机。
超高速的运算能力已成为巨型机的主要指标,相对于传统的结构单靠提高电子器件的速度已无法实现上亿次的运算,必须从计算机的系统结构上进行改革,这就出现了巨型机所持有的结构形式,如:多个 CPU 构成一个计算机系统,就需要研究多 CPU 协同工作的分布式计算、并行计算及多种体系结构等技术。
发展高速度、大容量、功能强大的超级计算机,对于进行科学研究、保卫国家安全、提高经济竞争力具有非常重要的意义。航天工程、石油勘探、天气预报、机械仿真、人类遗传基因检测等技术,以及军事作战的谋划和执行、先进武器的研发、图像处理及密码破译等,这些都离不开高性能计算机。研制超级计算机的技术水平体现了一个国家的综合国力,已然成为各国在高技术领域的竞争热点。
第五代计算机和 AI(人工智能)
1981 年日本举行了 “第五代计算机” 国际学术会议,为期十年(1982—1991 年)的 “知识信息处理系统(KIPS)” 开始研制。日本政府为了实现这一宏伟目标筹资 1000 亿日元,专门成立了 “新一代计算机技术研究所”(Institute for New Generation Computer Technology,ICOT)。
KIPS(Knowledge Information Processing System,知识信息处理系统)就是我们通常所说的第五代计算机系统(Fifth Generation Computer System,FGCS),又称为智能计算机,组成部分有:
- 知识库(Knowledge Bank,KB)知识库计算机(Knowledge Bank Machine,KBM)和知识库管理系统(Knowledge Bank Management System,KBMS)
- 问题求解和推理机
- 智能接口系统
- 应用系统。
第五代计算机系统要达到的目标是:
- 用自然语言、图形、图像和文件进行输入/输出
- 用自然语言进行对话的信息处理方式,为外行使用计算机提供方便
- 能处理和保存知识,以供使用;配备各种知识数据库,起到顾问作用
- 能够自学习和推理,帮助人类扩展自己的才能
通过上述可知,第五代计算机和传统计算机的主要区别在于:
- 处理的 “信息” 是 “知识” ,不是 “数据”
- “信息” 的传输是知识的传输,不是字符串的传输
- “信息” 的处理是对问题的求解和推理,不是按既定进程进行计算
- “信息” 的管理是知识的获取和利用,不是数据收集、积累和检索
日本的第五代计算机系统研制于 1922 年结束,虽然并未达到预定目标,但是在智能计算机领域中完成了大量的基础研究工作。第五代计算机的研制激起了人工智能的热潮,美、英、法等国家(或地区)相继制定对策和发展战略,如:美国国防部的第五代计算机计划、英国的 “阿尔维” 计划、法的 “尤利卡” 计划等。关于人工智能和新一代计算机的研究、开发和应用已列入许多国家发展战略的议事日程,成为科技发展规划的重要组成部分。
人工智能(Artificial Intelligence,AI)是研究如何用人工的方法和技术来模仿、延伸和扩展人的智能,用来实现某些 “机器思维” 或脑力劳动自动化的一门学科。如:应用人工智能的方法和技术、设计和研制各种计算机的 “机器专家” 系统和可以模仿各行各业的专家,去从事矿床探查、医疗诊断、质谱分析、数学证明和管理决策等脑力劳动工作,完成某些需要人的智能、专门知识和经验技巧的任务。要想使机器具有类似于人类的智能,需要研究解决三个方面的问题:机器感知——知识获取、机器思维——知识处理、机器行为——知识运用。
(1)机器感知——知识获取
研究机器如何直接或间接获取知识及如何输入自然信息(语言、声音、图像、文字、物景)等工程技术方法。
(2)机器思维——知识处理
研究在机器中如何表示知识和存储知识,如何进行知识推理和问题求解等工程技术方法。
(3)机器行为——知识运用
研究如何运用机器所获取的知识,通过知识信息处理,做出反应,付诸行动,以及各种智能机器和智能系统的设计方法和工程实现技术。
“人工智能” 术语是 1956 年在美国召开的 “关于用机器模拟智能” 的学术讨论会上首次正式采用的,标志着人工智能学科的诞生。1969 年国际人工智能联合会(IJCAI)成立,并决定每两年召开一次国际人工智能学术会议。在这之后,美、日等国家对人工智能的学科体系实用技术开展了广泛的研究,出现了多种实用的人工智能专家系统,如:化学专家系统 DENDRAL、医学专家系统 MYCCIN、探矿专家系统 PROSPECTOR 等。
人工智能的实现离我们还甚远,但是研究成果已经逐渐显现。典型的智能计算成果:
1997 年 IBM 的 “深蓝” 计算机以 3.5 :2.5 的比分战胜了国际象棋特级大师卡斯帕罗夫
2003 年 “小深” 替换上场,以 3 :3 的比分 “握手言和”
2011 年 IBM 的 “沃森” 计算机在美国的一次智力竞猜电视节目中,成功击败节目历史上两位最成功的人类选手
2016 年 3 月阿尔法围棋(AlphaGo)和围棋世界冠军、职业九段棋手李世石进行围棋人机大战,以 4 :1 的总比分获胜;2016 年年末至 2017 年年初,该程序在中国棋类网站上以 “大师”(Master)为注册账号和中日韩数十位围棋高手进行快棋对决,连续 60 局无一败绩;2017 年 5 月在中国乌镇围棋峰会上,他和排名世界第一的世界围棋冠军柯洁对战,以 3 :0的总比分获胜。
大家目前使用过的搜索引擎,如:百度、谷歌等,来进行搜索,输入我们想要的特征关键字后,他的检索结果是否是我们想要的?从最初使用到现在,是否发现他的检索结果越来越符合我们的需求?这里是否有智能计算的影子?
智能计算的另一个例子:模式识别,指指纹识别技术已经得到广泛应用,手写输入技术已经在手机上得到应用,语音输入也在不断完善。所有的这一切都在向智能人机交互方向发展,即让计算机能够听得懂人类语言,看得懂人类的表情,可以像人类一样具有自我学习和提高的能力,可以将不同的知识吸收并灵活运用,同时可以和人一样的思维和推理。
计算机网络
计算机网络(Computer Network)就是把地理上分散的计算机系统、终端和各种形式的数字设备通过通信信道互连在一起而形成的彼此可以互相协作的综合信息处理系统。计算机网络和计算机发展一样都是经历从简单到复杂、低级到高级的发展过程。
第一代计算机网络是单处理中心网络,基本结构是一台中央计算机通过通信线路连接大量的终端设备,故被称为 “面向终端的计算机网络”。
第二代计算机网络是多处理中心的网络,由多台计算机和各种数字设备通过通信线路相互连接在一起,又被称为 “计算机-计算机网络”。
以上所述的两代计算机网络都是由各研究单位、大学或应用部门根据自己的应用要求而各自建立的。他们没有统一的网络体系结构,所以要想将他们相互连接在一起十分困难,甚至不可能。为了适应信息和知识为主的技术革命发展,实现网络上的硬件、软件资源的高度共享,必须发展新一代的计算机网络,使各种计算机网络遵从统一的标准,从而方便实现互连。
1984 年国际标准化组织(International Organization for Standardization,ISO)经过多年努力后,正式提出了 “开方系统互连参考模型”(Open System Interconnection Reference Model,OSI/RM)国际标准,得到国际社会的广泛接受和承认,成为新一代计算机网络的体系结构。
随着微型机的广泛应用,以微型机为主体的局域网(Local Area Network,LAN)发展很快,已有数百种之多,其中有代表性的是:Ethernet、3COM、Omninet、Pcnet、Token Ring 和 Novell 网等。计算机网络的应用正愈来愈普及,并朝着高速化、全球化和智能化的方向发展。
计算机软件技术发展
由 “四代计算机简要” 表可知,计算机由第一代发展到第四代,其软件也在不断地从低级到高级发;在进入 20 世纪 80 年代之后,廉价工作站的出现和微机的大量普及,在根本上改变了应用领域的面貌,基于单主机的字符输入让位于网络环境下多媒体界面的应用。
微机大量普及使得专门生产微机软件的 Microsoft 公司盈利激增,而使专营大中型计算机的 IBM 在 1992 年出现亏损。这些现象说明,危机重重的软件技术有一次受到挑战,基于单主机的顺序程序还没有解决好,不可靠、难维护、生差率低下、难于移植和重用等问题,又增加了并发、分布式环境下的安全可靠性问题,还要支持 20 世纪 80 年代蓬勃发展起来的多媒体技术。
为了迎接这一挑战,软件行业发展了一下技术:
(1)软件工程环境的发展
20 世纪 80 年代以来,各种软件工具相对成熟,各种软件制造、销售商都配备了工具集。无论是语言编译,还是数据库、操作系统,大量单用途工具和实用程序所售软件更好用。这种发后果产生了一系列新的问题:大量单用途工具如何无冗余、不冲突的集成,如何和软件开发各阶段广泛协使用,如何提供一个使用不同人员(开发者、管理者、用户)都能方便使用软件工程环境。促使计算机辅助软件工程(Computer Aided Software Engineeting,CASE)和集成 CASE(I-CASE)技术的发展。CASE 就是软件工程中的计算机辅助设计(Computer Aided Design,CAD),利用软件工具开发软件可以提高软件的生产率,减少人工编程、测试、修改带来的错误。
(2)面向对象技术
面向对象技术是一种以对象为基础、以事件或消息来驱动对象执行处理的程序设计技术。面向对象技术以数据为中心而不是以功能为中心来描述系统,数据相对于功能而言具有更强的稳定性。面向对象技术将数据和对数据的操作封装在一起,作为一个整体来处理,采用数据抽象和信息隐蔽技术,将这个整体抽象成一种新的数据类型——类,并且考虑不同类之间的联系和类的重要性。类的集成度越高,就越适合大型应用程序的开发。同时,面向对象程序的控制流程由运行时各种事件的实际发生来触发,而不再由预定顺序来决定,更符合实际。事件驱动程序的执行围绕消息的产处理,靠消息循环机制来实现。在实际编程时可以采用搭积木的方式来组织程序,站在 “巨人” 的肩上实现自己的目标。面向对象程序的设计方法使得程序结构清晰、简单,提高了代码的重要性,有效减少了程序的维护量,提高了软件的开发效率。
(3)面向构件的技术实现更高层次的抽象
面向构件技术对一组类的组合进行封装,并代表完成一个或多个功能的特定服务,也为用户提供了多个接口。整个构件隐藏了具体的实现,只用接口提供服务。这样,在不同层次上,构件均可以将底层的多个逻辑组合成高层次上的粒度更大的新构件,甚至直接封装到一个系统,使模块的重用从代码及、对象级、架构级到系统级都可能实现,从而使软件能够像硬件一样,可以装配定制而成的梦想得以实现。通过运用构件技术,开发人员可以有效地进行软件复用,减少重复开发,缩短软件的开发时间,降低软件的开发成本。
(4)面向服务架构解决 “如何重用软件功能” 问题
面向服务的体系结构是一个组件模型,将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,他应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样系统中的服务可以用一种统一和通用的方式进行交互。
注:有不当之处,请批评指正!谢谢~