第1章操作系统概述―1―第1章操作系统概述1.2例题解析例1.2.1影响计算机系统性能的主要因素是什么?解影响计算机系统性能的主要因素分为软件和硬件两个方面:(1)硬件方面主要是指构成计算机系统器件的性能和硬件的体系结构,如存储器的速度和容量、多处理机结构、总线结构等。(2)软件方面主要是指操作系统,因为操作系统决定了硬件是否能被用户使用、硬件的功能是否能发挥出来、其它软件能否在计算机系统上运行。例1.2.2说明操作系统与软件的关系解操作系统与软件的关系如下:(1)操作系统是每台计算机必备的系统软件。(2)操作系统是所有软件运行的基础,所有的其他软件都是建立在操作系统基础之上的,并得到它的支持和服务。同硬件一样,软件资源也要操作系统进行有效的管理。(3)软件的开发依赖于操作系统。开发软件必需在一定的操作系统环境下进行,操作系统所能提供的功能支持在一定程度上决定软件开发的难易程度。(4)操作系统影响软件的生命周期。如果主流操作系统的变更,就意味着一批应用软件生命的结束。(5)应用软件是操作系统上的可用资源,是操作系统生存的基础。如何评论一个操作系统的好坏?不仅要考虑其可靠性、易用性、安全性、兼容性等等,还要衡量在此操作系统上开发出的软件的数量和质量。许多用户使用操作系统的主要目的是使用其上的能够完成某种特定功能的应用软件,例如某些财务公司安装有微软的Windows系列操作系统,而其工作中经常使用的却是Windows上开发的各种财务软件,此财务软件是Windows操作系统上的可用资源。只有拥有大量应用软件的操作系统才能更多的占有市场,具有旺盛的生命力。微软的Windows系列是PC机上最流行的操作系统,它不仅拥有众多的软件产品,如软件开发工具VB、VC++、办公软件Office等,还有大量的应用软件。尽管其操作系统价格高,性能还有许多不足之处,还是拥有大量的用户。如果说PC上的CPU不用Intel还可以用AMD或其它公司芯片的话,操作系统则除了选择Windows,其它选择都是困难的。IBM的OS/2已经退出竞争的舞台。虽然有PC版的UNIX,如SUN的Solaris和SCO的Unixware及OpenServer,但在办公自动化、字处理等大宗应用领域远不如Windows来得普及。Linux系统虽然是免费产品,是唯一从PC到巨型机(包括MPP)系统上全谱系(即可伸缩性强)可运行的系统,其可靠性、稳定性、可扩充性、可伸缩性都是世人称道的。但是大多数普通用户使用PC的目的是为了字处理、办公自动化、上网浏览、玩游戏,Linux在这方面的软件产品逊色得多,而这正好是Windows的强项。(6)操作系统与软件是相互促进的。好的操作系统下可以开发出更多的软件,而丰富第1章操作系统概述―2―的软件资源有助于操作系统的竞争和生存。例1.2.3说明操作系统与计算机硬件的关系。解(1)操作系统的运行需要硬件的支持,如特权指令、中断机构和通道机构等;操作系统性能的发挥受硬件条件的影响,如内存的容量会影响Windows系统的运行速度。(2)操作系统决定了硬件是否能被用户使用,决定了硬件的功能是否能发挥出来。(3)操作系统与硬件的发展是相互促进的。操作系统的重要任务之一是管理计算机的硬件。操作系统的运行需要硬件的强有力的支持。为了能使操作系统高效地运行,硬件系统的组织结构也在不断地进行改进。(4)一种操作系统只能运行在特定种类的计算机上。(5)一台计算机可以运行不同的操作系统。例1.2.4一个操作系统能否管理任何种类的计算机?解操作系统是与计算机硬件关系最密切的软件,负责管理计算机系统的硬件资源,不同种类的计算机有不同体系结构,不同的处理器,不同的指令系统,不同硬件配置,操作系统能够管理的软硬件资源受到一定的限制,一种操作系统只能安装到特定种类的计算机上。如,Windows98只能用于管理IBMPC兼容机,而不能用于管理APPLE公司的Machintosh计算机。例1.2.5为什么要区分系统态和用户态?解区分系统态和用户态主要原因如下:(1)为了防止操作系统及关键数据受到用户程序有意或无意的破坏,通常将处理机的执行状态分成系统态和用户态两种。处于用户态执行的程序的操作要受到限制,不能去执行特权指令,访问操作系统区域和其他程序的区域,这就防止了用户程序对操作系统和其他用户程序的破坏。操作系统的内核通常是运行在系统态的,用户态的程序通过系统调用接受系统态程序运行的服务。(2)用户态下的进程能存取它们自己的指令与数据,但不能存取内核指令和数据或其他进程的指令和数据。然而,系统态下的进程能够存取内核和用户地址。例如,一个进程的虚拟地址空间可划分成仅在系统态下可存取及在系统态和用户态都可存取的两部分。某些机器指令是特权指令(PrivilegeInstruction),如I/O指令等。在用户态下执行的进程没有执行特权指令的能力,在用户态下执行特权指令会引起错误。而在系统态下的进程可以执行一切指令。例1.2.6多道程序系统的意义?解多道程序系统的意义是:(1)提高系统资源的利用率和系统吞吐率。当一道程序需要等待某种事件发生时,处理机不需要空闲等待,而去执行另一道程序,这样也可以使处理机与外部设备并行操作,第1章操作系统概述―3―可以使其它资源并行或并发操作。(2)客观世界本身就是一个多道系统,客观世界问题的解决要求多道程序系统的出现,这样可以使问题的解决更迅速、更直接、更方便。例1.2.7实现多道程序系统的最主要硬件支持是什么?解中断系统和通道技术。(1)很多进程的切换是由时钟中断引起的,尤其是分时系统。用户程序进行系统调用时通过软中断来实现,如TRAP。通道和外设的操作也要向操作系统发送中断。(2)在多道程序系统中,当CPU要求在主存和外设间传输数据时,通过发出I/O指令命令通道工作,通道独立地在内存和外设间进行数据传输,I/o操作完成后,通道以中断方式通知CPU,从而实现了CPU计算与I/O操作的并行。例1.2.8微软的DOS存在很多技术问题,如内存管理、安全性、单道程序系统,但是它为什么成为了主流操作系统?解主要原因是:(1)适合当时的硬件条件;(2)开发并聚集了大量的可用软硬资源;(3)配备在流行的计算机上。例1.2.9单道批处理系统如何克服手工操作阶段计算机系统的缺点的?解手工操作阶段就是没有操作系统的时期,主要缺点是用户操作和准备操作的时间过长,大量的系统时间被浪费在人工操作上。单道批处理系统引入了专职的操作员来减少用户的操作时间,将类似的作业作为一组通过计算机,实现了批处理,减少了建立作业运行环境所需要的时间,配备了简单的操作系统,完成了一个作业到另一作业的自动转换。例1.2.10操作系统的什么用户接口一般用户使用的比较少?为什么?解一般用户使用程序接口较少。程序接口是程序员在编写程序时利用操作系统所提供功能的方法,可以在高级语言和汇编语言中使用。而一般用户主要通过交互操作界面控制和管理计算机,运行软件,使用需要的功能。目前大多数软件使用高级语言开发,大多数功能可以通过高级语言的语句实现,不需要直接使用程序接口来完成,只有一些特殊功能才需要在高级语言中使用操作系统的程序接口。因此大多数用户使用的是操作系统的命令接口。例1.2.11批处理系统的优势是什么?它给用户带来什么不便?解吞吐量大,善于处理交互性少的作业。它的缺点是交互性差。用户不能动态地调试程序,不能动态地、交互地与计算机面对面地对话。例1.2.12多用户分时系统如何既克服多道批处理的缺点又使系统的效率不降低?第1章操作系统概述―4―解多道批处理具有非交互和效率高的特点。手工操作阶段的计算机系统是交互的,但是用户操作和准备操作的时间过长,大量的系统的时间被浪费在人工操作上,因此引入了专职的操作员来减少用户的操作时间的浪费。可见,交互性与效率是一对矛盾。在多用户分时系统中,每个用户通过自己的终端将程序送到机器中,从而在主机中形成多道程序,通过对处理机的分时,而使终端上的用户可以交互地控制程序的执行,这样既保证了交互性又使系统的效率不降低,解决了交互性和效率之间的矛盾。例1.2.13多道批处理与单道批处理的共同点和不同点?解多道批处理与单道批处理的共同点是批处理,即非交互性、需要专职的操作员;不同点是多道批处理可以同时将多个作业装入内存执行,而单道批处理只能一次装入一个作业执行。例1.2.14多用户分时系统如何保证系统的交互性?解多用户分时系统的交互性体现在终端上的用户感觉上就好似单独使用一台计算机一样。通过将处理机的时间分成很小的时间片,轮流地分配给联机终端。由于人在终端上操作速度较慢,而处理机可以在很短的时间内分配给联机终端几个时间片,从而保证终端上的用户在感觉上好似单独使用一台计算机一样。例1.2.15网络系统的工作站(客户机)与多用户分时系统的终端的区别?解网络系统的工作站(客户机)本身是一个自主的计算机系统,有自己的内存、处理机和操作系统,具有独立的处理能力,而多用户分时系统的终端本身没有独立的处理能力,只是分时系统主机的输入和输出设备,程序的执行完全在主机上进行。1.3习题1.3.1选择最合适的答案1.一般用户更喜欢使用的系统是()。A.手工操作B.单道批处理C.多道批处理D.多用户分时系统2.与计算机硬件关系最密切的软件是()。A.编译程序B.数据库管理系统C.游戏程序D.OS3.现代OS具有并发性和共享性,是()的引入导致的。A.单道程序B.磁盘C.对象D.多道程序4.早期的OS主要追求的是()。A.系统的效率B.用户的方便性C.可移植D.可扩充性5.()不是多道程序系统A.单用户单任务B.多道批处理系统第1章操作系统概述―5―C.单用户多任务D.多用户分时系统6.()是多道操作系统不可缺少的硬件支持。A.打印机B.中断机构C.软盘D.鼠标7.特权指令可以在()执行。A.目态B.浏览器中C.任意的时间D.进程调度中8.没有了()计算机系统就启动不起来。A.编译器B.DBMSC.OSD.浏览器9.通道能够完成()之间的数据传输。A.CPU与外设B.内存与外设C.CPU与主存D.外设与外设10.操作系统的主要功能有()。A.进程管理、存储器管理、设备管理、处理机管理B.虚拟存储管理、处理机管理、进程调度、文件系统C.处理机管理、存储器管理、设备管理、文件系统D.进程管理、中断管理、设备管理、文件系统11.单处理机计算机系统中,()是并行操作的。A.处理机的操作与通道的操作是并行的B.程序与程序C.主程序与子程序D.用户程序与操作系统程序12.处理机的所有指令可以在()执行。A.目态B.浏览器中C.任意的时间D.系统态13.()功能不是操作系统直接完成的功能。A.管理计算机硬盘B.对程序进行编译C.实现虚拟存储器D.删除文件14.要求在规定的时间内对外界的请求必须给予及时响应的OS是()。A.多用户分时系统B.实时系统C.批处理系统时间D.网络操作系统15.操作系统是对()进行管理的软件。A.硬件B.软件C.计算机资源D.应用程序16.()对多用户分时系统最重要。A.实时性B.交互性C.共享性D.运行效率第1章操作系统概述―6―17.()对多道批处理系统最重要。A.实时性B.交互性C.共享性D.运行效率18.()对实时系统最重要。A.及时性B.交互性C.共享性D.运行效率19.Windows98是()操作系统。A.多用户分时B.批处理系统C.单用户多任务D.单用单任务20.分布式系统与网络系统的主要区别是()A.并行性B.透明性C.共享性D.复杂性21.()操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。A.网络B.分布式C.分时D.实时22.如果分时操作系统的时间片一定,那么(),则响应时间越长。A.用户数越少B.用户数越多C.内存越小D.内存越大23.下面6个系统中,必须是实时操作系统的有()个。·航空订票系统·过程控制系统·机器口语翻译系统·计算机辅助系统·办公自动化系统·计算机激光照排系统A.1B.2C.3D.424.下面对OS