第5章 计算系统的基本思维   【问题描述】 一个完整的计算系统,包括硬件系统和软件系统,它们“彼此支撑、相互理解”,才使得计算系统按照人们的意愿,齐心协力地努力工作。而这一切,都是在操作系统的指挥下,由CPU贯彻执行的。无论是操作系统的具体部署,还是CPU的具体执行,它们都基于计算思维。   【知识重点】 主要介绍系统科学的基本概念、操作系统的特性和智能手机及其操作系统,了解这些基本内容,有利于利用系统科学分析计算系统,有利于了解操作系统的性能特点。   【教学要求】 通过关联知识,全面了解系统科学和操作系统的特性;通过习题解析,加深对计算机系统的理解;通过知识背景,了解为计算机软件作出了杰出贡献的5位科学家的生平事迹。 5.1 关 联 知 识   为了加深对计算机系统的理解,本节介绍计算机学科中的系统科学、计算机操作系统的特性和智能手机及其操作系统。这些内容是对主教材第5章教学内容的补充。 5.1.1 系统科学   系统科学(system science)也称为系统理论(system theory),是以“系统”为研究和应用对象,探索“系统”的存在方式和运动变化规律的一门学科,也是人们认识客观世界的一个知识体系。   1.系统科学的演化形成   系统科学起源于人们对自然现象的研究,是对系统本质的理性认识,也是人们认识世界以致改造世界的科学手段。中国最早体现“系统”思维的成果是《易经》,它将世界万物当成一个由基本元素(爻)组成的整体(64卦),世界万物具有不同的层次(太极→两仪→四象→八卦),万物之间相互演变,体现万物之间复杂的层次关系、结构关系、因果关系等,从而使得在认识世界的同时改造世界。《易经》的研究,涉及传统数学、物理学、天文学等,与当今的“系统科学”不谋而合。   系统科学以不同领域的复杂系统为研究对象,从系统和整体的角度,探讨复杂系统的性质和演化规律,目的是揭示各种系统的共性以及演化过程中所遵循的共同规律,发展优化和调控系统的方法,并进而为系统科学在科学技术、社会、经济、军事、生物等领域的应用提供理论依据。   1946年ENIAC(埃尼阿克)的诞生,被认为是20世纪科学的重大突破性成就,并被看作现代系统科学崛起的重要标志。今天,系统科学已成为研究系统的结构与功能关系、演化和调控规律的科学,是一门新兴的综合性、交叉性学科。   2.系统科学的基本特性   一个大型的复杂系统,通常是由若干相互联系、相互作用的功能块构成的、具有特定功能的有机整体。在计算机系统中,这个“功能块”被称为“子系统”或“元素”。在探索各子系统或系统元素的划分和相互关系时,必须考虑各个“子系统”或“元素”的基本特性。   (1)抽象性(abstractness)。为了便于描述,可将一个完整的系统抽象成多个不同的子系 统。例如,可以把一个完整的计算机系统抽象成由硬件系统和软件系统组成的计算系统。   (2)组成性(constitutive)。任一系统均由多个元素组成,这些元素可以是世界上的一切事物,如物质、现象、概念等,把构成系统的元素称为系统元素,如硬件元素、软件元素。   (3)结构性(designability)。结构性是指系统内各组成部分之间的相互关联、相互作用的框架,并且把对各子系统的划分与个子系统之间的相互关系称为结构分析。   (4)层次性(hierarchy)。一个大型复杂系统,通常分为多个层次,层次是划分系统结构的一个重要工具,也是结构分析的主要方式。层次结构设计的基本原则是包含高层次和支配低层次,隶属低层次和支撑高层次。系统中包含有不同的元素,并且可处于不同层次。例如,计算机系统内层为硬件层,中间层为系统软件层,外层为应用软件层,硬件和软件是系统中的元素。   (5)边界性(borderlines)。系统和元素具有明确的边界,例如,元素包含于系统中,所以元素的边界应小于系统的边界。同时,系统内不同的元素可能产生边界交叉,但不能完全重合。   (6)目的性(objective)。任一系统都有一个确定的目的,例如,划分子系统的目的是简化和便于系统实现,将硬件元素和软件元素按照某种特定方式结合起来,从而构成一个完整的系统。   (7)相关性(relativity)。系统中的各个元素是相互关联的,例如,计算机硬件系统的外层必须具有操作系统,操作系统对内是软件与硬件的界面,对外是人与计算机的界面。   (8)整体性(integrity)。一个系统无论由什么样的元素和多少元素组成,从形态上讲应该是一个能够与其他系统相区别,并且系统元素相互配合和协调,能够发挥特定功能的整体。例如,计算系统包含硬件系统和软件系统,硬件和软件两者必须“相互理解”“齐心合力”,才能高效工作。   3.系统科学的基本因素   系统是一门科学,在进行系统研究时,涉及系统环境、系统行为、系统功能、系统状态、系统演化、系统过程、系统同构、系统类问题等,并且彼此之间相互关联。   (1)系统环境(system environment)是指一个系统之外的一切与它有联系的事物组成的集合。系统要发挥它的作用,达到应有的目标,系统自身就一定要适应环境的要求。例如,数据库系统必须在计算机系统的支持下工作。   (2)系统行为(system behavior)是指相对于它的环境所表现出来的一切变化,行为既属于系统自身的变化,同时又反映环境对系统的影响和作用。   (3)系统功能(system function)是指系统行为所引起的、有利于环境中某些事物乃至整个环境存在与发展的作用。   系统环境、行为和功能三者之间是密切相关的。在开发应用软件时,环境的正确分析以及行为与功能的合理设计,是保证软件开发成功的重要工作。   (4)系统状态(system state)是指系统中可以观察和识别的那些形态特征,通常可以用系统的定量特征来表示,如温度、体积、计算机硬件系统的型号、计算机软件的版本等。   (5)系统演化(system evolution)是指系统的结构、状态、行为和功能等,随着时间的推移而发生的变化。系统的演化特性是系统的基本特性,例如,计算机从以运算器为中心到以存储为中心的体系结构就是一个演化的过程;关系数据库的形成则是随着数据库模型的演变而形 成的。   (6)系统过程(system procedure)是指系统演化所经历的发展过程,并且由若干子过程组成,过程的基本元素是动作。   由此可见,系统状态、演化和过程三者之间是密切相关的。   (7)系统同构(system isomorphism)是指不同系统数学模型之间的数学同构,它是代数系统同构概念的拓展,也是系统科学的理论依据。在代数系统中,同构具有以下两个重要特征:   一是两个不同的代数系统的元素基数相同,并能建立一一对应的关系;二是两个不同的代数系统运算的定义相同,一个代数系统中的元素若被其对应系统的元素替换后,可以得到另一个代数系统的运算表。根据系统同构的性质,可以用一种性质和结构相同的系统来研究另一种系统,甚至针对不同学科领域和不同现实系统之间存在同构的事实,对不同学科进行横向综合研究。   (8)系统类问题(system class problem)是指那些不能由单一算法解决,而必须构建一个系统来解决的问题。系统类问题广泛存在于工程、科学、社会、经济等领域。典型的系统类问题有数据库管理问题、卫星导航问题、机器人控制问题、制造企业生产计划管理问题、计算机设备及作业管理问题等。   4.系统科学的基本原则   随着计算机科学技术的迅速发展,计算机硬件系统和软件系统变得越来越复杂,如何借鉴系统科学的思想方法来研究计算机系统,已成为计算机学界的探索重点。事实表明,系统科学方法在计算机学科中的作用已越来越重要,并在利用系统科学方法研究系统时,应遵循以下基本原则。   (1)整体性原则(integrity rule)是指从“整体”和全局出发,以整体的视觉来分析局部与局部之间的关系,进而达到对系统整体的、更深刻的认识和理解。在系统科学中,把整体具有而局部不具有的东西称为“涌现性”(emergent property),它是高层次具有而还原到低层次就不复存在的一种特性。   (2)动态性原则(dynamic rule)是指从“动态”的角度去研究“系统”各个阶段的运行状态,并且考虑到系统的发展趋势。例如,系统分析和设计时,必须考虑系统将来可能的变化,因而在功能结构上要留有余地,以符合动态性原则。   (3)模型化原则(modeling rule)是指根据系统模型的说明和真实系统提供的依据,采用以模型代替真实系统进行模拟实验,以达到认识真实系统特性和规律性的方法。科学系统方法主要采用符号模型而非实物模型,计算机学科中的符号模型主要有概念模型、逻辑模型、数学模型、图示化模型等。其中,最为重要的是数学模型。数学模型是描述元素之间、子系统之间、层次之间以及系统与环境之间相互作用的数学表达式,是系统定性分析和定量分析的工具。因此,研究系统的模型化方法,通常是指通过建立和分析系统的数学模型来解决问题的方法和 程序。   (4)最优化原则(optimize rule)是指运用各种有效方法从系统的多种目标或多种可能的途径中,选择最优方案、最佳功能、最优状态,达到整体优化的目的。最优的内容及形式包括系统形态结构最优、运动过程最优、系统性质最优和系统功能最优。   计算机科学体现了系统科学思想,图灵计算机、计算机子系统和层次结构的定义与划分等,是系统科学研究的典型,人们应用系统科学思想方法来研究计算机硬件系统和计算机软件系统。 5.1.2 操作系统的特性   操作系统位于软件系统的最底层,直接与计算机硬件“打交道”,也是用户操作使用计算机的界面,由它实现计算机的一切操作和对计算机硬件系统的管理。   1.操作系统的特点   计算机性能的高低是由计算机硬件所决定的,而能否充分发挥计算机硬件系统的性能,操作系统起着决定性的作用。操作系统位于系统软件的最底层,是最靠近硬件的软件。操作系统的功能作用是管理计算机资源、控制程序执行、提供多种服务、方便用户使用各种系统软件。为此,操作系统必须具备以下特点。   (1)方便性(conveniences)。如果没有操作系统,用户只能通过控制台输入控制命令,这种使用方式是极为困难的。有了操作系统,特别是Windows这类功能强大、界面友好的操作系统,使计算机的操作使用变得非常简易和快捷,只要点击鼠标或按下键盘就能实现很多功能 操作。   (2)有效性(effectiveness)。如果没有操作系统,计算机硬件资源会常常处于空闲状态而得不到充分利用,存储器中存放的数据由于无序而浪费了存储空间。而操作系统可使硬件设备由于减少等待时间而得到更为有效的利用,使存储器中存放的数据有序而节省存储空间。此外,操作系统还可以通过合理地组织计算机的工作流程,进一步改善系统的资源利用率及提高系统的效率。   (3)扩充性(extensibility)。随着大规模集成电路技术和计算机技术的迅速发展,计算机硬件和体系结构也随之得到迅速发展,它们对操作系统提出了更高的功能和性能要求。因此,操作系统在软件结构上必须具有很好的可扩充性才能适应发展的要求,不断扩充其功能。   (4)开放性(openness)。20世纪末出现了各种类型的计算机硬件系统,为了使不同类型的计算机系统能够通过网络加以集成,并能正确、有效地协同工作,实现应用程序的可移植性和互操作性,要求操作系统具有统一的开放环境,其开放性通过标准化来实现,遵循国际标准和规范。   (5)可靠性(reliability)。可靠性是操作系统中最重要的特性要求,它包括正确性和健壮性。正确性是指能正确实现各种功能,健壮性是指在硬件发生故障或某种意外的情况下,操作系统应能做出适当的应对处理,而不至于导致整个系统的崩溃。   (6)移植性(portability)。移植性是指把操作系统软件从一个计算机环境迁移到另一个计算机环境并能正常执行的特性。迁移过程中,软件修改越少,可移植性就越好,良好的移植性方便开发出在不同机型上运行的多种版本。在开发操作系统时,使与硬件相关的部分相对独立,并位于软件的底层,移植时只需根据变化的硬件环境修改这一部分,就能提高可移植性。   2.操作系统的特征   操作系统作为计算机系统资源的管理者,在管理资源时,面对各种数据、数据流、控制流时,不但具有良好的功能特点,而且还具有并发性、共享性、虚拟性和异步性等基本特征。   (1)并发性(concurrency)是指在计算机系统中同时存在多个程序。并发和并行是有区别的,并发指两个或多个事件在同一时间段内发生,而并行指两个或多个事件在同一时刻发生。在多处理器系统中,可以有多个进程并行执行,一个处理器执行一个进程。在单处理器系统中,多个进程是不可能并行执行的,但可以并发执行,即多个进程在一段时间内同时运行,但在每一时刻,只能有一个进程在运行,多个并发的进程在交替地使用处理器运行,操作系统负责这些进程之间的执行切换。简单地说,进程就是指处于运行状态的程序。并发性改进了在一段时间内一个进程对CPU的独占,可以让多个进程交替地使用CPU,从而有效提高系统资源的利用率,提高系统的处理能力,但也使系统管理变得复杂,操作系统要具备控制和管理各种并发活动的能力。   (2)共享性(shareability)是指系统中的资源能够被并发执行的多个进程共同使用,以提高系统资源的利用率。资源共享是程序并发执行的基础,而并发执行则是资源共享的前提。并发和共享是现代操作系统的两个重要特征,它极大地提高了计算机系统资源利用率和系统的吞吐量。   (3)虚拟性(virtuality)是指通过某种技术把一个物理实体变成若干个逻辑上的对应物。物理实体是实际存在的,对应物是虚的,是用户感觉不到的。例如,在分时系统中虽然只有一个CPU,但每个终端用户都认为有一个CPU在专门为自己服务,即利用分时技术可以把物理上的一个CPU虚拟为逻辑上的多个CPU,逻辑上的CPU称为虚拟处理器。类似地,可以把一台物理输入输出设备虚拟为多台逻辑上的输入输出设备(虚拟设备),把一条物理信道虚拟为多条逻辑信道(虚拟信道)。在操作系统中,虚拟主要是通过分时使用的方式实现的。   (4)异步性(asynchronism)是指在多道程序环境下允许多个进程并发执行,但由于资源及控制方式等因素的限制,进程的执行并非一次性地连续执行完,通常是以“断断续续”的方式进行。内存中的每个进程在何时执行,何时暂停,以怎样的速度向前推进,每个进程总共需要多长时间才能完成,都是不可预知的。先进入内存的进程不一定先完成,而后进入内存的进程也不一定后完成,即进程是以异步方式运行的。所有这些要求,都由操作系统予以严格保证,只要运行环境相同,多次运行同一进程,都应获得完全相同的结果。   上述4个特征中,并发性和共享性是操作系统两个最基本的特征,它们互为存在条件。一方面,资源共享是以进程的并发执行为条件的,若系统不允许进程并发执行,也就不存在资源共享问题;另一方面,若操作系统不能对资源共享实施有效管理,则必将影响到进程正确地并发执行,甚至根本无法并发执行。 5.1.3 智能手机及其操作系统   “手机”(mobile phone)是当今信息时代人们生活和工作不可或缺的通信工具。早期的手机是一种使用方便、便于随身携带的通信工具,但其信息处理功能极为有限。移动互联网、移动多媒体时代的到来和5G无线通信的广泛应用,使得手机已从简单的通话工具迈入智能化时代,在此背景下智能手机应运而生。随着应用需求的日益增加和技术的不断改进与完善,现在智能手机完全符合计算机关于“程序控制”和“信息处理”的定义,已成为移动计算的最佳终端,并作为一种大众化的计算机产品,性能越来越优越,功能越来越强大,应用越来越广泛。   1.智能手机的定义   智能手机(smart phone)是指具有完整的硬件系统,独立的操作系统,用户可以自行安装第三方服务商提供的程序,并可以实现无线网络接入的移动计算设备。“智能手机”的名称主要是针对老式(按键式)手机功能和操作方式而言的,并不意味着智能手机具有强大的“智能”功能。   智能手机是实现移动计算、普适计算的理想工具,可提供的信息服务有网页浏览、电子阅读、日程安排、任务提醒、交通导航、程序下载、股票交易、移动支付、移动电视、视频播放、游戏娱乐等。结合(3G、4G、5G)数字通信网络的支持,智能手机正逐步成为功能强大,集通话、短信、网络接入、视频娱乐为一体的综合性个人计算终端设备。   2.智能手机的发展   世界公认的第一部智能手机IBM Simon(西蒙)诞生于1993年,它由IBM于BellSouth公司合作制造,集手提电话(mobile phone)、个人数字助理(personal digital?assistant)、传呼机(beeper)、传真机(fax machine)、行程表(hodometer)、日历(calendar)、世界时钟(earth time zone)、计算器(calculator)、记事本(notepad)、电子邮件(E-Mail)、游戏(game)等功能于一身。与老式手机相比,IBM Simon的最大特点是没有物理按键,完全依靠触摸屏操作,它采用ROM-DOS操作系统。   2008年7月,苹果公司推出了iPhone 3G,从此智能手机的发展进入了新时代,iPhone 3G成了引领智能手机的标杆产品。随后,各种品牌智能手机如雨后春笋层出不穷。其中,三星(Samsung)、华为(Huawei)、苹果(iPhone)成为世界三强,是智能手机中的佼佼者。据报道,2022年二季度全球智能手机出货量约为2.86亿台。   3.智能手机的部件   智能手机的最大特点是可以自行安装和卸载应用软件,包括安装手机操作系统、功能可扩展、具备无线接入互联网的能力、支持多任务处理、具有个人数字助理和多媒体功能。为了实现文字、语音、视频和多任务处理,智能手机采用主处理器(CPU)和从处理器(专用芯片)架构,主处理器用来运行操作系统和应用软件,从处理器用来完成语音信号的A/D与D/A转换、数字语音信号编码和解码等。智能手机需要大容量的存储芯片,常采用闪存芯片作为外存储器,以存储图片、语音和视频等。   4.智能手机操作系统   智能手机与普通手机的区别是使用了操作系统,以管理智能手机的软硬件资源,并为应用软件提供支持。因此,手机操作系统是支撑智能手机的基石。目前,应用在手机上的操作系统有iOS(iPhone OS)、Symbian(塞班)、Android(安卓)和Windows Phone等。虽然智能手机操作系统不属于计算机操作系统的范畴,但由于移动互联网的广泛应用,使得智能手机的功能越来越强大,能实现互联网的交易活动,以往很多在微机上实行的网络信息搜索和查询现在都能在智能手机上操作,特别是网络购物和现金支付,都是通过手机操作实现的。因此,了解智能手机操作系统是非常必要的。   (1)iOS系统是苹果公司最初为iPhone开发的操作系统,后来陆续应用到iPod Touch、 Apple TV产品上。iOS用户界面能够使用多点触控直接操作,控制方法包括滑动、轻触开关及按键,支持用户使用滑动、轻按、挤压和旋转等操作与系统互动。这样的设计,使得iOS易于使用和推广。由于iOS以其系统稳定、优化、用户体验优越等优点,深受用户青睐,并已在市场上独霸一方。   (2)Symbian系统是一个实时性、多任务的纯32位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,可以支持GPRS、蓝牙、SyncML,以及3G技术。最重要的是,它是一个标准化的开放式平台,任何人都可以为支持Symbian的设备开发软件。与微软产品不同的是,Symbian将移动设备的通用技术(操作系统的内核)与图形用户界面技术分开,能很好地适应不同方式输入的平台,也可以使厂商可以为自己的产品制作更加友好的操作界面,符合个性化的潮流,这也是用户能见到不同样子的Symbian系统的主要原因。   (3)Android系统是由Google公司于2008年推出,属于以Linux为基础的开放源代码操作系统,支持的处理器类型有ARM、MIPS、Power architecture、Intel x86,采用Android系统的手机厂商包括宏达电、三星电子、摩托罗拉、乐喜金星、索尼爱立信、华为等。   Android系统是近年来备受关注、上升势头迅猛的手机操作系统,以价格低廉、优秀的性价比吸引着许多用户。最新调查显示,目前Android系统的用户数量已超过iOS。2010年末的数据显示,Android已经超越称霸十年的Symbian,跃居全球智能手机平台首位。   (4)Windows Phone系统是微软公司为智能手机开发的操作系统,把网络、个人计算机和手机的优势集于一身,让人们可以随时随地享受到想要的体验。2010年,微软公司正式发布了智能手机操作系统Windows Phone?7,并同时宣布了首批采用Windows Phone?7的智能手机有9款。2012?年,微软公司在美国旧金山召开发布会,正式发布全新移动操作系统Windows Phone 8,提供真正个性化的手机使用体验。虽然目前Windows Phone的市场占有率不如iOS和Android,但由于微软强大的后台,有理由相信这个系统一定会有广阔的前景。 5.2 习 题 解 析   本章习题主要考查学生对计算机系统的认识程度。通过习题解析,进一步加深对计算机系统的结构组成、工作原理,以及操作系统对硬件系统的管理方式等全方位的了解。 5.2.1 选择题   1. 计算机硬件系统的五大部件是指运算器、控制器、输入设备、输出设备和( )。 A. 存储器 B. 接口电路 C. 外部设备 D. 指令系统   【解析】 计算机硬件系统的五大部件是指运算器、控制器、输入设备、输出设备和存储器。 [参考答案] A   2. 一个完整的计算机系统分成硬件系统、系统软件、应用软件和( )4个层次。 A. 软件系统 B. 程序设计语言 C. 操作系统 D. 指令系统   【解析】 一个完整的计算机系统分成硬件系统、系统软件、应用软件和程序设计语言4个层次。[参考答案] B   3. 计算机操作系统具有并发性、共享性、虚拟性和( )4项基本特征。 A. 同步性 B. 可靠性 C. 异步性 D. 可控性   【解析】 计算机操作系统具有并发性、共享性、虚拟性和异步性4项基本特征。[参考答案] C   4.??20世纪90年代以来常用的主流操作系统有DOS、Windows、UNIX和( )。 A. 网络操作系统 B. 手机操作系统 C. 智能操作系统 D.??Linux   【解析】 20世纪90年代以来常用的主流操作系统有DOS、Windows、UNIX和Linux。 [参考答案] D   5. 计算机中指令执行的基本流程分为( )、取指令、分析指令和执行指令。 A.??PC+1 B. 编写指令 C. 存储指令 D. 操作指令   【解析】 计算机中指令执行的基本流程可分为PC+1、取指令、分析指令和执行指令。 [参考答案] A   6. 操作系统对CPU的管理主要包括进程控制、进程同步、进程通信和( )。 A. 作业管理 B. 处理器调度 C. 并发控制 D. 交通控制   【解析】 操作系统对CPU的管理主要包括进程控制、进程同步、进程通信和处理器调度。 [参考答案] B   7. 目前,微机中常用的外存储器主要有硬盘、光盘、( )和移动硬盘。 A. 软盘 B. 磁盘 C. U盘 D. 磁带   【解析】 目前,微机中常用的外存储器主要有硬盘、U盘和移动硬盘。[参考答案] C   8. 输入输出接口电路用来解决速度、时序、信息格式和( )不匹配的问题。 A. 操作方式 B. 存储格式 C. 电器特性 D. 信息类型   【解析】 输入输出接口电路用来解决速度、时序、信息格式和信息类型不匹配的问题。 [参考答案] D   9. 输入输出的控制方式分为( )、程序中断、直接内存访问和I/O通道控制等方式。 A. 程序查询 B. 作业管理 C. 外存访问 D. 通道管理   【解析】 输入输出的控制方式分为程序查询、程序中断、直接内存访问和I/O通道控制等方式。[参考答案] A   10. 操作系统对文件的管理主要包括存储空间管理、文件目录管理、文件读写管理和( )。 ??A. 文件操作管理 B. 文件安全保护 C. 文件删除管理 D. 文件建立管理   【解析】 操作系统对文件的管理主要包括存储空间管理、文件目录管理、文件读写管理和文件安全保护。[参考答案] B 5.2.2 问答题   1. 什么是计算系统?   【解析】 计算系统是由硬件和软件组成的、具有科学计算和信息处理功能的完整计算机系统。   2. 如何定义计算机硬件与硬件系统?如何定义计算机软件与软件系统?   【解析】 计算机硬件是指那些看得见、摸得着的部件,计算机中所有部件的有机集合称为计算机硬件系统;计算机中使用的各种程序称为软件,并将计算机中所有程序的有机集合称为软件系统。   3. 什么是操作系统?   【解析】 操作系统是有效地组织和管理计算机系统中的软/硬件资源,合理地组织计算机工作流程,控制程序的执行,并提供多种服务功能及友好界面,方便用户使用计算机的系统软件。   4. 软件与硬件存在哪些关系?   【解析】 计算机软件与硬件存在层次结构关系、相互依赖关系和功能等价关系。   5. 什么是作业?   【解析】 作业是指用户在运行程序和处理数据过程中,用户要求计算机所做工作的集合。作业包含了从输入设备接收数据、执行指令、给输出设备发出信息,以及把程序和数据从外存传送到内存,或从内存传送到外存。   6. 什么是进程?   【解析】 进程是指程序的一次执行过程,是系统进行资源分配和作业调度的单位。进程通常被定义为一个正在运行程序的实例,是一个程序在其自身的地址空间中的一次执行活动。   7. 并发与并行有何区别?   【解析】 并发是将一个程序分解成多个片段,并在多个处理器上同时执行;并行是多个程序同时在多个处理器中执行,或者多个程序在一个处理器中轮流执行。   8. 什么是存储管理?   【解析】 存储管理是指操作系统对内存储器和外存储器的管理方式。不同的操作系统具有不同的功能特性,其中最明显的区别之一就是它们所采用的存储管理方式是不同的。目前常用的管理方式可分为连续存储管理、分区存储管理和分页存储管理。   9. 什么是输入输出控制,主要有哪些控制方式?   【解析】 输入输出控制是指操作系统对CPU与I/O之间数据传送的控制,并且要求传送速度足够高,系统开销小,能充分发挥硬件资源的能力。随着计算机技术的发展,I/O控制方式也在不断发展,其控制方式可分为程序查询方式、程序中断控制方式、直接内存访问方式以及I/O通道控制方式。   10. 什么是文件和文件系统?   【解析】 逻辑上具有完整意义的信息集合称为文件,计算机中所有的程序和数据都是以文件的形式进行存放和管理的。文件系统是操作系统中与文件管理有关的软件和数据的结合,是操作系统中负责存取和管理信息的模块,它用统一的方式管理用户和系统信息的存储、检索、更新、共享和保护,并为用户提供一套高效的文件使用方法。 5.3 知 识 背 景   本节介绍对计算机软件及其操作作出了杰出贡献的5位科学家:计算机软件之母——格蕾丝·霍珀、Windows的创始人——吉姆·阿尔钦、Linux的开发者——李纳斯·托瓦尔兹、Word的创始人——查尔斯·西蒙尼、鼠标的创始人——道格拉斯·恩格尔巴特等人的生平事迹。此外,由于目前计算机中的系统软件和应用软件大都是美国微软公司的产品,因而本节简要介绍微软公司的创始人——比尔·盖茨的生平事迹。 5.3.1 计算机软件之母——格蕾丝·霍珀   格蕾丝·霍珀(Grace Hopper,1906—1992,见图5-1)是杰出的女数学家,是世界妇女的楷模和骄傲,也是计算机界被崇拜的偶像人物,被世人尊称为“计算机软件之母”。为了纪念格蕾丝·霍珀在计算机软件方面的杰出贡献,世界计算机界设立了著名的霍珀奖。   格蕾丝·霍珀1906年12月9日出生于美国纽约市一个海军世 家,其祖父为海军少将,而外祖父是纽约市的高级土木工程师,常常带着她去工作,她也十分高兴地去帮着扶红白相间的测量杆,这培养了她对于几何学和数学的兴趣。霍珀从小就像男孩那样爱摆弄机械 电器,7岁那年,为了弄清闹钟的原理,一连拆开了家中的7架闹钟。   格蕾丝·霍珀先后就读于瓦萨学院和耶鲁大学,是耶鲁大学第一位女数学博士。霍珀的父亲是保险经纪人,母亲是家庭主妇,但很爱好数学。她的双亲希望长女霍珀像儿子一样接受教育,大学毕业后留校任教。1943年,日军偷袭珍珠港后,她加入海军预备队。在马萨诸塞州北安普敦的海军军官学校培训以后,1944年6月她被授予上尉军衔,并被分配到装备局。考虑到她是一个数学家,她被派到哈佛大学艾肯教授手下参与MarkⅠ的研制工作,为MarkⅠ编程,她成为“第一台大型数字计算机的第三位程序员”。在毫无计算机和编程知识背景的情况下,霍珀通过刻苦钻研和虚心好学,很快成为一名优秀的程序员并赢得了同事的尊敬。其间,她为海军编写找到最佳海上布雷方案的程序;为MarkⅠ编写了操作手册,建立了世界上第一个“子程序库”,这是霍珀和她的同事将经过试用证明为正确的一些程序,例如,计算正弦、余弦、正切的程序。1947年夏天,在为MarkⅡ排除一次故障的过程中,霍珀和她的同事在继电器簧片中间找到了一只飞蛾,这使得bug(小虫)和debug(臭虫)这两个本来普普通通的名词成了计算机专业中特指莫名其妙的“错误”和“排除错误”的专用名词而流传至今。战后,艾肯鼓励咨询保险公司在其业务中使用计算机,霍珀为此编写了该公司的一些业务处理程序。计算机在商业上的应用这一新的领域吸引了霍珀的兴趣,因为这比科学和工程计算这类应用复杂得多。   1949年,霍珀离开哈佛大学,加盟由第一台电子计算机ENIAC发明人埃克特和莫齐利开办的计算机公司,为第一台储存程序的商业电子计算机UNIVAC编写软件。这期间,她开发出了世界上第一个将高级符号语言转变为机器语言的编译器A-0(1952年),第一个处理数学计算的编译器A-2(1953年),第一个自动翻译英语的数据处理语言的编译器B-0(也叫作Flow- matic,被称为汇编语言1957年)。这是第一个用于商业数据处理的类似英语的语言。后来以Flow-matic为基础开发的商用语言(Common Bussiness OrientedLanguage,COBOL)于1959年问世,它是第一批高级程序设计语言之一,广泛用于大型和小型计算机的高级商业程序设计。COBOL文本诞生后,霍珀又率先实现了COBOL的第一个编译器,因此,有人把霍珀叫作“COBOL之母”。据20世纪80年代初的统计,全美国在运行中的程序有80%是用COBOL语言编写的,可见这个语言对计算机应用发展所起的作用。在计算机软件的进展中,霍珀作出了很大的贡献,她的努力使计算机在商用化和产业化方面取得长足的进步。   霍珀一生还获得许多殊荣,如计算机先驱奖、计算机科学年度人物奖、国家技术奖等。1971年,为了纪念现代数字计算机诞生25周年,美国计算机学会特别设立了“格蕾丝·霍珀奖”,颁发给当年最优秀的30岁以下的青年计算机工作者。为表彰她对美国海军的贡献,一艘驱逐舰被命名为“格蕾丝号”,加利福尼亚海军数据处理中心也改名为霍珀服务中心。   1992年1月7日,在华盛顿的阿灵顿国家公墓,美国海军为在元旦凌晨在睡梦中安然去世的退休女海军军官霍珀举行了隆重的葬礼。全套海军仪仗队和众多肃穆的海军官兵按照海军的仪式向这位令人尊敬的长者作最后的告别,千千万万的美国人通过电视转播观看了葬礼的实况。   4年以后,即1996年1月6日,美国海军又在缅因州的巴斯港为新建的一艘阿利·伯克级驱逐舰举行了隆重的命名仪式,把它命名为“霍珀号”。这是第二次世界大战以后第一次、整个美国海军历史上第二次,以一位女性的名字命名一艘战舰。美国海军为什么给予霍珀这么高的荣誉呢?原来,霍珀是美国海军历史上第一位获得少将军衔的女性,而且为海军服务长达43年,为海军的现代化建设作出了卓越的贡献。