第5章计算机软件系统组成计算机硬件系统由大量的、复杂的、特性各异的物理器件组成。这个庞大的军团由谁指挥?用户发出的命令由谁去完成?应用程序提出的请求由谁去实现?计算机中繁杂的数据由谁去管理?用户如何与计算机交流?这些都由计算机系统中一种非常重要的系统软件——操作系统来完成。操作系统是计算机系统中各种资源的管理者,是计算机系统中各种活动的组织者和指挥者。通过本章的学习,我们将了解计算机的软件系统及其组成,重点了解操作系统的基本概念、主要功能,并从用户使用的角度了解操作系统的用户接口。
5.1 计算机软件系统概述
5.1.1 计算机系统
现代计算机系统是由硬件系统和软件系统组成的。硬件系统由各种机械的、电子的、光的、磁的部件,包括中央处理器、存储器、输入和输出子系统等构成,是整个计算机系统赖以工作的物理实体;软件系统是各种程序、数据和相关文档的集合,是保证整个计算机系统有效协调工作的逻辑产品。
纯硬件的、无任何软件支持的计算机称为“裸机”。裸机是计算机系统的物质基础,没有硬件就不能执行各种指令和操作,软件中的各种思想就无法贯彻和执行,软件也就失去了作用;而没有软件,硬件也将无法发挥其能力,就像一支有着现代化的装备但却无人指挥的部队。因此,硬件和软件相互依赖,二者的有机结合方构成了完整的计算机系统。
软件系统分为系统软件和应用软件。系统软件包括操作系统、各种语言的编译系统、数据库管理系统和网络管理软件等。应用软件是为各种应用目的而编制的各种软件。
火风老婆在计算机系统中,硬件处于整个系统的最底层,硬件系统的外围是软件系统。而软件本身也是相当丰富的。系统软件在应用软件的内层,负责支持其他软件的工作,应用软件在系统软件的外围,它一方面为用户服务,另一方面必须在系统软件的支持下方能完成各项工作。计算机硬件和软件共同合作,为用户和程序提供了良好的工作环境。整个计算机系统可分为硬件层、操作系统层、应用软件层和用户层。
5.1.2 系统软件
系统软件是为整个计算机系统配置的、保障计算机系统正常运行的、与特定应用领域无关的通用软件。在系统软件中,操作系统处于核心地位,负责整个计算机系统的管理和控制,是其他系统软件和应用软件的基础。它直接与计算机硬件相接,与硬件的关系最为密切。
计算机硬件系统的组成操作系统是计算机系统中的第一层软件,它位于所有软件的最内层,负责所有硬件的管理,使硬件在操作系统的控制下正常、高效地工作;而其他软件都在操作系统的支持下有条不紊地工作;操作系统为其他软件提供了一个良好的运行环境。操作系统是整个系统的中枢
第5章计算机软件系统组成71 神经和控制中心,是整个计算机系统不可缺少的系统软件。
5.1.2.1 操作系统
1.操作系统的定义
操作系统是一组程序的集合,它直接管理和控制计算机的硬件和软件资源,是计算机系统中最基本的软件。所有其他软件都是以操作系统为基础的。操作系统主要实现如下任务。
①管理计算机系统中的全部软件和硬件资源。
②为用户使用计算机提供方便、友好、人性化的接口。
③最大限度地发挥整个计算机系统的效率。彭昱畅微博
操作系统是用来控制和管理计算机的硬、软件资源,合理地组织计算机流程,并方便用户高效地使用计算机的各种程序的集合,是计算机系统必备系统软件,是用户与硬件的桥梁。
2.操作系统的分类
在操作系统的形成过程中,逐渐发展形成了以下几种操作系统。
(1) 单用户操作系统
杨谨华主演的电视剧
采用单用户操作系统的计算机系统在某个时间内只为一个用户服务,该用户独占整个系统资源。它又可分为单用户单任务操作系统(如DOS操作系统)和单用户多任务操作系统(如Windows操作系统),适合于个人计算机。
(2) 批处理操作系统
批处理操作系统将用户提交的作业成批地送入计算机,组成一个后备作业队列,然后由作业调度选择适当的作业运行。在计算机系统中,多个作业同时存在,中央处理器轮流地执行各个作业。只要调度得当、搭配合理,这种操作系统可以极大地提高系统的吞吐量和资源的利用率,主要应用在较大的计算机系统中。
(3) 分时操作系统
分时操作系统可以为多个终端用户提供服务,且保证各个终端用户都可以与计算机主机进行交互。其采用时间片轮转调度策略,中央处理器将其时间合理地划分为若干个较小的时间片段,一台主机可挂多个终端,每个终端用户每次可以使用其中的一个时间片。中央处理器轮流为各个终端用户服务,如果此用户的任务在一个时间片内没有完成,则等到下一轮,从而实现了多个用户分时轮流使用一台计算机系统,大大提高了计算机系统的效率(如Unix 操作系统)。分时操作系统具有多路性、交互性等特征。
(4) 实时操作系统
实时操作系统能够对外部随机出现的信息以足够快的速度进行响应和处理,并在规定的时间内作出反应。该操作系统主要用于实时控制,一般是为专用机设计的。实时操作系统按其使用方式的不同可分为以下两种:
①实时控制系统实时控制系统是以计算机系统为中心的过程控制系统。这种操作系统可以通过各种传感器对现场数据进行实时采集,以尽可能快的速度对数据进行及时的分析和处理,并做出决策,进而产生反馈信号,利用反馈信号实现过程的自动控制。实时控制系统一般为专用的,其交互性能较差,但对响应时间的要求非常高。渡红尘
②实时信息处理系统实时信息处理系统是一台或多台主机通过通信线路与成千上万
大学计算机基础
72
个远程终端相连,计算机系统接收远程终端发出的服务请求,根据请求服务的性质对信息进行检索和处理,并对用户的问题作出回答。此类系统须保证数据库的实时性、真实性、可靠性,广泛使用在订票系统、银行交易系统、情报检索系统、学籍管理系统等一类实时系统中。
(5) 网络操作系统
网络操作系统是基于计算机网络的操作系统,要同时为本机用户和网络用户使用本机资源提供服务。网络操作系统负责管理网络资源,将计算机网络中的各台计算机有机地联合起来,以实现网上各计算机之间的数据通信和资源共享,同时还需要解决网络传输中遇到的各种问题,解决网络上的各种冲突等。
(6) 分布式操作系统
分布式操作系统可通过网络将大量的计算机连接在一起,并将一个任务分解为若干个可以并行执行的子任务后分布到网络中的不同的计算机上并行执行,使系统中的各台计算机相互协作完成一个任务,以充分利用网上计算机的资源优势,并获取极高的运算能力。分布式操作系统则负责整个系统的资源管理、任务的划分、信息的传输,并为用户提供一个统一的界面和接口。分布式操作系统已成为当今操作系统发展的一个重要方向。
5.1.2.2 各种语言的编译和解释系统
利用计算机解决特定问题,用户必须使用计算机语言编写程序,并将程序输入计算机内部,计算机通过执行用户的程序方能实现程序规定的功能。但计算机硬件只能识别和执行机器语言书写的指令,为
了让用汇编语言或高级语言编写的程序能在计算机上执行,就必须为它配备“翻译”,这就是程序设计语言的翻译系统。
程序设计语言的翻译系统是一种软件,它能将某一种语言编写的程序翻译成与其等价的另一种计算机可以直接执行的目标语言的程序。使用源语言编写的程序称为源程序,使用目标语言编写的程序称为目标程序。源程序是程序设计语言翻译系统加工的“原材料”,而目标语言编写的程序是程序设计语言翻译系统加工的“最终产品”。不同的程序设计语言需要有不同的程序设计语言翻译系统。翻译程序是现代计算机系统的基本组成部分之一。
程序设计语言翻译系统可以分为3种:汇编语言翻译系统、高级语言源程序编译系统和高级语言源程序解释系统。它们的区别主要体现在它们生成机器代码的过程。
1.汇编语言翻译系统
汇编语言是由帮助记忆的符号组成的语言,与机器语言形成一一对应的关系,即一条汇编语言的指令对应于一条机器语言的指令。汇编语言翻译系统的主要功能是将用汇编语言书写的程序翻译成用二进制0、1表示的等价的、计算机可以执行的机器指令代码程序。汇编程序的翻译步骤如下:
①用机器操作码代替符号化的操作符。
②用数值地址代替符号名字。
③将常数翻译为机器的内部表示形式。
④分配指令和数据的存储单元。
2.编译系统
高级语言是由自然语言、数学式子加上一定的语法规则组成的语言,高级语言编译系统
第5章计算机软件系统组成73
(Compiler)是将用高级语言书写的源程序翻译成等价的机器语言程序的处理系统。大多数高级语言都采用编译方式,如C、Pascal、FORTRAN等。编译程序的翻译步骤如下:
①词法分析 扫描以字符串形式输入的源程序,识别出一个个的单词并将其转换为机内表示形式。完成该工作的程序称为词法分析程序,又称扫描器。
②语法分析 对单词进行分析,按照语法规则分析出一个个的语法单位,如语句、表达式、结构等。完成该工作的程序称为语法分析程序,又称分析器。
③中间代码生成将语法单位转换为某种中间代码,如三元式、四元式、波兰式、逆波兰式等。完成该工作的程序称为中间代码生成程序。
④代码优化对中间代码进行优化,使得优化后的中间代码在运行速度、存储空间方面具有较高的质量。完成该工作的程序称为优化程序。
⑤目标代码生成将优化后的中间代码转换成目标程序。
编译完成后生成与源程序等价的目标程序代码,该代码形成一个完整的文件,可被计算机反复、直接执行。
3.解释系统
实现高级语言源程序在计算机上的运行主要有两种方法:一是把该程序翻译为这个计算机的指令代码序列,即编译过程;二是按照程序中语句的动态顺序逐条翻译并立即执行相应的功能,这就是解释过程,完成该功能的程序就是解释程序(Interpreter)。
从功能上说,一个解释程序能让计算机执行高级语言源程序。它与编译程序的主要不同之处在于它不生成一个完整的目标语言程序。解释程序是将源程序中的语句逐句翻译成机器指令并立即执行该指令,因此,源程序每次执行都需要重新解释。
编译系统生成的目标代码由计算机执行才能生成结果。使用编译系统将程序得到结果的过程分为2个阶段:编译阶段和运行阶段。编译阶段对源程序进行编译,并生成目标代码;运行阶段运行目标程序并得到结果。而解释系统则是一边解释一边执行。
可将编译比喻为笔译(产生目标程序),将解释比喻为口译(不产生目标程序)。很多语言如Basic、Lisp和Prolog等最初都解释执行,后来都发展出各自的编译系统。
5.1.2.3 数据库管理系统
数据库是统一管理的相关数据集合,而数据库管理系统(Data Base Management System)是指在数据库系统中对数据库进行管理的软件,它是数据库系统的重要组成部分,也是数据库系统的核心。数据库管理系统的主要功能是实现对共享数据的有效组织、管理和存取,同时数据库管理系统必须负责维护数据库,保证数据库的完整性和安全性。
央视主持人王欢简历数据库管理系统位于用户和操作系统之间,它一方面建立在操作系统基础之上,另一方面支持用户对数据库的各种操作。在数据库管理系统支持下,用户可按逻辑意义、抽象地使用数据库中的数据,而不必涉及数据在计算机系统中的存放细节,提高了数据的独立性。
5.1.3 应用软件
应用软件是指为某类应用需要或解决某个特定问题而设计的程序,如文字处理软件、图形软件、财务软件、软件包等,这是范围很广的一类软件。在计算机应用中,应用软件发挥着巨大的作用,承担了许多应用任务。如人事管理、财务管理、图书管理等。按照应用软件
大学计算机基础
74
使用面的不同,一般可将应用软件分为以下两类。
(1) 专用应用软件
专用应用软件是指为解决专门问题而定制的软件。它按照用户的特定需求而专门开发,其应用面窄,往往只局限于本单位或部门使用。如某高校教学管理系统、超市销售系统、铁路运行调度管理系统等。
(2) 通用应用软件
通用应用软件是指为解决较有普遍性的问题而开发的软件,其可广泛应用于各领域。如办公软件包、计算机辅助设计软件、各种图形图像处理软件、电子书刊阅读软件、多媒体音乐、视频播放软件等。它们在计算机应用普及进程中,被迅速推广流行,又反过来推进了计算机应用的进一步普及。
也有一些应用软件被称为工具软件,或称实用工具软件。它们一般较小,功能相对单一,但却是解决一些特定问题的有力工具,如下载软件、阅读器、防毒软件等。
5.2 操作系统的功能
现代计算机系统的复杂性决定了管理计算机系统的操作系统本身也很复杂。从管理的角度分析,操作系统具有为以下4大管理功能:处理器管理、内存管理、文件管理、外设管理。此外,操作系统必须实现计算机系统与用户之间的沟通,为用户使用计算机提供良好、方便、人性化的接口。上述各管理功能之间既相互独立,又相互关联、相互协调、相互合作,确保整个系统有序、高效地运行。
5.2.1 操作系统的用户接口
用户使用的计算机中操作的界面称为用户接口。操作系统是用户与计算机之间的接口,用户通过操作系统使用计算机。操作系统本身也由若干个模块组成,其中用户接口是操作系统与用户之间进行交流的通路。通过用户接口,用户请求操作系统为其服务,也正是通过这个接口,系统向用户反馈信息。
操作系统在管理计算机的同时,必须为用户使用计算机提供良好而方便的用户接口,用户接口处在操作系统的最外层。操作系统提供以下两种接口。
1.操作系统的命令接口
该接口方式一般为用户提供了各种操作命令接口,包括各种键盘操作命令等。操作系统的命令接口有两个基本任务:一是接收、判别、解释用户输入的操作命令,并将此命令转化为对应的命令处理程序;二是接收操作系统回传的信息,并通过各种显示方式提供给用户。命令方式的用户接口有以下几种。
(1) 命令行界面(CUI)
该方式为用户提供了许多命令,用户通过键盘直接输入有着特定意义的命令行,以实现请求计算机系统的服务,计算机系统也以命令行回应用户。该方式操作较简单,但是必须记忆命令以及各种复杂的参数,增加了用户的负担。DOS操作系统就是典型的命令行界面的操作系统。
发布评论