版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统的开发与设
计方案一、复习重点和要求第1章操作系统概述考核学生对操作系统的定义、主要功能、主要类型、操作系统的特征以及分时概念等内容的学习情况。【掌握】.操作系统的概念操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。记忆要点:操作系统是什么一一是系统软件;操作系统管什么一一控制和管理计算机系统内各种资源;操作系统有何用一一扩充硬件功能,方便用户使用。.操作系统的主要功能操作系统的五大主要功能:存储管理、进程和处理机管理、文件管理、设备管理、用户接口管理。【理解】.操作系统的特征:并发、共享和异步性。理解模拟:并发一一“大家都前进了”;共享一一“一件东西大家用”;异步性一一“你走我停”,“走走停停”。.操作系统的主要类型操作系统的主要类型有:多道批处理系统、分时系统、实时系统、网络操作系统、个人机操作系统、分布式系统和嵌入式操作系统。UNIX系统是著名的分时系统。.分时概念:主要是指若干并发程序对CPU时间的共享。【了解】.操作系统的形成;.分时和实时操作系统的特点;.操作系统在计算机系统中的地位:是裸机之上的第一层软件,是建立其他所有软件的基础。.操作系统结构设计:整体结构、层次结构、虚拟机结构和客户机-服务器结构。.操作系统为用户提供的三种用户接口:图形用户接口、命令行接口和程序接口。系统调用是操作系统内核与用户程序、应用程序之间的接口。在UNIX/Linux系统,系统调用以C函数的形式出现。第2章进程管理考核学生对进程定义、进程的状态及其转换、进程的组成、竞争条件和临界区、进程的同步与互斥、信号量和P、V操作及其一般应用、死锁的概念和产生死锁的必要条件等内容学习情况。【掌握】.进程的定义:进程是程序在并发环境中的执行过程。进程与程序的主要区别。进程最基本的属性是动态性和并发性。.进程的状态及其转换进程的3种基本状态是:运行态、就绪态和阻塞态。掌握教材38页的进程状态及其转换图。.进程的同步与互斥的概念。可以简单理解为:同步是协作,互斥是竞争。.信号量和P、V操作及其一般应用。运用信号量机制和P、V操作,解决并发进程一般的互斥和同步问题。解决此类问题的一般方式:①根据问题给出的条件,确定进程有几个或几类;②确定进程间的制约关系一一是互斥,还是同步;③各相关进程间通过什么信号量实现彼此的制约,标明信号量的含义和初值;④用P、V操作写出相应的代码段;⑤验证代码的正确性:设以不同的次序运行各进程,是否能保证问题的圆满解决。切忌按固定顺序执行各进程。【理解】.多道程序设计概念及其优点。.进程的一般组成,应深入理解进程控制块的作用。每个进程有惟一的进程控制块。.Linux进程管理的基本命令:ps、kill、sleep。.理解进程临界资源和临界区的概念,进程进入临界区的调度原则。信号量概念,P、V操作执行的动作。.死锁的概念;死锁的4个必要条件:互斥条件、不可抢占条件、占有且申请条件、循环等待条件。【了解】1.进程间的3种高级通信:共享内存、管道文件和消息传递。第3章处理机调度考核学生对作业状态、作业调度和进程调度的功能、性能评价标准、常用调度算法、Linux常用调度命令、中断处理过程、shell命令执行过程等内容的学习情况。【掌握】.作业调度和进程调度的功能作业调度的功能见教材85页,进程调度的功能见教材86页。在一般操作系统中,进程调度是必须具备的。.常用调度算法掌握三种基本调度算法(先来先服务法、时间片轮转法、优先级法)的实现思想,并能进行评价指标的计算。要求:能利用图表形式列出各作业或进程的有关时间值,如到达时间、运行时间、开始时间、完成时间等,利用评价公式计算出各指标的值,如周转时间、平均周转时间。【理解】.作业的四种状态:提交、后备、执行和完成。.作业调度与进程调度的关系。简单比喻:作业调度是演员上场前的准备,进程调度是让演员上场表演。.调度性能评价标准评价调度算法的指标:吞吐量、周转时间、带权周转时间、平均周转时间和平均带权周转时间。.中断处理过程:保存现场、分析原因、处理中断和中断返回。.shell命令的一般执行过程。【了解】.调度的三个级别:高级调度、中级调度和低级调度,其中高级调度又称作业调度,低级调度又称进程调度。.调度策略的选择。.中断概念中断是指CPU对系统发生的某个事件做出的一种反应,它使CPU暂停正在执行的程序,保留现场后自动执行相应的处理程序,处理该事件后,如被中断进程的优先级最高,则返回断点继续执行被“打断”的程序。第4章存储管理考核学生对重定位、分区法、分页的概念、虚拟存储概念、请求分页存储管理技术、常用页面置换算法。【掌握】.掌握以下概念:逻辑地址、物理地址、逻辑地址空间、物理地址空间、重定位、静态重定位、动态重定位、碎片、虚拟存储器。.分区法分区法分为固定分区法和动态分区法两种。要掌握其基本原理、数据结构、地址转换、内存空间的分配与释放、分配算法、优点和缺点。.分页技术掌握分页存储管理的基本方法,如地址表示、从逻辑地址到物理地址的转换、数据结构等。.虚拟存储器虚拟存储器(VirtualMemory)是用户能作为可编址内存对待的虚拟存储空间,它使用户逻辑存储器与物理存储器分离,是操作系统给用户提供的一个比真实内存空间大得多的地址空间。虚拟存储器的基本特征:虚拟扩充、部分装入、离散分配、多次对换。此外,虚拟存储器的容量不是无限大的,它主要受到地址的字长和外存容量的限制.请求分页技术请求分页存储管理技术是在单纯分页技术基础上发展起来的,二者根本区别在于请求分页提供虚拟存储器。实现请求分页,系统必须提供一定容量的内存和外存,以及支持分页机制,还需要有页表机制、缺页中断机构以及地址转换机构。.常用页面置换算法能应用先进先出法(FIFO)、最佳置换法(OPT)、最近最少使用置换法(LRU)的实现思想计算页面淘汰序列、缺页次数以及缺页率。【理解】.重定位把逻辑地址转变为内存物理地址的过程称作重定位。根据重定位的时机,分为静态重定位和动态重定位。理解它们的概念、实现思想和优缺点。。【了解】.存储器层次了解典型的存储器层次结构:寄存器、高速缓存、内存、磁盘、磁带。.用户程序的地址空间用户程序的主要处理阶段:编辑、编译、链接、装入和运行。.对换技术的实现思想。第5章文件系统考核学生对文件的分类、文件系统的功能、文件的逻辑组织和物理组织、文件的目录结构、文件存储空间的管理、文件的存取控制等内容的学习情况。【掌握】.文件系统的功能一般说来,文件系统应具备以下功能:文件管理、目录管理、文件存储空间的管理、文件的共享和保护、提供方便的接口。.文件的逻辑组织和物理组织掌握文件的逻辑组织和物理组织的概念,以及相应的组织形式。.文件的目录结构文件目录的基本组织方式有单级目录、二级目录、树形目录。.文件存储空间的管理文件存储空间的管理是对外存空间中空闲盘块的管理。对空闲盘块的管理方式主要有:空闲盘块表、空闲块链接、位示图和空闲块成组链接等。【理解】文件的分类按用途分为:系统文件、库文件、用户文件;按文件中的数据形式分为:源文件、目标文件、可执行文件;按存取权限分为:只读文件、读写文件、可执行文件;按保存时间分为:临时文件、永久文件;在UNIX/Linux和MS-DOS系统中,文件分为普通文件、目录文件和特殊文件。而普通文件又分为ASCII文件和二进制文件两种。文件的存取控制为了实现文件系统的安全,文件需要保护和保密。对文件的存取控制可分别由存取类型来设定,如读、写、执行等,也可以通过命名、口令、存取权限或者加密的方法实现对文件的保护和保密【了解】.文件的链接Linux具有为一个文件起多个名字的功能,称为链接。文件链接是实现文件共享的有效途径,分为硬链接和符号链接。第6章设备管理考核学生对设备管理功能、设备分配技术、缓冲技术、SPOOLing系统、设备驱动程序概念、磁盘调度和管理等内容的学习情况。【掌握】.设备管理的功能操作系统中设备管理的功能简单地说就是:监视设备状态;进行设备分配;完成I/O操作;缓冲管理与地址转换。.设备分配技术设备分配技术主要有:独占分配、共享分配和虚拟分配。独占分配适用于独占设备,系统效率低;共享分配适用于高速、大容量直接存储的共享设备,设备的利用率较高;虚拟分配技术利用共享设备去实现独占设备的功能,从而使独占设备“感觉上”成为可共享的、快速的I/O设备。.设备驱动程序概念设备驱动程序是控制设备动作(如设备的打开、关闭、读、写等)的核心模块,用来控制设备上数据的传输。.磁盘调度算法常用的磁盘调度算法有:先来先服务法、最短寻道时间优先法和电梯法。重点掌握前两种磁盘调度算法。【理解】设备独立性设备独立性是设备管理要达到的目标之一,就是说,用户程序应与实际使用的物理设备无关,由操作系统考虑因实际设备不同而需要使用不同的设备驱动程序等问题。SPOOLing系统实现虚拟分配最成功的技术是SPOOLing(外部设备联机并行操作),也称假脱机技术。SPOOLing系统用常驻内存的进程去模拟一台外围机,用一台主机就可完成脱机技术中需用三台计算机完成的工作。理解SPOOLing系统的功能和实现思想。缓冲技术理解引入缓冲技术的主要目的和缓冲区的设置方式。【了解】.设备分类和标识了解设备的一般分类:存储设备(块设备),输入/输出设备(字符设备)。.处理I/O请求的步骤第7章现代操作系统发展考核学生对现代操作系统发展、嵌入式和分布式操作系统的一般知识的学习情况。【了解】.嵌入式操作系统的概念、功能和特性嵌入式操作系统是嵌入式系统中使用的操作系统。作为一种操作系统,它具有一般操作系统的基本功能,但是,由于嵌入式操作系统的硬件平台和应用环境与一般操作系统不同,所以它有自身的特点,其的最大特点就是可定制性。.分布式操作系统的概念、功能和特性。分布式操作系统是配置在分布式系统上的共用操作系统。分布式操作系统实施系统整体控制,对分布在各节点上的资源进行统一管理,并且支持对远程进程的通信协议。分布式操作系统要求实现用户面前的虚拟单处理机系统到具体的分布式系统的映射。它有如下三个基本功能:进程管理;通信管理和资源管理。.未来操作系统应具有的新特征。更强的分布式处理能力,更高的安全性和可靠性,符合开放式模型,更方便的用户界面。二、复习方法和建议.复习方法(1)对计算机操作系统要从宏观和微观两方面把握。宏观方面:牢记操作系统的定义。理解操作系统在计算机系统中的地位,明确操作系统进行资源管理的五大功能,即:存储管理、进程和处理机管理、文件管理、设备管理和用户接口管理。教材从第2章到第6章分别介绍了这些功能的具体内涵。微观方面:针对于进程、处理机、存储器、文件、设备管理,应掌握操作系统是如何管理计算机的这些资源的,理解有关概念、原理、技术和方法。(2)重视课程实验,培养动手能力。操作系统的上机实验很重要,它不仅可以加深对课本知识的理解,而且可以学到很多实际工作的经验,这对于增强动手技能和分析解决实际问题的能力、提高专业素质很有帮助。.复习建议(1)在复习时围绕操作系统是什么、干什么、如何干这一主线,分层次进行总结。抓住重点,掌握基本概念和基本方法,注意知识的前后连贯。操作系统中概念很多,要突出掌握重点概念,如:操作系统定义,进程、重定位、死锁等概念。要结合主教材和本复习指导中给出的教学要求,首先对每一章讲的问题是什么要搞清楚。然后,总结一下:针对该问题引入什么概念,该概念用来解决什么基本问题,采用什么基本方法予以解决。如果能把各章知识连贯起来、并结合上机体会进行复习,效果会更好。对于基本概念在理解其所指对象的基础上,记住其定义的表述。如:进程,是针对多道程序执行时出现的问题而引入的,记住其定义表述。然后,进程与程序有何区别?有什么基本特征呢?如何体现其动态性呢?进程在活动中彼此会发生什么关系呢?怎么解决呢?通过由表及里地分析,就便于掌握知识要点,尽量在理解的基础上进行记忆。对于操作系统的基本概念应掌握其实质是什么,是针对什么事物的,记住其表述要点。对于基本功能应掌握其是解决什么问题的,性能如何。对于基本方法和技术应理解其如何解决问题。(2)结合生活中的例子,体会操作系统的管理方法。操作系统许多管理方法都可以在日常生活中找到例子,学习时可以联想日常生活中熟悉的管理示例反复体会操作系统的管理方法,以加深对问题的理解。如程序和进程的关系,就像歌谱和唱歌;进程的同步关系就像跑接力赛;先来先服务算法如同排队买票;等等。(3)注重平时练习,加强自主学习能力。平时应认真、独立地完成课后习题和网上的自测题,正确地使用答案。在复习时应把练习再复习一遍,掌握做题的规律和技巧,特别对重点要求的内容和解题出现过错误的地方应格外注意。根据教学大纲要求,考试难度不会超出规定范围。对基本内容应牢固掌握,并能进行适当地灵活应用。.复习思考为什么要学习操作系统?(1)选择操作系统。现代计算机系统中,往往配备多种操作系统以满足不同的用途,通过学习可以了解不同类型操作系统的用途,有助于我们选择合适的操作系统为用户服务。(2)分析操作系统。了解操作系统的结构和功能,可以较为准确地发现和解决问题,至少能确定问题位置,通知操作系统的生产商来处理。分析和研究操作系统,不知道操作系统的基本原理是难以完成的。(3)设计操作系统。针对现实工作任务的需要,能设计或扩充现有操作系统,这是学习操作系统的最高层次,需要扎实的计算机科学和技术的基本理论和基础知识,特别是操作系统的基本原理、技术和方法。(4)操作系统中实用的资源管理方法和技术,可以应用于其他的管理和控制领域。有人说“操作系统是计算机技术和管理技术的结合”,如何在现有计算机硬件条件下通过软件达到目标并努力实现高效性,如何在空间和时间中权衡,机制与策略,等等,操作系统管理资源的思路和方法体现了现实生活中的管理技术。1.1本章知识点本章的内容描述了计算机操作系统的概貌,如什么是操作系统,它的主要功能和主要类型,操作系统结构设计。这一章在全书中起着提纲挈领的作用,后面的各个章节将分别对操作系统的各项功能做详细剖析。学好第一章对于我们从总体上把握操作系统有着指导作用。本章的主要知识点为:(1)操作系统的定义一个完整的计算机系统由硬件和软件两大部分组成。硬件是计算机物理装置本身,是计算机软件运行的基础;简单地说,软件是计算机执行的程序,软件分为系统软件、应用软件和支撑软件三大类。操作系统的定义如下:操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。(2)操作系统的主要功能操作系统作为计算机基本的系统软件,具有五大功能,分别是:存储管理、进程和处理机管理、文件管理、设备管理和用户接口管理。教材从第2章到第6章将分别介绍这些主要功能。(3)操作系统的主要类型操作系统在发展中形成了以下类型,它们是批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、嵌入式操作系统、个人机操作系统等。其中前三种属于传统的操作系统类型,后面的操作系统类型是随着计算机网络、分布式处理等新技术的应用而产生的,属于现代操作系统。(4)操作系统结构设计一般说来,操作系统有如下四种结构:整体结构,层次结构,虚拟机结构和客户机-服务器结构。它们在设计上各有优缺点。UNIX系统和Linux系统是当代最著名的多用户、多进程、多任务的分时操作系统。本章对它们的发展历史、主要特点以及内核的结构都进行了介绍。1.2典型例题解析【例1】什么是操作系统?答案操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。分析操作系统作为本课程最重要的概念,同学们一定要牢记。可以从三个方面理解这个概念,然后在理解的基础上进行记忆。(1)操作系统是系统软件。(2)对内,操作系统控制和管理各种资源,有效地组织多道程序运行。被计算机系统工作时所引用的一切客体都称为资源。这里所说的客体可能是处理机、设备、内存、外存等硬件,也可能是程序和数据等软件。(3)对外,操作系统是用户与计算机之间的接口。它为用户提供服务,方便用户使用计算机。如果同学们理解了操作系统在计算机系统中的地位,那么对于学习这个概念有帮助。【例2】在计算机系统中,操作系统是( )。A.处于裸机之上的第一层软件 B.处于硬件之下的底层软件C.处于应用软件之上的系统软件 D.处于系统软件之上的用户软件答案A分析解答这道题主要是清楚操作系统在计算机系统中的地位。在计算机系统中,操作系统处于一个承上启下的地位,它对内管理计算机的各种软硬件资源(文件、作业、存储器、设备、进程),对外向用户提供良好界面的服务,方便用户使用计算机。操作系统属于系统软件,但却又不同与其他的系统软件。从下图可以看出,操作系统紧贴硬件,是裸机之上的第一层软件,是对硬件的扩充,其他系统软件都建立在操作系统之上。而应用软件是建立在系统软件之上的,更贴近用户。制试匚外制试匚外姆「斗,理rJU峥独到法.帮*松*工具.期而制&LJV--,--管用居恩聚用1匕机“票聚酰'用药乐搓.电肆口口聚效.MD/*ft不口嚅我的二…会冷斛好鞅界.堀地语料#,注造如脚栗:骂其性理财(.阳而软存>删浦骷―
在牌原拧操作系统是系统软件,因此D是错误的。C说系统软件在应用软件之上,这与图中的情况相反,显然不对。而硬件之下则没有软件存在,所以B根本就不正确。所以A才是正确答案。以上是用排除法来进行选择,如果同学们已经理解了操作系统的地位,就可以直接选择A,这样可以节省答题的时间。【例3】现代操作系统的基本特征是( )、资源共享和异步性。
A.多道程序设计A.多道程序设计B.中断处理C.实现分时与实时处理D.程序的并发执行答案D分析操作系统也是一个程序,不过与其他程序相比,它有三个非常重要的特性:即多任务并行、多用户资源共享和异步性,把握操作系统的这些特性对于深刻理解操作系统会有很大帮助。并发性是指两个或多个任务在同一给定的时间间隔中进行。这是一个宏观上的概念。以多道程序为例,这里的并发性不仅体现在用户程序与用户程序之间并发执行,还体现在用户程序与操作系统程序之间的并发执行。因而从宏观上看,这些程序是同时向前推进的。资源共享是指多个任务共享计算机系统中的资源,如处理机、内存、外存、设备和数据等。这种共享是在操作系统的控制下实现的。对于一个给定的计算机系统,它的资源配置情况是相对固定的,而系统中多道程序对于资源的需求则是变化的,且通常是不可预知的;操作系统要掌握系统中当前资源的使用情况,并据此决定各程序进入系统的次序以及使用资源的次序。异步性体现了多道程序环境下,程序执行时“走走停停”的性质,更反应出操作执行现场的不可预知性。【例4】以下不属于操作系统具备的主要功能的是( )。A.内存管理 B.文档编辑C.中断处理 D.CPU调度答案B分析教材中介绍操作系统的主要功能有存储管理、进程和处理机管理、文件管理、设备管理和用户接口管理,一般被认为是操作系统的五大功能。对于本题,A显然是操作系统的功能之一,C中断处理是操作系统实施并发的基础,对于操作系统非常重要,是实现多道程序设计的前提。它就像机器中的齿轮,驱动各部件的动作,因此,许多人称操作系统是由“中断驱动”的。C和D都属于操作系统的进程和处理机管理功能。只有B不是操作系统需要具备的主要功能,它一般是由应用软件提供的,如应用软件WindowsOffice的组件Word就提供了文档编辑功能。【例5】操作系统是计算机系统的核心软件。按功能特征的不同,可把操作系统分为([1])、
([2])、([3])、网络操作系统和分布式操作系统基本类型。其中[1]的主要目标是提高系统的吞吐率和效率,而[2]是一旦有处理请求和要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回。A.单用户系统B.批处理系统C.分时系统D.微机操作系统 E.实时系统答案[1]B [2]E [3]C分析解答此题需要理解三种传统操作系统类型的不同特点。批处理操作系统的主要特征可归纳为两点:“多道”和“成批”。“多道”是指内存中同时存在有多个正在处理的作业,并且外存上还存放有大量的尚待处理的后备作业。“成批”是指作业成批地进入系统,成批地处理,成批地离开系统;作业与作业之间的过渡由操作系统控制,不需用户的干预。批处理系统的主要优点是系统吞吐量大,资源利用率高;缺点是用户作业的等待时间长,用户与系统没有交互能力。(吞吐量:在一段给定的时间内,计算机所能完成的总工作量。)分时系统与实时系统的主要区别如下:(1)关于交互性。分时系统中各个终端用户与系统之间具有较强的交互性,而实时系统一般是专为某一领域使用的,对此要求不强。(2)关于可靠性。与分时系统相比,实时系统更加注重其稳定性和可靠性。例如,对于航天控制系统来说,实时控制系统的故障可能带来的后果是无法估量的。(3)关于响应时间。分时系统对响应时间的要求是以终端用户能接受的时间为依据的;而实时系统对响应时间一般有严格的要求,即能对外部请求做出及时的响应和处理。【例6】把下面左右两列词用线连起来,形成最恰当的搭配。Linux (A)层次结构UNIXIBMVM/370WindowsXPUNIXIBMVM/370WindowsXP(C)整体结构(D)虚拟机结构答案(1)—(C),—(A),—(D),答案(1)—(C),—(A),—(D),—(B)o分析左侧列出的是一些计算机操作系统,右侧列出的是操作系统的结构。一般说来,操作系统有四种结构:整体结构,层次结构,虚拟机结构和客户机-服务器结构。Linux是采用整体结构的操作系统,即所有的内核系统功能都包含在一个大型的内核软件之中。UNIX系统的核心层采用的是层次结构。Windows系列操作系统采用微内核技术,尽可能地使操作系统保持最小的核心,并由核心来负责处理客户和服务器之间的通信。IBMVM/370系统是虚拟机结构的一个典型实例。1.3练习题一、选择题(选择一个正确答案的代码填入括号中)一个完整的计算机系统是由( )组成的。A.硬件 B.软件C.硬件和软件 D.用户程序.在计算机系统中,控制和管理各种资源、有效地组织多道程序运行的系统软件称作( )。A.文件系统 B.操作系统C.网络管理系统 D.数据库管理系统.按照所起的作用和需要的运行环境,操作系统属于( )。A.用户软件 B.应用软件C.支撑软件 D.系统软件.操作系统的基本职能是()。A.提供功能强大的网络管理工具.提供用户界面,方便用户使用C.提供方便的可视化编辑程序D.控制和管理系统内各种资源,有效地组织多道程序的运行.为用户分配主存空间,保护主存中的程序和数据不被破坏,提高主存空间的利用率。这属于( )。A.处理器管理 B.存储管理C.文件管理 D.作业管理.操作系统对缓冲区的管理属于( )的功能。A.处理机管理 B.设备管理C.文件管理 D.存储器管理TOC\o"1-5"\h\z.操作系统内核与用户程序、应用程序之间的接口是( )。A. shell命令 B.图形界面C.系统调用 D. C语言函数.为了使系统中所有的用户都能得到及时的响应,该操作系统应该是( )。A.多道批处理系统 B.分时系统C.实时系统 D.网络系统.在实时系统中,一旦有处理请求和要求处理的数据时,CPU就应该立即处理该数据并将结果及时送回。下面属于实时系统的是( )。A.计算机激光照排系统 B.办公自动化系统C.计算机辅助设计系统 D.航空订票系统.下面不属于分时系统特征的是( )。A.为多用户设计 B.需要中断机构及时钟系统的支持口方便用户与计算机的交互 D.可靠性比实时系统要求高.以下著名的操作系统中,属于多用户、分时系统的是( )。A.DOS系统 B.WindowsNT系统C.UNIX系统 D.OS/2系统二、判断题(正确的划J,错误的划X。).操作系统是用户与计算机之间的接口。( ).操作系统是系统软件中的一种,在进行系统安装时可以先安装其它软件,然后再装操作系统。( ).操作系统是整个计算机系统的控制管理中心,它对其它软件具有支配权利。因而,操作系统建立在其它软件之上。( ).在UNIX/Linux系统上,系统调用以C函数的形式出现。( ).虽然分时系统也要求系统可靠,但实时系统对可靠性的要求更高。( ).UNIX操作系统是采用微内核方法实现结构设计的。( )参考答案:一、CBDDBBCBDDC二、1、4、5是正确的。2、(X)安装操作系统时必须先安装操作系统,然后再安装其它软件3、(X)其它软件建立在操作系统之上。6、(X)UNIX操作系统采用的是层次结构第2章进程管理辅导与自测本章知识点进程是操作系统中最基本、最重要的概念之一,在计算机系统中,进程不仅是最基本的并发执行的单位,而且也是分配资源的基本单位。引入进程这个概念,对于我们理解、描述和设计操作系统具有重要意义。本章的主要知识点为:(1)进程的概念进程是程序在并发环境中的执行过程。进程最根本的属性是动态性和并发性。要注意进程与程序的区别。进程的五个基本特征是:动态性、并发性、独立性、制约性、结构性。一个进程实体通常由程序、数据、栈和进程控制块(PCB)这四部分组成。进程控制块是进程组成中最关键的部分。每个进程有唯一的进程控制块。操作系统根据PCB对进程实施控制和管理。进程的动态、并发等特征是利用PCB表现出来的。为了对所有进程进行有效地管理,常将各进程的PCB用适当的方式组织起来。一般说来,进程队列有以下几种方式:线性方式、链接方式和索引方式。进程有三个基本状态:运行态、就绪态和阻塞态。在一定的条件下,进程的状态将发生转换。下图所示为进程的状态及其转换。图进程状态及其转换(2)进程管理就如同人类的族系一样,系统中众多的进程也存在族系关系:由父进程创建子进程,子进程再创建子进程,从而构成一棵树形的进程族系图。进程作为有“生命期”的动态过程,对它们的实施管理主要包括:创建进程、撤消进程、挂起进程、恢复进程、改变进程优先级、封锁进程、唤醒进程、调度进程等。在Linux系统中,进程有5种状态。进程分为系统进程和用户进程。其中,系统进程只运行在内核模式下;用户进程既可以在用户模式下运行,也可以通过系统调用等运行在内核模式下。Linux的task_struct结构相当于其进程控制块。Linux系统对进程的操作常用命令有:ps、kill、sleep等。常用的系统调用有:fork,exec,wait,exit,getpid,sleep,nice等。(3)进程通信进程通信是指进程间的信息交换。根据进程间交换信息量的多少,分为高级进程通信和低级进程通信。进程的同步与互斥是指进程在推进时的相互制约关系,属于低级进程通信。一般来说同步反映了进程之间的协作关系,往往指有几个进程共同完成一个任务时在时间次序上的某种限制,进程相互之间各自的存在及作用,通过交换信息完成通信。如接力比赛中一组队员使用接力棒等。进程互斥体现了进程之间对资源的竞争关系,这时进程相互之间不一定清楚其它进程的情况,往往指多个任务多个进程间的通讯制约,因而使用更广泛。如打篮球时双方挣抢篮板球等。我们用信号量(Semaphore)及P,V操作来实现进程的同步和互斥。生产者-消费者问题是经典的进程同步和互斥问题。(4)死锁死锁是指多个进程循环等待他方占有的资源而无限期地僵持下去的局面。计算机系统产生死锁的根本原因就是资源有限且操作不当。一种原因是竞争资源引起的死锁,另一种原因是由于进程推进顺序不合适引发的死锁。产生死锁的四个必要条件是:互斥条件,不可抢占条件,占有且申请条件,循环等待条件。如果在计算机系统中同时具备这四个必要条件时,那么会发生死锁。一般地,解决死锁的方法分为死锁的预防、避免、检测与恢复三种。典型例题解析【例1】判断题:并发是并行的不同表述,其原理相同。( )答案X。分析并发是指多道程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。但对单CPU系统而言,每一时刻只有一个程序在CPU上运行(有可能此时其他的程序在进行输入、输出)。也就是说,占有CPU的只能有一个程序。因此,并发实际上是“在宏观上并行执行,在微观上串行执行”。而并行是真正意义上的并行执行,因此两者的含义是不同的。【例2】在操作系统中引入“进程”概念的主要目的是( )。A.改善用户编程环境 B.提高程序的运行速度C.描述程序动态执行过程的性质 D.使程序与计算过程一一对应答案C分析操作系统中多道程序的引入,使得它们在并发执行时共享系统资源,共同决定这些资源的状态,因此系统中各道程序在执行过程中就出现了相互制约的新关系,程序的执行出现“走走停停”的新状态。这些都是在程序的动态过程中发生的。而程序本身是机器能够翻译或执行的一组动作或指令,它或者写在纸面上,或者存放在磁盘等介质上,是静止的。很显然,直接从程序的字面上无法看出它什么时候运行、什么时候停顿,也看不出它是否影响其它程序或者一定受其它程序的影响。因此,用程序这个静态概念已不能如实反映程序并发执行过程中的这些特征。为此,人们引入进程的概念来描述程序动态执行过程的性质,这是引入“进程”概念的主要目的。【例3】下列进程状态的转换中,不正确的是( )。A.就绪®阻塞 B.运行®就绪C.就绪®运行 D.阻塞®就绪答案A分析回答这道题要知道进程的3种基本状态,以及它们之间的转换关系。通过下图可以看到,凡是图中有箭头指向的转换都是可行的,而没有箭头指向的则不可能。因此A是不正确的。图进程状态及其转换如果有的同学记不住这张图,那就从理解的角度进行思考。首先要理解3种状态的含义,然后再理解它们之间的转换。例如:运行的进程能变成就绪吗?可以,如果运行进程的时间片到了,就必修让出CPU,转换为就绪态。就绪的进程能变成阻塞吗?不可以,就绪态的进程已经具备了运行条件,只在等待CPU,怎么可能还退回到还不具备运行条件的阻塞态呢?因此,如果理解了,这张图就可以自己画出来,并不需要死记硬背。【例4】进程控制块是描述进程状态和特性的数据结构,一个进程( )。A.可以有多个进程控制块 B.可以和其他进程共用一个进程控制块C.可以没有进程控制块 D.只能有唯一的进程控制块答案D分析进程控制块(PCB)是一个用于描述进程动态性质的数据结构。操作系统根据PCB对进程实施控制和管理。进程的动态、并发等特征也是通过PCB表现出来的。进程由程序、数据、栈和PCB构成。构成进程的有关程序和数据集合是进程得以存在的物质基础,它们是进程的实体;PCB用于标识和刻画实体的存在和变化,是进程存在的唯一标志。当系统创建一个新进程时,就为它建立一个PCB;当进程终止后,系统回收为其分配的PCB,该进程在系统中就不存在了。【例5】在执行V操作时,当信号量的值( ),应释放一个等待该信号量的进程。A.小于0B.大于0C.小于等于0D.大于等于0答案C分析P,V操作能够实现对临界区的管理要求。它由P操作原语和V操作原语组成(原语是不可中断的过程),对信号量进行操作,具体定义如下:P(S):①将信号量S的值减1,即S=S-1;②如果S20,则该进程继续执行;否则该进程置为阻塞状态,排入阻塞队列。V(S):①将信号量S的值加1,即S=S+1;②如果S>0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。信号量的数据结构为一个值和一个指针,指针指向等待该信号量的下一个进程。信号量的值与相应资源的使用情况有关。当它的值大于0时,表示当前可用资源的数量;当它的值小于0时,其绝对值表示等待使用该资源的进程个数。注意,信号量的值仅能由P,V操作来改变。一般来说,信号量S20时,S表示可用资源的数量。执行一次P操作意味着请求分配一个单位资源,因此S的值减1;当S<0时,表示已经没有可用资源,请求者必须等待别的进程释放该类资源,它才能运行下去。而执行一个V操作意味着释放一个单位资源,因此S的值加1;若SV0,表示有某些进程正在等待该资源,因此要唤醒一个等待状态的进程,使之运行下去。【例6】有9个生产者,6个消费者,共享容量为8的缓冲区。在这个生产者-消费者问题中,互斥使用缓冲区的信号量mutex的初值应该为( )。A.1 B.6 C.8 D.9答案A分析进程的互斥是指当有若干个进程都要使用某一共享资源时,任何时刻最多只允许一个进程去使用,其它要使用该资源的进程必须等待,直到占用资源者释放了该资源。进程的互斥体现了并发进程之间访问共享资源时存在的竞争关系。在计算机系统中必须互斥使用的资源很多,如读卡机、磁带机、打印机等硬件资源和一些公共变量、表格、队列、数据等软件资源。利用信号量和P,V操作实现进程互斥的一般模型是:进程P 进程P 进程Pn
P(mutex);临界区;V(mutex);P(mutex);临界区;V(mutex);P(mutex);临界区;
V(mutex);P(mutex);
临界区;
V(mutex);其中信号量mutex用于互斥,初值为1。使用P,V操作实现进程互斥时应该注意的是:(1)每个程序中用户实现互斥的P、V操作必须成对出现,先做P操作,进临界区,后做V操作,出临界区。若有多个分支,要认真检查其成对性。(2)互斥信号量的初值一般为1。此外,P、V操作应分别紧靠临界区的头尾部,临界区的代码应尽可能短,不能有死循环。在本题中,既然是问互斥信号量,其初值应为1,选项中的6,8,9都是迷惑答题者的,如果对同步和互斥不能很好地理解,就很难选择。【例7】两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的()关系。A.同步 B.互斥 C.竞争D.合作答案A分析进程的同步是指并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消息,当一个进程没有得到另一个进程的消息时应等待,直到消息到达才被唤醒。同步是进程间共同完成一项任务时直接发生相互作用的关系。这样的例子在日常生活中不胜枚举,比如接力比赛中运动员的默契配合,工业生产中流水作业的每道工序的先后执行,以及计算机系统中对一个缓冲区的读和写等等。当并发进程存在协作的关系时,必须互通消息,完成进程的同步。能实现进程同步的机制称为同步机制,该机制能把其他进程需要的消息发送出去,也能测试自己需要的消息是否到达。P,V操作是典型的同步机制之一。用一个信号量与一个消息联系起来,当信号量的值为0时,表示期望的消息尚未产生;当信号量的值非0时,表示期望的消息已经存在。用P,V操作实现进程同步时,调用P操作测试消息是否到达,调用V操作发送消息。使用PV操作实现进程同步时应该注意的是:(1)分析进程间的制约关系,确定信号量种类。在保持进程间有正确的同步关系情况下,哪个进程先执行,哪些进程后执行,彼此间通过什么资源(信号量)进行协调,从而明确要设置哪些信号量。(2)信号量的初值与相应资源的数量有关,也与P、V操作在程序代码中出现的位置有关。(3)同一信号量的P、V操作要成对出现,但它们分别在不同的进程代码中。本题中进程的同步体现的是合作关系,但答案不能选D,要使用操作系统的术语“同步”。【例8】设有一台计算机,有两条1/0通道,分别接一台卡片输入机和一台打印机。卡片机把一叠卡片逐一输入到缓冲区B1中,加工处理后再搬到缓冲区B2中,并在打印机上打印结果。问:①系统要设几个进程来完成这个任务?各自的工作是什么?②这些进程间有什么样的相互制约关系?③用P、V操作写出这些进程的同步算法。分析我们画一个草图来帮助我们理解这道题:输 处 输从图中可以看出,从“卡片机”到“打印机”共需要3个操作,即输入、处理、输出。这3个动作就是完成任务的3个进程。下面我们看看这些进程之间有什么样的制约关系。可以看出,这3个进程之间是同步关系,合作完成从输入到输出的工作任务。对其中任何一个进程,要处理好与其关联的两端设备的协调工作。以“输入进程,,为例,它与卡片机和缓冲区B1关联,将卡片机的卡片输入到缓冲区B1,在不考虑卡片机的情况下,就要考虑缓冲区的情况,即是满还是空,是空缓冲区,输入进程就可以输入信息,如果缓冲区满,则要等待“处理进程”将B1中的信息取走,使之为空,输入进程才能继续工作。依此类推,可以找出另外2个进程的制约关系。一般来说,处理进程同步需要2个信号量,“输入进程”和“处理进程”同步,需要2个信号量,解决缓冲区B1的协调操作问题;而“处理进程”和“输出进程”同步,还需要2个信号量,解决缓冲区B2的协调操作问题。因此,共需要4个信号量。本题中“处理进程”的算法有一些难度,因为它需要协调两个缓冲区的工作,考虑的因素比较多,算法复杂些。答案①系统可设三个进程来完成这个任务:R进程负责从卡片输入机上读入卡片信息,输入到缓冲区B1中;C进程负责从缓冲区B1中取出信息,进行加工处理,之后将结果送到缓冲区B2中;P进程负责从缓冲区B2中取出信息,并在打印机上印出。②R进程受C进程影响,B1放满信息后R进程要等待一一等C进程将其中信息全部取走,才能继续读入信息;C进程受R进程和P进程的约束:B1中信息放满后C进程才可从中取出它们,且B2被取空后,C进程才可将加工结果送入其中;P进程受C进程的约束:B2中信息放满后P进程才可从中取出它们,进行打印。③信号量含义及初值:B1full——缓冲区B1满,初值为0;B1empty——缓冲区B1空,初值为1;B2full——缓冲区B2满,初值为0;B2empty——缓冲区B2空,初值为1;说明前面我们说过:信号量的初值与相应资源的数量有关,也与P、V操作在程序代码中出现的位置有关。以本题为例,如果R进程的算法如下:嗨程糜lemp喷输入信息写入缓冲区B1则信号量B1empty初值应为1。表示B1缓冲区初始为空闲状态。如果C进程的算法如下:C进程则皿从B1中取出信息
:如empty/
加工信息
骐2smpty)
结臬送入B2好2血。则信号量B2empty初值应为1。表示B2缓冲区初始为空闲状态。【例9】死锁的四个必要条件中,无法破坏的是( )。A.互斥条件 B.不可抢占条件C.占有且申请条件 D.循环等待条件答案A分析互斥条件、不可抢占条件、占有且申请条件和循环等待条件是死锁发生时的4个必要条件,我们知道,只要破坏这4个必要条件中的任意一个条件,死锁就不会发生。打破互斥条件,就是允许进程同时访问某些资源。但是,有的资源是不允许被同时访问的,如打印机等,这是由资源本身的属性所决定的,因此这种方法并无实用价值。而其他三个条件是完全可以破坏的。2.3练习题一、选择题(选择一个正确答案的代码填入括号中).顺序程序和并发程序的执行相比,( )。A.基本相同 B.有点不同
C.并发程序执行总体上执行时间快D.顺序程序执行总体上执行时间快.在单一处理机上,将执行时间有重叠的几个程序称为( )。B.多道程序D.B.多道程序D.并行程序C.并发程序.在单CPU的系统中,若干程序的并发执行是由( )实现的。A.用户C.A.用户C.进程D.编译程序.进程与程序之间有密切联系,但又是不同的概念。二者的一个本质区别是( )。A.程序是静态概念,进程是动态概念B.程序是动态概念,进程是静态概念C.程序保存在文件中,进程存放在内存中D.程序顺序执行,进程并发执行TOC\o"1-5"\h\z.在操作系统中,进程的最基本的特征是( )。A.动态性和并发性 B.顺序性和可再现性C.与程序的对应性 D.执行过程的封闭性.多个进程的实体能存在于同一内存中,在一段时间内都得到运行。这种性质称作进程的( )。A.动态性 B.并发性C.调度性 D.异步性.进程是程序的执行过程,可以处于不同的状态。这种性质称作进程的( )。A.动态性 B.并发性C.调度性 D.异步性.在下列特性中,不是进程的特性的是( )。A.异步性 B.调度性C.操作性 D.动态性.某进程由于需要从磁盘上读入数据而处于阻塞状态。当系统完成了所需的读盘操作后,此时该进程的状态将( )。A.从就绪变为运行 B.从运行变为就绪C.从运行变为阻塞 D.从阻塞变为就绪.一个进程被唤醒意味着()。A.该进程重新占有了CPU B.进程状态变为就绪C.它的优先权变为最大 D.其PCB移至就绪队列的队首.在单处理机系统中,处于运行状态的进程( )。A.只有一个 B.可以有多个C.不能被挂起 D.必须在执行完后才能被撤下.已经获得除( )以外的所有运行所需资源的进程处于就绪状态。A.存储器 8.打印机 C.CPU D.磁盘空间.进程从运行状态变为阻塞状态的原因是( )。人.输入或输出事件发生 B.时间片到口输入或输出事件完成 D.某个进程被唤醒.为了描述进程的动态变化过程,采用了一个与进程相联系的( ),根据它而感知进程的存在。
B.进程优先数D.B.进程优先数D.进程起始地址)。B.所运行的程序和数据D.进程控制块)表现出来的。B.数据D.进程控制块B.同步与互斥0.信息传递与信息缓冲C.进程控制块.进程在系统中存在的唯一标志是(A.所运行的程序C.进程队列.进程的动态、并发等特征是利用(A.程序C.程序和数据.进程间的基本关系为( )。A.相互独立与相互制约C.并行执行与资源共享.在一段时间内,只允许一个进程访问的资源称为( )。8.临界区0.8.临界区0.共享区.操作系统中有一组常称为特殊系统调用的程序,其操作具有不可分割性,在操作系统中称为()。A.初始化程序 B.原语C.子程序 D.控制模块( )。B.只能实现进程的同步D.可完成进程调度则信号量S( )。B.只能实现进程的同步D.可完成进程调度则信号量S的值应( )。C.等于0D.小于0A.只能实现进程的互斥C.可实现进程的互斥和同步.如果进程Pa对信号量S执行P操作,A.加1 B.减1.如果信号量S的值是0,此时进程A执行P(S)操作,那么,进程人会()。A.继续运行8.进入阻塞态,让出CPU口进入就绪态,让出CPUD.继续运行,并唤醒S队列头上的等待进程.在操作系统中,对信号量S的P操作原语的定义中,使进程进入相应阻塞队列等待的条件是()。TOC\o"1-5"\h\zA.S>0 B.S=0 C.S<0 D.SM.信号量S的初值为8,在S上执行了10次P操作,6次V操作后,S的值为( )。A.10 B.8 C.6 D.4.若P、V操作的信号量S初值为2,当前值为—1,则表示有( )个等待进程。A.0 B.l C.2 D.3.在进程通信中,使用信箱方式交换信息的是()。A.低级进程通信 B.高级进程通信口共享内存方式 D.管道文件方式.系统出现死锁的原因是( )。A.计算机系统发生了重大故障B.有多个封锁的进程同时存在C.若干进程因竞争资源而无休止地循环等待着,而且都不释放已占有的资源D.资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数TOC\o"1-5"\h\z28.两个进程争夺同一个资源( )。A.一定死锁 B.不一定死锁C.不会死锁 D.以上说法都不对二、判断题(正确的划J,错误的划X。).简单地说,进程是程序的执行过程。因而,进程和程序是一一对应的。( ).进程和程序是两个截然不同的概念。( ).程序在运行时需要很多系统资源,如内存、文件、设备等,因此操作系统以程序为单位分配系统资源。( ).进程控制块(PCB)是专为用户进程设置的私有数据结构,每个进程仅有一个PCB。( ).进程执行的相对速度不能由进程自己来控制。( ).进程之间的互斥,主要源于进程之间的资源竞争,从而实现多个相关进程在执行次序上的协调。( ).信号量机制是一种有效的实现进程同步与互斥的工具。信号量只能由P、V操作来改变。( ).V操作是对信号量执行加1操作,意味着释放一个单位资源,如果加1后信号量的值小于等于零,则从等待队列中唤醒一个进程,现进程变为阻塞状态,否则现进程继续进行。( ).利用信号量的P,V操作,进程之间可以交换大量信息。( ).系统产生死锁的根本原因是资源有限且操作不当。因此,当系统提供的资源少于并发进程的需求时,系统就产生死锁。( )。参考答案:一、CCCAABDCDBACACDDBCBCBBCDBBCB二、2,5,7是正确的。1.(X)。进程和程序不是一一对应的。(X)。操作系统以进程为单位分配系统资源。(X)。进程控制块(PCB)是为系统中各个进程设置的私有数据结构。第3章处理机调度辅导与自测3.1本章知识点调度是操作系统的基本功能,几乎所有的计算机资源在使用之前都要经过调度。CPU作为计算机最主要的资源,处理机调度的目的就是分配CPU。CPU是操作系统中最核心的调度,其调度策略决定了操作系统的类型,其调度算法优劣直接影响整个系统的性能。所以,调度问题是操作系统设计的一个中心问题。本章的主要知识点为:(1)调度级别一般来说,作业从进入系统到最后完成,可能要经历三级调度:高级调度、中级调度和低级调度,这是按调度层次进行分类的。其中,高级调度又称为作业调度,低级调度又称为进程调度。作业调度是在输入的一批作业中选择有权竞争CPU的作业。资源的分配策略(特别是内存管理)对作业调度有很大影响。为了使内存中同时存放的进程数目不至于太多,有时就需要把某些进程从内存中移到外存上,以减少多道程序的数目,为此设立了中级调度。进程调度是从就绪进程队列中选择一个进程,并把CPU分配给它。进程调度是这三级调度中是必不可少的。这三级调度中,要重点理解作业调度和进程调度形成的两级调度模型,如下图所示。通过理解这个图,理解作业的4种状态:提交、后备、执行和完成,作业调度的功能,进程调度的功能,进程调度的时机,以及这两级调度如何协调工作完成了处理机调度。(2)常用调度算法针对不同的系统目标,会采取不同的调度策略。确定调度策略是件复杂的工作,往往要兼顾多种因素的影响。CPU利用率、吞吐量、周转时间、就绪等待时间和响应时间等是通常评价系统性能时都要考虑的几个指标。教材中主要介绍了3种调度算法,分别是先来先服务法、时间片轮转法和优先级法。先来先服务法(FCFS)是最简单的调度算法,它的实现思想就是“排队买票”的办法。按作业(或进程)到来的先后次序进行调度,即先来的先得到执行。时间片轮转法(RR)的设计实现思想是系统把所有就绪进程按先入先出的原则排成一个队列。每当执行进程调度时,进程调度程序总是选出就绪队列的队首进程,让它在CPU上运行一个时间片的时间。当进程用完分给它的时间片后,调度程序便停止该进程的运行,并把它放入就绪队列的末尾;然后,把CPU分给就绪队列的队首进程。轮转法适用于分时系统。其主要问题是时间片如何选择:时间片太长了,就成为FCFS调度;时间片太短了,频繁调度,开销太大。优先级调度算法的实现思想:是从就绪队列中选出优先级最高的进程,把CPU分给它使用。又分为非抢占式优先级法和抢占式优先级法。前者是:当前占用CPU的进程一直运行下去,直到完成任务或者因等待某事件而主动让出CPU时,系统才让另一个优先级高的进程占用CPU。后者是:当前进程在运行过程中,一旦有另一个优先级更高的进程出现在就绪队列中,进程调度程序就停止当前进程的运行,强行将CPU分给那个进程。其它常用的调度算法还有:短作业优先法、最短剩余时间优先法、多级队列法、多级反馈队列法。(3)中断处理并发是现代计算机系统的重要特性,它允许多个进程同时在系统中活动。而实施并发的基础是由硬件和软件结合而成的中断机制。中断是现代计算机系统中的重要概念之一,它是指CPU对系统发生的某个事件做出的处理过程。按功能划分,中断一般分为I/O中断、机器故障中断、外部中断、程序性中断、访管中断。在中断响应和处理过程中,硬件对中断请求做出响应:中止当前程序的执行,保存断点信息,转到相应的处理程序。软件对中断进行相应的处理:保存现场,分析原因,处理中断,中断返回。各中断处理程序是操作系统的重要组成部分。对中断的处理是在核心态下进行的。Linux系统提供给用户的最重要的系统程序是shell命令语言解释程序。其基本功能是解释并执行用户输入的各种命令,实现用户与1也口乂核心的接口。shell解释程序的工作过程基本上是读入命令行、分析命令行和构成命令树,创建子进程来执行命令树等步骤。3.2典型例题解析【例1】为了使系统中各部分资源得到均衡使用,就必须选择对资源需求不同的作业进行合理搭配,这项工作是由( )完成的。A.作业调度B.中级调度C.进程调度 D.内存调度答案A分析首先,要了解操作系统处理机调度的级别,即作业从进入系统到最后完成,至少要经历两级调度:高级调度和低级调度。为了使内存中同时存放的进程数目不至于太多,有时需要把某些进程从内存中移到外存上,以减少多道程序的数目,为此设立了中级调度。各个级别调度的含义,所解决的问题,即功能是什么。只有清晰地掌握了这些基本概念,才能做好选择。本题说的是作业的合理搭配以达到系统资源的均衡利用,显然是作业调度的工作。而中级调度解决的是内存分配问题,进程调度解决的是哪一个就绪进程占有CPU的问题。因此答案选A。【例2】作业调度程序从处于( )状态的队列中选取适当的作业调入主存运行。A.执行B.提交C.完成D.后备答案D分析解答此题需要了解作业的状态以及转换。一个作业从进入系统到运行结束要经历四种状态:提交状态、后备状态、执行状态和完成状态。(1)提交状态:用户的一个作业提交给系统时所处的状态,如用户通过键盘向机器输入作业。处于提交状态的作业,其信息正在进入系统。(2)后备状态:用户作业经输入设备(如读卡机)输入进外存(磁盘)中存放,等待进入内存时所处的状态。此时,系统将为该作业建立一个作业控制块JCB,并把作业插入到后备作业队列中等待调度运行。(3)执行状态:作业调度程序按照一定的作业调度算法从后备作业队列中选中一个作业,为它分配必要的资源,建立一组相应的进程后,这个作业就由后备状态转变为执行状态。需要指出的是,处于执行状态的作业在系统中并不一定真正占有处理机,作业能否真正在处理机上运行由进程调度来控制。(4)完成状态:作业完成了处理任务,输出结果形成报告,系统将作业控制块JCB从当前作业队列中删除,并回收分配给作业的全部资源,准备退出系统时的作业状态。四种作业状态的转换见下图:参考上图,有这样一个判断题:作业调度程序选中一个作业后,与该作业相关的进程即占有CPU运行。答案是错误的,因为执行状态的作业能否真正在CPU上运行由进程调度来控制,这时候的进程至少有三种基本状态,不能保证一定是占有CPU的运行状态。【例3】在批处理系统中,周转时间是( )。A.作业运行时间 B.作业等待时间和运行时间之和C.作业的相对等待时间 D.作业被调度进入主存到运行完毕的时间答案B分析作业的周转时间=作业完成时间一作业提交时间。周转时间是用于作业等待进入内存、进程在就绪队列中等待、进程在CPU上运行和完成I/O操作所花费时间的总和。因此,周转时间是作业等待时间和运行时间之和。答案D是不对的,因为作业提交后进入作业后备状态,此时作业是在外存,这个时间也要计入作业的周转时间。【例4】在作业调度中,若采用优先级调度算法,为了尽可能使CPU和外部设备并行工作,有如下三个作业:J1以计算为主,J2以输入输出为主,J3计算和输入输出兼顾,则它们的优先级从高到低的排列顺序是()。A.J1,J2,J3 B.J2,J3,J1C.J3,J2,J1 D.J2,J1,J3答案C分析本试题将作业分为:I/O繁忙的作业、CPU繁忙的作业、I/O与CPU均衡的作业三种类型,由系统或操作员根据作业类型指定优先级。为了尽可能使CPU和外部设备并行工作,那么I/O繁忙的作业和CPU繁忙的作业都不能指定为最高的优先级,因为这两类作业都无法均衡地使用资源(CPU或者I/O设备)。对于这两类作业,应指定I/O繁忙的作业优先级高于CPU繁忙的作业,这样做可以提高CPU的利用率,增加系统的吞吐量。因此,这三类作业优先级从高到低的排列顺序是:I/O与CPU均衡的作业、I/O繁忙的作业、CPU繁忙的作业。【例5】下表给出作业1,2,3的提交时间和运行时间。采用先来先服务调度算法和短作业优先调度算法,试问作业调度次序和平均周转时间各为多少?(时间单位:小时,以十进制进行计算。)作业号提交时间运行时间10.08.020.44.031.01.0分析解此题关键是要清楚系统中各道作业随时间的推进情况。我们用一个作业执行时间图来表示作业的执行情况,帮助我们理解此题。采用先来先服务调度策略,其作业执行时间图如下:作业■作业3 !作业2中;作业1」!00.41.0 8.0 12.013.0 时间作业提交时间 各作业陆续完成时间采用短作业优先调度策略,其作业执行时间图如下:作业作业3作业2.作业1J00.41.0 8.09.0 13.0 时间作业提交时间 各作业陆续完成时间另外,作业i的周转时间%=作业完成时间一作业提交时间系统中n个作业的平均周转时间T=(»T)x1,其中Ti为作业i的周转时ini=1间。解:采用先来先服务调度策略,则调度次序为1、2、3。作业号提交时间运行时间开始时间完成时间周转时间1 0.08.00.0 8.08.02 0.44.08.0 12.011.63 1.01.012.013.012.0平均周转时间T=(8+11.6+12)/3=10.53采用短作业优先调度策略,则调度次序为1、3、2。作业号提交时间运行时间开始时间完成时间 周转时间1 0.08.00.08.08.03 1.01.08.09.08.02 0.44.09.013.012.6平均周转时间T=(8+8+12.6)/3=9.53【例6】今有三个批处理作业。第一个作业10:00到达,需要执行2小时;第二个作业在10:10到达,需要执行1小时;第三个作业在10:25到达,需要执行25分钟。分别采取如下两种作业调度算法:调度算法1:作业号到达时间开始执行时间执行结束时间110:0010:0012:00210:1012:0013:00310:2513:0013:25调度算法2:作业号到达时间开始执行时间执行结束时间110:0011:5013:50210:1010:5011:50310:2510:2510;50(1)计算各调度算法下的作业平均周转时间。(2)调度算法1是什么作业调度算法?分析作业的周转时间=作业完成时间一作业提交时间。以调度算法1的作业2为例,其周转时间二作业完成时间13:00一作业提交时间10:10,得到结果为2小时50分钟,转换为小时为2.83小时。转换的目的是为了方便计算平均周转时间。解:(1)采用调度算法1时:作业1的周转时间为2小时;作业2的周转时间为2.83小时;作业3的周转时间为3小时;平均周转时间为:(2+2.83+3)/3=2.61小时。采用调度算法2时:作业1的周转时间为3.83小时;作业2的周转时间为1.67小时;作业3的周转时间为0.42小时;平均周转时间为:(3.83+1.67+0.42)/3=1.97小时。(2)调度算法1是按照作业到达的先后次序执行的,所以它是先来先服务调度算法。【例7】一个进程在执行过程中可以被中断事件打断,当相应的中断处理完成后,就一定恢复该进程被中断时的现场,使它继续执行。( )答案(X)分析中断是指CPU对系统发生的某个事件做出的一种反应,它使CPU暂停正在执行的程序,保留现场后自动执行相应的处理程序,处理该事件后,如被中断进程的优先级最高,则返回断点继续执行被“打断”的程序。本题开头的叙述是正确的,即“一个进程在执行过程中可以被中断事件打断”,但是后面说“一定恢复该进程被中断时的现场”,以及“继续执行”就不正确了,因此,系统中进程的并发执行情况非常复杂,中断后的进程能否继续执行,要看那时的具体情况,可能会继续执行,也可能处于就绪队列中无法立即继续执行。【例8】在UNIX/Linux系统中,执行到trap指令时,CPU的状态就从核心态变为用户态。( )答案(X)分析为了对操作系统程序(特别是其内核部分)进行保护,防止受到用户程序的损坏,系统提供了不同的处理机执行状态,通常分为核心态和用户态两种。当操作系统程序执行时,处理机处于核心态,它有较高的特权,可以执行一切指令(包括一般用户程序中不能使用的特权指令)。用户程序在用户态下执行。它的权限较低,只能执行指令集中的非特权指令。用户程序要想得到操作系统的服务,必须使用系统调用。在UNIX/Linux系统中,系统调用像C语言的普通函数调用那样出现在程序中。但是,一般的函数调用序列并不能把进程的运行模式从用户态变为核心态,而系统调用却可以做到这一点,即从用户空间转入系统空间。trap指令是实现系统调用的汇编代码,trap指令有这样一种性质:当CPU执行到trap指令时,CPU的状态就从用户态变为核心态。本题正好说反了,因此是错误的。【例9】UNIX/Linux系统中的shell是负责()的模块。A.解释并执行来自终端的命令 B.解释并执行来自终端的内部命令C.解释并执行来自终端的外部命令 D.进行系统调用答案A分析shell命令语言解释程序是UNIX/Linux系统提供给用户的最重要的系统程序。它不属于内核部分,而是在核心之外以用户态方式运行。其基本功能是解释并执行用户输入的各种命令,实现用户与Linux核心的接口。shell命令分为内部命令和外部命令两种,内部命令是最简单最常用的命令,在shell启动时进入内存,Linux外部命令是一个独立的可执行程序。3.3练习题一、选择题(选择一个正确答案的代码填入括号中).作业生存期共经历4个状态,它们是提交、后备、()和完成。A.等待 B.就绪 C.开始 D.执行.作业调度是( )。A.从输入井中选取作业进入主存B.从读卡机选取作业进入输入井C.从主存中选取作业进程占有CPUD.从等待设备的队列中选取一个作业进程.在操作系统中,JCB是指( )。A.文件控制块 B.进程控制块C.作业控制块 D.程序控制块.作业调度选择一个作业装入主存后,该作业能否占用处理器必须由( )来决定。A.设备管理 B.作业控制C.进程调度 D.驱动调度.进程调度根据一定的调度算法,从( )队列中挑选出合适的进程。A.阻塞 B.就绪 C.运行 D.等待.在操作系统中,作业处于( )时,已处于进程的管理之下。A.后备状态 B.阻塞状态C.执行状态D.C.执行状态.作业调度的关键在于( )。A.选择恰当的进程管理程序 B.选择恰当的作业调度算法C.用户作业准备充分 D.有一个较好的操作环境.从系统的角度出发,希望批处理控制方式下进入输入井的作业( )尽可能小。A.等待装入主存时间 B.周转时间C.执行时间 D.平均周转时间.设某作业进入输入井的时间为S,开始运行的时间为R,得到计算结果的时间为E,则该作业的周转时间1为( )。A.T二E—S B.T=E—(S+R)C.T=(S+R)+E D.T=E—R10.现有3个作业同时到达,每个作业的计算时间都是1小时,它们在一台CPU上按单道方式运行,则平均周转时间为( )。A.1小时 B.2小时C.3小时 D.6小时.按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度,这是指( )调度算法。A.先来先服务法 B.短作业优先法C.时间片轮转法 D.优先级法.为了使计算机在运行过程中能及时处理内部和外部发生的各种突发性事件,现代操作系统采用了( )机制。A.查询 B.中断 C.调度 D.进程.在操作系统中,引起中断的事件称为()。A.中断源 B.中断请求C.断点 D.系统调用.当硬件中断装置发现有事件发生,就会中断正在占用CPU的程序执行,让操作系统的()占用CPU。A.系统调用程序 B.中断处理程序C.作业管理程序 D.文件管理程序TOC\o"1-5"\h\z.下列中断类型中,属于自愿性中断事件的是( )。A.硬件故障中断 B.程序中断C.访管中断 D.外部中断.下列中断中,可能要人工介入的中断是( )。A.程序中断 B.时钟中断口输入输出中断 D.硬件故障中断.系统调用的目的是( )。A.请求系统服务 8.终止系统服务口申请系统资源 D.释放系统资源.用户要在程序一级获得系统帮助,必须通过()。A.进程调度 B.作业调度C.键盘命令 D.系统调用.系统调用是由操作系统提供的内部调用,它( )。A.直接通过键盘交互方式使用 B.只能通过用户程序间接使C.是命令接口中的命令 D.与系统的命令一样TOC\o"1-5"\h\z.CPU状态分为核心态和用户态,从用户态转换到核心态的途径是( )。A.运行进程修改程序状态字 B.中断屏蔽C.系统调用 D.进程调度程序二、判断题(正确的划J,错误的划X。).处理机调度可分为三级:高级、中级和低级。在所有的系统中,都必须具备这三级调度。( ).作业调度选中一个作业后,与该作业相关的进程即占有CPU运行。( ).吞吐量是指单位时间内CPU完成作业的数量。( ).确定作业调度算法时应主要系统资源的均衡使用,使I/O繁忙作业和CPU繁忙作业搭配运行。( ).平均周转时间和周转时间与选用的调度算法有关。( ).通常,为了提高效率,赋予需要大量计算的作业较高优先级,赋予需要大量输入/输出的作业较低的优先级。( ).优先级作业调度算法是指为系统中的每一个作业确定一个优先级,进行作业调度时总是优先选择优先级高的作业进入主存运行。( ).计算机对中断的处理是在用户态下进行的。( ).中断处理一般分为中断响应和中断处理两个步骤,前者由软件实施,后者由硬件实施。( ).系统调用的调用过程是通过用户程序,运行在用户态,而被调用的过程是运行在核心态下。( )参考答案:一、DACCBCBDABABABCDADBC二、3,4,5,7,10是正确的。(X)。处理机的三级调度中只有进程调度是必不可少的。(X)。作业调度选中的作业能否占有CPU由进程调度决定,不一定即可执行。6.(X)。正好说反了,应赋予需要大量计算的作业较低优先级,赋予需要大量输入/输出的作业较高的优先级。(X)。计算机对中断的处理是在核心态下进行的。(X)。中断响应由硬件实施,中断处理由软件实施。第4章存储管理辅导与自测本章知识点存储器是计算机系统中的关键资源,对内存如何处理在很大程度上将影响整个系统的性能。存储管理即对内存的管理,存储管理目前仍是人们研究操作系统的中心问题之一,以至操作系统的命名也往往取决于存储管理的策略。本章的主要知识点为:(1)本章的重要概念本章涉及到的概念比较多,主要有:内存、外存、逻辑地址/相对地址、物理地址/绝对地址、逻辑地址空间/地址空间、内存空间/物理空间/绝对空间、重定位、静态重定位、动态重定位、对换技术、碎片、紧缩、虚拟存储器、页面抖动。存储器作为计算机系统中最主要的组成部分,按照速度、容量和成本划分一个层次结构,分别是寄存器、高速缓存、内存、磁盘和磁带。用户程序必须装入到内存才能运行。进程的地址空间不同于内存的物理空间。经过重定位可以把逻辑地址转变为内存的物理地址。重定位分为静态和动态两种方式,现在的计算机系统中都采用动态重定位方法。对换技术可以利用外存来解决内存不足的问题。现在Linux系统中还采用这种技术。(2)分区管理技术分区分配是为支持多道程序运行而设计的一种最简单的存储管理方式,可分为固定分区法和动态分区法。固定分区就是内存中分区的个数固定不变,各个分区的大小也固定不变,但不同分区的大小可以不同。每个分区只可装入一个进程。动态分区是在进程要进入内存时才建立的,使其大小恰好适应进程的大小。动态分区法常用的分配策略有两种:最先适应算法(First-fit)和最佳适应算法(Best-fit),前者空闲表按位置排列,后者
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 养鱼技巧与知识培训课件
- 2025年度海洋动物运输与供应链管理合同3篇
- 绿森钢化中空玻璃迁扩建项目可行性研究报告模板-立项拿地
- 全国清华版信息技术小学四年级下册新授课 第4课 独特景观-在幻灯片中插入文本框 说课稿
- Unit7 Grammar Focus 说课稿 2024-2025学年人教版英语七年级上册
- 贵州省安顺市(2024年-2025年小学六年级语文)统编版竞赛题(下学期)试卷及答案
- 安徽省合肥市新站区2024-2025学年九年级上学期期末化学试卷(含答案)
- 二零二五年度周转材料租赁与施工现场安全生产合同3篇
- 陕西省商洛市(2024年-2025年小学六年级语文)部编版小升初真题(上学期)试卷及答案
- 贵州黔南经济学院《手绘表现技法景观》2023-2024学年第一学期期末试卷
- 事业单位公开招聘工作人员政审表
- GB/T 35199-2017土方机械轮胎式装载机技术条件
- GB/T 28591-2012风力等级
- 思博安根测仪热凝牙胶尖-说明书
- 信息学奥赛-计算机基础知识(完整版)资料
- 数字信号处理(课件)
- 出院小结模板
- HITACHI (日立)存储操作说明书
- (新版教材)苏教版二年级下册科学全册教案(教学设计)
- 61850基础技术介绍0001
- 电镜基本知识培训
评论
0/150
提交评论