按人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的机器系统。计算机是脑力的延伸和扩充,是近代科学的重大成就之一。
计算机系统由硬件(子)系统和软件(子)系统组成。前者是借助电、磁、光、机械等原理构成的各种物理部件的有机组合,是系统赖以工作的实体。后者是各种程序和文件,用于指挥全系统按指定的要求进行工作。
自1946年第一台电子计算机问世以来,计算机技术在元件器件、硬件系统结构、软件系统、应用等方面,均有惊人进步。现代计算机系统小到微型计算机和个人计算机,大到巨型计算机及其网络,形态、特性多种多样,已广泛用于科学计算、事务处理和过程控制,日益深入社会各个领域,对社会的进步产生深刻影响。
电子计算机分数字和模拟两类。通常所说的计算机均指数字计算机,其运算处理的数据,是用离散数字量表示的。而模拟计算机运算处理的数据是用连续模拟量表示的。模拟机和数字机相比较,其速度快、与物理设备接口简单,但精度低、使用困难、稳定性和可靠性差、价格昂贵。故模拟机已趋淘汰,仅在要求响应速度快,但精度低的场合尚有应用。把二者优点巧妙结合而构成的混合型计算机,尚有一定的生命力。
计算机系统的特点是能进行精确、快速的计算和判断,而且通用性好,使用容易,还能联成网络。①计算:一切复杂的计算,几乎都可用计算机通过算术运算和逻辑运算来实现。②判断:计算机有判别不同情况、选择作不同处理的能力,故可用于管理、控制、对抗、决策、推理等领域。③存储:计算机能存储巨量信息。④精确:只要字长足够,计算精度理论上不受限制。⑤快速:计算机一次操作所需时间已小到以纳秒计。⑥通用:计算机是可编程的,不同程序可实现不同的应用。⑦易用:丰富的高性能软件及智能化的人-机接口,大大方便了使用。⑧联网:多个计算机系统能超越地理界限,借助通信网络,共享远程信息与软件资源。
图1为计算机系统的层次结构。内核是硬件系统,是进行信息处理的实际物理装置。最外层是使用计算机的人,即用户。人与硬件系统之间的接口界面是软件系统,它大致可分为系统软件、支援软件和应用软件三层。
硬件系统主要由中央处理器、存储器、输入输出控制系统和各种外部设备组成。中央处理器是对信息进行高速运算处理的主要部件,其处理速度最高可达每秒几亿次操作。存储器用于存储程序、数据和文件,常由快速的主存储器(容量可达数百兆字节)和慢速海量辅助存储器(容量可达 10 字节以上)组成。各种输入输出外部设备是人机间的信息转换器,由输入-输出控制系统管理外部设备与主存储器(中央处理器)之间的信息交换。
软件系统的最内层是系统软件,它由操作系统、实用程序、编译程序等组成。操作系统实施对各种软硬件资源的管理控制。实用程序是为方便用户所设,如文本编辑等。编译程序的功能是把用户用汇编语言或某种高级语言所编写的程序,翻译成机器可执行的机器语言程序。支援软件有接口软件、工具软件、环境数据库等,它能支持用机的环境,提供软件研制工具。支援软件也可认为是系统软件的一部分。应用软件是用户按其需要自行编写的专用程序,它借助系统软件和支援软件来运行,是软件系统的最外层。
计算机系统可按系统的功能、性能或体系结构分类。
① 专用机与通用机:早期计算机均针对特定用途而设计, 具有专用性质。60年代起, 开始制造兼顾科学计算、事务处理和过程控制三方面应用的通用计算机。特别是系列机的出现,标准文本的各种高级程序语言的采用,操作系统的成熟,使一种机型系列选择不同软件、硬件配置,就能满足各行业大小用户的不同需要,进一步强化了通用性。但特殊用途的专用机仍在发展,例如连续动力学系统的全数字仿真机,超微型的空间专用计算机等。
② 巨型机、大型机、中型机、小型机、微型机:计算机是以大、中型机为主线发展的。60年代末出现小型计算机,70年代初出现微型计算机,因其轻巧、价廉、功能较强、可靠性高,而得到广泛应用。70年代开始出现每秒可运算五千万次以上的巨型计算机,专门用于解决科技、国防、经济发展中的特大课题。巨、大、中、小、微型机作为计算机系统的梯队组成部分,各有其用途,都在迅速发展。
③ 流水线处理机与并行处理机:流水线处理机是单指令数据流(sisd)的,它们用重叠原理,用流水线方式加工向量各元素,具有高加工速率。并行处理机是单指令流多数据流(SIMD)的,它利用并行原理,重复设置多个处理部件,同时并行处理向量各元素来获得高速度(见并行处理计算机系统)。流水和并行技术还可结合,如重复设置多个流水部件,并行工作,以获得更高性能。研究并行算法是发挥这类处理机效率的关键。在高级程序语言中相应地扩充向量语句,可有效地组织向量运算;或设有向量识别器,自动识别源程序中的向量成分。
一台普通主机(标量机)配一台数组处理器(仅作高速向量运算的流水线专用机),构成主副机系统,可大大提高系统的处理能力,且性能价格比高,应用相当广泛。
④ 多处理机与多机系统、分布处理系统和计算机网:多处理机与多机系统是进一步发展并行技术的必由之路,是巨型、大型机主要发展方向。它们是多指令流多数据流(MIMD)系统,各机处理各自的指令流(进程),相互通信,联合解决大型问题。它们比并行处理机有更高的并行级别,潜力大,灵活性好。用大量廉价微型机,通过互连网络构成系统,以获得高性能,是研究多处理机与多机系统的一个方向。多处理机与多机系统要求在更高级别(进程)上研究并行算法,高级程序语言提供并发、同步进程的手段,其操作系统也大为复杂,必须解决多机间多进程的通信、同步、控制等问题。
分布系统是多机系统的发展,它是由物理上分布的多个独立而又相互作用的单机,协同解决用户问题的系统,其系统软件更为复杂(见分布计算机系统)。
现代大型机几乎都是功能分布的多机系统,除含有高速中央处理器外,有管理输入输出的输入输出处理机(或前端用户机)、管理远程终端及网络通信的通信控制处理机、全系统维护诊断的维护诊断机和从事数据库管理的数据库处理机等。这是分布系统的一种低级形态。
多个地理上分布的计算机系统,通过通信线路和网络协议,相互联络起来,构成计算机网。它按地理上分布的远近,分为局部(本地)计算机网和远程计算机网。网络上各计算机可相互共享信息资源和软硬件资源。订票系统、情报资料检索系统都是计算机网应用的实例。
⑤ 诺伊曼机与非诺伊曼机:存储程序和指令驱动的诺伊曼机迄今仍占统治地位。它顺序执行指令,限制了所解问题本身含有的并行性,影响处理速度的进一步提高。突破这一原理的非诺伊曼机,就是从体系结构上来发展并行性,提高系统吞吐量,这方面的研究工作正在进行中。由数据流来驱动的数据流计算机以及按归约式控制驱动和按需求驱动的高度并行计算机,都是有发展前途的非诺伊曼计算机系统。
计算机系统约每3~5年更新一次,性能价格比成十倍地提高,体积大幅度减小。超大规模集成电路技术将继续快速发展,并对各类计算机系统均产生巨大而又深刻的影响。32位微型机已出现,64位微型机也将问世,单片上做1000万个元件已为时不远。比半导体集成电路快10~100倍的器件,如砷化镓、高电子迁移率器件、约瑟夫逊结、光元件等的研究将会有重要成果。提高组装密度和缩短互连线的微组装技术是新一代计算机的关键技术之一。光纤通信将大量应用。各种高速智能化外部设备不断涌现,光盘的问世将使辅助海量存储器面目一新。多处理机系统、多机系统、分布处理系统将是引人注目的系统结构。软件硬化(称固件)是发展趋势。新型非诺伊曼机、推理计算机、知识库计算机等已开始实际使用。软件开发将摆脱落后低效状态。软件工程正在深入发展。软件生产正向工程化、形式化、自动化、模块化、集成化方向发展。新的高级语言如逻辑型语言、函数型语言和人工智能的研究将使人-机接口简单自然(能直接看、听、说、画)。数据库技术将大为发展。计算机网络将广泛普及。以巨大处理能力(例如每秒 100~1000亿次操作)、巨大知识信息库、高度智能化为特征的下一代计算机系统正在大力研制。计算机应用将日益广泛。计算机辅助设计、计算机控制的生产线、智能机器人将大大提高社会劳动生产力。办公、医疗、通信、教育及家庭生活,都将计算机化。计算机对人们生活和社会组织的影响将日益广泛深刻。
下面我们结合计算机的发展历史来回顾一下操作系统的发展历程。
1.第一代计算机(1945-1955):真空管和插件板
40年代中期,美国哈佛大学、普林斯顿高等研究院、宾夕法尼亚大学的一些人使用数万个真空管,构建了世界上第一台电子计算机。开启计算机发展的历史。这个时期的机器需要一个小组专门设计、制造、编程、操作、维护每台机器。程序设计使用机器语言,通过插板上的硬连线来控制其基本功能。
这个时候处于计算机发展的最初阶段,连程序设计语言都还没有出现,操作系统更是闻所未闻!
2.第二代计算机(1955-1965):晶体管和批处理系统
这个时期计算机越来越可靠,已从研究院中走出来,走进了商业应用。但这个时期的计算机主要完成各种科学计算,需要专门的操作人员维护,并且需要针对每次的计算任务进行编程。
第二代计算机主要用于科学与工程计算。使用FORTRAN与汇编语言编写程序。在后期出现了操作系统的雏形:FMS(FORTRAN监控系统)和IBMSYS(IBM为7094机配备的操作系统)
3.第三代计算机(1965-1980):集成电路芯片和多道程序
60年代初,计算机厂商根据不同的应用分成了两个计算机系列,一个针对科学计算,一个针对商业应用。
随着计算机应用的深入,对统一两种应用的计算机需求出现了。这时IBM公司试图通过引入System/360来解决这个问题。
与这个计划配套,IBM公司组织了OS/360操作系统的开发,然后复杂的需求,以及当时软件工程水平低下使得OS/360的开发工作陷入了历史以来最可怕的“软件开发泥潭”,诞生了最著名的失败论著----《神秘的人月》。
虽然这个开发计划失败了,但是这个愿望却成为了计算机厂商的目标。
此时,MIT、Bell Lab(贝尔实验室)和通用电气公司决定开发一种“公用计算机服务系统”----MULTICS,希望其能同时支持数百名分时用户的一种机器。结果这个计划的研制难度超出了所有人的预料,最后这个系统也以失败结束。不过,MULTICS的思想却为后来的操作系统很多提示。
60年代未,一位贝尔实验室曾参加过MULTICS研制工作的计算机科学家Ken Thompson,在一台无人使用的PDP-7机器上开发出了一套简化的、单用户版的MULTICS。后来导致了UNIX操作系统的诞生。
目前UNIX操作系统主导了小型机、工作站以及其他市场。也是至今最有影响力的操作系统之一,而Linux也是UNIX系统的一种衍生,下一讲我们将专门介绍一下UNIX的发展历史。
4.第四代计算机(1980-今):个人计算机
随着计算机技术的不断更新与发展,计算机神奇般地闯入了人们的生活,现在以低廉的价格就可以获得强大计算能力的计算机。
价格不再是阻拦计算机普及的门槛时,降低计算机的易用性就显得十分重要!由于UNIX系统的本身特点,使得其不太适合于在运行在个人计算机上,这时就需要一种新的操作系统。
在这一历史关键时候,IBM公司由于低估了PC机的市场,并未使用最大的力量角逐这一市场,这时Intel公司趁机进入,成为了当今微处理器的老大。同时善于抓住时机的微软公司的总裁比尔·盖茨适时地进入了这一领域,用购买来的CP/M摇身一变成为MS-DOS,并凭借其成为个人计算机操作系统领域的霸主。
虽然是苹果公司在GUI方面先拔头筹,但由于苹果公司的不兼容、不开放的市场策略,未能扩大战果,这时微软又适时地进入了GUI方面,凭借WINDOWS系统再次称雄!
一般来说,操作系统由以下几个部分组成:
1)进程调度子系统:
进程调度子系统决定哪个进程使用CPU,对进程进行调度、管理。
2)进程间通信子系统:
负责各个进程之间的通信。
3)内存管理子系统:
负责管理计算机内存。
4)设备管理子系统:
负责管理各种计算机外设,主要由设备驱动程序构成。
5)文件子系统:
负责管理磁盘上的各种文件、目录!
6)网络子系统:
负责处理各种与网络有关的东西。
操作系统有多种实现方法与设计思路,下面仅选取最有代表性的三种做一简单的叙述。
1.整体式系统结构设计
这是最常用的一种组织方式,它常被誉为“大杂烩”,也可说,整体式系统结构就是“无结构”。
这种结构方式下,开发人员为了构造最终的目标操作系统程序,首先将一些独立的过程,或包含过程的文件进行编译,然后用链接程序将它们链接成为一个单独的目标程序。
Linux操作系统就是采用整体式的系统结构设计。但其在此基础上增加了一些形如动态模块加载等方法来提高整体的灵活性,弥补整体式系统结构设计的不足。
2.层次式系统结构设计
这种方式则是对系统进行严格的分层,使得整个系统层次分明,等级森严!这种系统学术味道较浓!实际完全按照这种结构进行设计的操作系统不多,也没有广泛的应用。
可以这么说,现在的操作系统设计是在整体式系统结构与层次式系统结构设计中寻求平衡。
3.微内核系统结构设计
而微内核系统结构设计则是近几年来出现的一种新的设计理念,最有代表性的操作系统有Mach和QNX。
微内核系统,顾名思义就是系统内核很小!比如说QNX的微内核只负责:
¨ 进程间的通信
¨ 低层的网络通信
¨ 进程调度
¨ 第一级中断处理
计算机历史中出现了许许多多的操作系统,然后大浪淘沙,无情地淘汰了许多,只留下一些经历过市场考验的:
1.桌面操作系统:
1)MSDOS:Intel x86系列的PC机上的最早的操作系统,微软公司产品,曾经统治了这个领域,现在已逐渐被自家兄弟WINDOWS 9x系列所代替,现在除了一些低档机外已不多见。
2)Windows 9x:微软公司产品,从Windows 3.x发展而来,现在是基于Intel x86系列的PC机上的主要操作系统,也是现然个人电脑中装机量最大的操作系统。面向桌面、面向个人用户。
3)Mac OS:苹果公司所有,界面友好,性能优异,但由于只能运行在苹果公司自己的电脑上而发展有限。但由于苹果电脑独特的市场定位,现在仍存活良好。
4)linux:Linux是一种计算机操作系统和它的内核的名字。它也是自由软件和开放源代码发展中最著名的例子。
严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套件(比如OpenOffice.org),等等。
2.服务器操作系统:
1)UNIX系列:UNIX可以说是源远流长,是一个真正稳健、实用、强大的操作系统,但是由于众多厂商在其基础上开发了有自己特色的UNIX版本,所以影响了整体。在国外,UNIX系统可谓独树一帜,广泛应用于科研、学校、金融等关键领域。但由于中国的计算机发展较为落后,UNIX系统的应用水平与国外相比有一定的滞后。
2)Windows NT系列:微软公司产品,其利用Windows的友好的用户界面的优势打进服务器操作系统市场。但其在整体性能、效率、稳定性上都与UNIX有一定差距,所以现在主要应用于中小企业市场。
3)Novell Netware系列:Novell公司产品,其以极适合于中小网络而著称,在中国的证券行业市场占有率极高,而且其产品特点鲜明,仍然是服务器系统软件中的长青树。
1、本网站为开放性注册平台,以上所有展示信息均由会员自行提供,内容的真实性、准确性和合法性均由发布会员负责,本网站对此不承担任何法律责任。
2、网站信息如涉嫌违反相关法律规定或侵权,请发邮件至599385753@qq.com删除。