《自考-操作系统-复习资料大全1140.pdf》由会员分享,可在线阅读,更多相关《自考-操作系统-复习资料大全1140.pdf(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-1-1-第一章复习题答案 p13 1、计算机系统由哪些局部组成?2、什么是计算机的操作系统?答:操作系统是计算机的一种系统软件,由它统一管理计算机系统的资源和控制程序的执行。操作系统既是一种资源管理程序,又是一种其他程序执行的控制程序,其目的是提供一个供其它程序执行的良好环境。3、操作系统管理计算机系统的哪些资源?答:操作系统管理的计算机系统资源包括两大类:硬件资源和软件资源。计算机系统的硬件资源主要包括 CPU、主存储器、辅助存储器(磁带、磁盘等)以及各种输入输出设备(键盘、显示器、打印机等);软件资源包括各种程序和数据。4、操作系统怎样为用户提供良好的运行环境?答:操作系统是一种系统程序
2、,其目的是提供一个供其他程序执行的良好环境。首先操作系统要使得计算机系统使用方便:操作系统为用户提供方便的使用接口,用户按需要输入命令或从提供的 菜单中选择命令,操作系统按命令去控制程序的执行;用户也可以请求操作系统的功能模块为其效劳,而不必了解硬件的特性。其次操作系统要使得计算机系统能高效地工作:操作系统扩充硬件的功能,而硬件的功能发挥的更好;操作系统使拥护合理共享资源,防止各用户间的干扰;操作系统以文件形式管理软件资源,保证信息的平安和快速存取。5、操作系统怎样提高系统的效率?答:为提高系统的效率:操作系统扩充硬件的功能,使硬件的功能发挥得更好;操作系统使用户合理共享资源,防止各用户间的相
3、互干扰;操作系统以文件形式管理软件资源,保证信息平安和快速存取。6、批处理操作系统怎样实现计算机操作的自动化?答:用户把准备好的一批作业信息,包括程序、数据、作业控制说明书通过相应的输入设备传送到大容量的磁盘上等待处理。操作系统中的作业调度程序按照某种原那么从磁盘上选择假设干作业装入主存储器,主存储器中的这些作业可以占用中央处理机运行。当某个作业执行结束时,启动打印机,输出计算结果。然后又可以从磁盘上选择作业装入主存储器,让其运行。这样,在作业控制说明书的控制下,无需认为干预,批处理操作系统实现了计算机操作的自动化。7、分时操作系统的主要特点是什么?答:分时操作系统支持多道程序同时执行,实现了
4、人机交互对话,主要有以下特点:同时性 允许多个终端用户同时使用一个计算机系统;独立性 用户在各自的终端上请求系统效劳,彼此独立,互不干扰;及时性 分时系统对用户的请求能在较短的时间内给出应答,使用户觉得系统即时响应了对他的请求而感到满意。交互性 采用了人-机对话的工作,用户在终端上可以直接输入、调试和运行自己的程序,能及时修改程序中的错误且直接获得结果。8、什么是“前台作业?什么是“后台作业?为什么对“前台作业要及时响应?答:批处理操作系统实现自动控制无需人为干预,分时操作系统实现了人机交互对话,这两种操作系统各具有各自的优点。为了充分发挥批处理系统和分时系统的优点,一个计算机系统上配置的操作
5、系统往往具有批处理能力,有提供分时交互的能力。这样,用户可以先在分时系统的控制下,以交互式输入、调试和修改自己的程序;然后,可以把调试好的程序转交给批处理系统自动-2-2-控制其执行而产生结果。这些由分时系统控制的作业称为前台作业,而那些由批处理系统控制的作业称为后台作业。在这样的系统中,对前台作业应该及时响应,使用户满意;对后台作业可以按一定的原那么进行组合,以提高系统的效率。9、实时操作系统的主要特征是什么?答:能使计算机系统接受到外部信号后及时进行处理,并且在严格的规定时间内处理结束,再给出反应信号的操作系统统称实时操作系统,简称实时系统。其特征是:(1)及时响应,快速处理 实时系统的时
6、间要求是强制性严格规定的,仅当在规定的时间内返回一个正确的结果时,才能认为系统的功能是正确的。(2)高可靠性和平安性 不强求系统资源的利用率 10、解释嵌入式计算机系统和嵌入式操作系统。答:计算机硬件不再以物理上独立的装置形式出现,而是大局部或全部都隐藏和嵌入到各种应用系统中。我们把这样的系统称为嵌入式系统。嵌入式系统是指运行在嵌入式系统中对各种部件、装置等资源进行统一协调、处理和控制的系统软件。11、嵌入式操作系统的主要特点是什么?答:微型化和实时性。12、网络操作系统和分布式操作系统都是配置在计算机网络上的操作系统,它们之间有什么本质上的不同?答:分布式操作系统与网络操作系统本质的不同之处
7、在于,分布式操作系统的网络中的多台计算机没有主次之分;分布式操作系统能使系统中假设干台计算机相互协作完成一个共同的任务。把一个计算问题分成假设干个可并行执行的子运算,让每个子计算在系统中的各计算机上并行执行,充分利用各计算机的优势。这样,一个程序就分布在几台计算机并行执行,相互协作得到结果。13、从资源管理的角度来看,操作系统的根本功能可分成哪些局部?答:从资源管理的角度来看,操作系统的根本功能可分为五大局部 1处理器管理 为用户地分处理器时间,尽可能地使处理器处于忙状态,提高处理器的工作效率。2存储管理 实现对主存储器的管理,为用户分配主存空间,保护主存中的程序和数据不被破坏,提高主存空间的
8、利用率。3文件管理 面向用户实现按文件名存取文件,管理用户信息的存储、检索、共享和保护,合理地分配和使用文件的存储空间。4设备管理 负责管理各种外围设备,包括设备的分配、启动以及 SPOOL 的实现技术。第二章复习题答案 p33 1、什么情况下操作系统程序才能占用中央处理器?答:一个计算机系统,尤其是采用多道程序设计的计算机系统,不仅有操作系统和其他的系统软件,而且还有假设干应用程序。这些程序只有占用中央处理执行时才能履行自己职责。而中央处理器在任何时刻最多只能被一个程序占用。计算机开启时,自动执行引导程序。引导程序首先进行系统初始化的工作,然后把操作系统中的核心装入主存储器。此后操作系统便等
9、待用户请求事件的发生,当有某个事件出现,硬件便能识别并能发生一个中断,从而通知操作系统,由它的效劳程序去处理,处理结束后,又等待下一个事件发生。中断是计算机系统结构一个重要的组成局部。中断装置由一些特定的存放器的控制线路组成,CPU 每执行完一条指令,中断装置都要判断是否有事件发生。如果没有事件发生,CPU 继续执行;假设有事件发生,中断装置中断原先占用 CPU 的程序的执行,让操作系统的处理事件效劳程序占用 CPU 对事件进行处理,处理完后,再让被中断的程序继续占用 CPU 执行下去。2、允许多道程序同时执行的硬件根底是什么?答:中断和通道技术的出现是根底。3、操作系统怎样让多个程序同时执行
10、?答:一个计算机系统,尤其是采用多道程序设计的计算机系统,不仅有操作系统和其他的系统软件,而且还有假设干应用程序。这些程序只有占用中央处理执行时才能履行自己职责。而中央处理器在任何时刻最多只能被一个程序占用。中断装置在判别到有某个事件发生时,就会触发一个中断让操作系统去占用处理器。操作系统对事件处理结束后,又主动让出处理器,并根据对事件处理情况从那些具备占用处理器条件的程序中选择一个,让它占用处理器,直到系统再一次发生事件而-3-3-被中断。操作系统总是按照预定的策略去选择可占用处理器的程序,系统中假设干程序可以交替地占用处理器,形成多个程序同时执行的状态。4、为什么要把“启动 I/O等指令定
11、义为特权指令?答:一个程序可以在其它程序等待外围设备传送信息时占用处理器执行,在执行中如果它也使用启动指令去启动一台正在工作的外围设备,那么就会造成冲突。为保护输入输出的完整性,把“启动 I/O等的一类可能影响系统平安的指令定义为特权指令。特权指令只允许操作系统使用,用户程序不能使用特权指令。用户程序假设要启动 I/O,必须请求操作系统代为启动,这种方式不但可以保证平安地使用外围设备,正确地传送信息,而且可减少用户为启动设备而必须了解外围设备特性以及启动等工作,大大方便了用户。5、怎样限制用户程序中使用特权指令?1007 考题 33 答:为了保证正确的操作,应该限制用户程序使用特权指令,为此,
12、中央处理器设置了两种工作方式:管态和目态。在管态下,中央处理器可执行包含特权指令在内的一切指令;在目态下,中央处理器不准执行特权指令。操作系统在管态下工作,用户程序在目态下工作。如果中央处理器在目态下取到了特权指令,中央处理器就拒绝执行该指令,并产生“非法操作事件经中断装置和操作系统通知用户修改。6、操作系统与硬件如何配合来实现存储保护的?答:主存储器往往同时装入了操作系统程序和假设干用户程序,为了保证正确操作,必须对主存储器区域进行存储保护。存储保护随着主存储器管理方式的不同,实现保护的方法也有所不同,一般是操作系统与硬件配合来实现存储保护。在连续分配的存储系统中,硬件中设置了两个存放器来限
13、定用户程序执行时可以访问的空间范围。这两个存放器是基址存放器和限长存放器,用来限定用户程序执行时可以访问的主存空间范围。程序执行时,系统对每一个访问内存的地址进行核对:基址存放器值访问地址基址存放器值+限长存放器值成立,那么允许访问;否那么,不允许访问。这样就保护了该区域以外的存储信息不受到破坏,一旦程序执行中出错也不会涉及其他程序。7、为什么答:操作系统是一种程序量大且接口复杂的系统软件。设计一个操作系统要投入大量的人力和花费较长的时间。因而,如何保证操作系统能正确,高效地工作至关重要。由于程序的结构是影响程序质量的内在因素,因此,有必要对操作系统的结构进行研究。8、应从哪些方面考虑操作系统
14、的结构设计?0904 考题 33 答:操作系统的结构设计应追求以下目标:正确性:一个结构良好的操作系统不仅能保证正确性而且易于验证其正确性;高效性:核心程序是影响计算机系统效率的的关键所在应遵循少而精的原那么,使处理既有效又灵活。可维护性:操作系统要容易维护 可移植性:在结构设计时,尽量减少与硬件直接有关的程序量并将其独立封装 9、操作系统采用层次结构有什么优点?答:各种设计方法总的目标都要保证操作系统工作的可靠性。层次结构法的最大特点是把整体问题局部化,采用层次结构不仅结构清晰,而且便于调试,有利于功能的增加,删减和修改。层次结构的主要优点是有利于系统的设计和调试,正确性容易得到保证,也提高
15、了可维护性和可移植性。10、用户怎样使用操作系统提供的接口?答:用户是通过操作系统来使用计算机系统的,操作系统为用户提供两种类型的使用接口:操作员接口:用户可以用作业控制语言写出控制作业执行步骤的作业说明书,也可以从键盘上输入操作控制命令或从命令菜单中选择命令指出作业的执行步骤。程序员接口:操作系统提供了许多不同功能的子程序-系统功能调用,用户可以在程序中调用这些子程序。11、操作系统为什么要提供系统调用?答:在用户编写的源程序一级,用户使用程序设计语言描述算题任务的逻辑要求,有一些要求的实现只有通过操作系统的功能程序才能完成。操作系统编制了许多不同功能的子程序,用户程序在执行中可以调用这些子
16、程序。由操作系统提供的这些子程序称为系统功能调用程序,简称系统调用。系统调用是操作系统提供应用户程序的效劳接口。12、UNIX 系统的层次结构有什么特色?-4-4-答:从结构上看,UNIX 可以分成内核层和外壳层两局部。内核层是 UNIX 操作系统的核心,它实现存储管理、文件管理、设备管理、进程管理等功能并为外壳层提供系统调用。外壳层为用户提供各种操作命令UNIX 把它们称为 shell 命令和程序设计环境。外壳层由 shell 解释程序、支持程序设计的各种语言如 C、PASCAL 和 BASIC、编译环境和解释程序、实用程序和系统库等组成。UNIX 系统不允许外壳层程序直接访问和干扰内核程序
17、,因此,UNIX 系统提供两种程序运行环境,即用户态和核心态.UNIX 系统的层次结构具有良好的性能,主要包括:短小精悍、简洁有效、易移植、可扩充、开放性好等。13、UNIX 为用户提供怎样的使用接口?202104.33 答:UNIX 的操作员通过操作控制命令来启动外壳层的用户程序执行。UNIX 的程序员接口就是其内核提供的系统调用,它是内核为外壳的用户程序提供的效劳界面,也就是操作系统支持用户程序正常工作接口。系统调用是用户程序请求操作系统继其效劳的惟一形式,UNIX 规定用户程序调用“trap 指令请求系统效劳。14、什么是 UNIX 的 shell 文件shell 进程?请按自己的需要写
18、一个 shell 文件。答:为了方便用户,UNIX 系统允许用户使用 shell 命令语言编辑成一个文件来表示一组命令的执行顺序,用 shell 语言编辑成的文件称 shell 文件。例 P29 例题。第三章处理器管理 p79 1、什么是多道程序设计?202107A.35 答:让多个计算问题同时装入一个计算机系统的主存储器并行执行,这种设计技术称“多道程序设计,这种计算机系统称“多道程序设计系统 或简称“多道系统。2、多道程序设计怎样提高系统效率?答:多道程序设计利用了系统与外围设备的并行工作能力,从而提高工作效率。具体表现为:提高了处理器的利用率;充分利用外围设备资源:计算机系统配置多种外围
19、设备,采用多道程序设计并行工作时,可以将使用不同设备的程序搭配在一起同时装入主存储器,使得系统中各外围设备经常处于忙碌状态,系统资源被充分利用;发挥了处理器与外围设备以及外围设备之间的并行工作能力;从总体上说,采用多道程序设计技术后,可以有效地提高系统中资源的利用率,增加单位时间内的算题量,从而提高了吞吐率。3、多道程序设计一定能提高系统效率吗?答:不一定 答:多道程序设计对算题量和算题时间的影响。采用多道程序设计能改变系统资源的使用情况,提高系统效率。但是应注意以下两个问题:可能延长程序的执行时间;并行工作道数与系统效率不成正比。从外表上看,增加并行工作道数就可提高系统效率,但实际上并行工作
20、道数与系统效率是不成正比,因为并行的道数要根据系统配置的资源和用户对资源的要求而定:(1)主存储器的大小限制了可同时装入的程序数量;(2)外围设备的数量也是一个制约条件;(3)多个程序同时要求使用同一资源的情况也会经常发生。总之,多道程序设计能提高系统资源的使用效率,增加单位时间的算题量;但是对每个计算问题来说,从算题开始到全部完成所需要的时间可能延长,另外在确定并行工作道数时应综合系统的资源配置和用户对资源的要求。4、答:单道时处理器的利用率为:18+18/(60+60)=30%两道并行是处理器的利用率为:18+18/(72=50%利用率提高了50-30/30=66.7%5、操作系统中为什么
21、要引入“进程?202107.34-5-5-答:程序是具有特定功能的一组指令或语句的集合,它指出了处理器执行操作的步骤。在多道程序设计的系统中,可能有多个程序同时运行,而同一个程序也可能屡次并行执行,仅用程序的概念不能正确反映出程序执行时的活动规律和状态变化,为了从变化的角度动态研究程序的执行,就需要引入“进程的概念。进程是指一个程序在一个数据集合上的一次执行(三个“一)。程序是静止的,进程是动态的(执行),进程包括程序和程序处理的对象,进程能够得到程序处理的结果。6、可再入程序有什么特性?它有什么特性?答:可再入程序是指一个能够被多个用户同时调用的程序。(可以再次调入)。它的特性有两点:(1)
22、可再入程序必须是纯代码,在执行时自身不改变;(2)一个可再入程序要求调用者提供工作区,以保证程序以同样方式为各用户效劳。7、进程有哪些根本状态?它们的变化关系是怎样的?答:通常,根据进程执行过程中不同时刻的状态,可归纳为三种根本状态:等待态:等待某个事件的完成;就绪态:等待系统分配处理器以便运行;运行态:占有处理器正在运行。进程在执行中状态会不断地改变,每个进程在任何时刻总是处于上述三种根本状态的某一种根本状态.运行态等待态 往往是由于等待外设,等待主存等资源分配或等待人工干预而引起的。等待态就绪态 那么是等待的条件已满足,只需分配到处理器后就能运行。运行态就绪态 不是由于自身原因,而是由外界
23、原因使运行状态的进程让出处理器,这时候就变成就绪态。例如时间片用完,或有更高优先级的进程来抢占处理器等。就绪态运行态 系统按某种策略选中就绪队列中的一个进程占用处理器,此时就变成了运行态。8、阐述进程控制块的作用?答:进程控制块(Process Control Block,简称 PCB),是操作系统为进程分配的用于标志进程,记录各进程执行情况的。进程控制块是进程存在的标志,它记录了进程从创立到消亡动态变化的状况,进程队列实际也是进程控制块的链接。操作系统利用进程控制块对进程进行控制和管理。进程控制块的作用有:(1)记录进程的有关信息,以便操作系统的进程调度程序对进程进行调度。这些信息包括标志信
24、息、说明信息、现场信息和管理信息等;(2)标志进程的存在,进程控制块是进程存在的唯一标志 9、进程能否访问自己的进程控制块内容?进程控制块是系统为程序建立的用于标志进程,记录各进程执行情况的。进程本身不能访问或者修改自己的进程控制块的内容,但父进程可以访问或修改其子孙进程的进程控制块内容,以便对它的子孙进程进行必要的管理和控制。10、处理器为什么要区分“目态和“管态两种操作模式?答:硬件提供的指令系统中有一局部不允许用户程序直接使用,这些不允许用户程序使用的指令称特权指令,特权指令只允许操作系统进行调度、控制或启动外围设备的程序使用。为了防止错误地使用特权指令,处理器分为两种操作模式:目态-只
25、能执行特权指令以外的指令、管态-可执行指令系统中的一切指令。假设程序处于目态操作模式,一旦出现特权指令,处理器就能识别出程序非法使用指令,形成程序性中断事件,终止程序的执行。在计算机系统中往往把用户程序置于目态下运行,已保证计算机系统的平安可靠。11、中断装置发现中断事件后应做哪些事?答:中断装置发现了中断事件后,由操作系统的中断处理程序对中断事件进行处理,中断处理程序的主要工作有:1)保护被中断进程的现场信息 把中断时的通用存放器,控制存放器内容及旧PSW 保存到被中断进程的进程控制块中。2)分析中断原因 根据旧 PSW 的中断码可知发生该中断的具体原因。3)处理发生的中断事件 一般只做一些
26、简单处理,在多数情况下把具体的处理交给其他程序模块去做。12、说明中断屏蔽的作用?-6-6-答:中断优先级只是规定了中断装置响应同时出现的中断的次序,当中断装置响应了某个中断后中断处理程序在进行处理时,中断装置也可能去响应另一个中断事件。因此会出现优先级低的中断事件的处理打断优先级高的中断事件的处理,使得中断事件的处理顺序与响应顺序不一致,而且会形成多重嵌套处理,使多现场保护、程序返回等工作变的复杂。中断屏蔽技术就是为了解决上述问题而提出的,在一个中断处理没有结束之前不响应其他中断事件,或者只响应比当前级别高的中断事件。于是,当中断装置检查到有中断事件后,便去查看PSW 中中断屏蔽标志,如果没
27、有屏蔽就响应该中断;否那么,暂时不响应该中断,待屏蔽标志消除后再响应。13、为什么不能屏蔽自愿中断事件?答:自愿中断事件是正在运行程序所期待中的事件,它是正在运行程序为请求调用操作系统的某个功能效劳而执行一条“访管指令所引起的中断。当处理器执行到访管指令时就产生一个中断,因而进程自愿中断的断点是确定的。自愿中断不同于强迫性中断,强迫中断不是当前进程所期待的,而是由于外部请求或意外而被迫打断当前进程的。自愿中断是用户程序访问系统功能的手段,在进程中是确定的,因而不能屏蔽。14、在一个单处理器的多道程序设计系统中,现有两道作业同时执行,其中以运算为主,另一道以输入输出为主,你将怎样赋予作业进程占有
28、处理器的优先数?解释为什么?答:赋于输入输出作业以较高的优先权。确定作业的优先数一般从任务的紧迫性和系统效率等方面考虑。交互式作业进程的优先数大于批处理作业进程的优先数。15、假定就绪队列中的进程按优先数自大到小顺序排列,当即有进程要参加就绪队列时,应将它的优先数排入相应的位置,试就单向链接的方式写出实现进程入队的程序。解:这就是一个单向链表的插入操作,用类C 语言描述如下:16、解释处理器的两级调度。我们把磁盘上用来存放作业信息的专用区域称为输入井;把输入井中等待处理的作业称为后备作业。从输入井中选取后备作业装入主存的工作称为作业调度。作业调度选中了一个作业且把它装入主存储器时,就为该作业创
29、立了一个用户进程,初始状态为就绪态。我们把从就绪进程中选取一个进程,让它占用处理器的工作称为进程调度。17、什么叫作业调度?作业调度选择作业的必要条件是什么?答:作业调度是指按一定的策略从“输入井中选择资源能得到满足的作业装入主存储器,使作业能有时机占用处理器执行。作业调度选择作业的必要条件是系统中现有的尚未分配的资源能够满足该作业的资源要求。18、某系统采用不能移动已在主存储器中作业的可变分区方式管理主存储器,现有供用户使用的主存空间 100K,系统配有 4 台磁带机,有一批作业见下表:作业序号 进输入井时间 要求计算时间 需要主存容量 申请磁带机数 1 10:00 25 分钟 15K 2
30、台 2 10:20 30 分钟 60K 1 台 3 10:30 10 分钟 50K 3 台 4 10:35 20 分钟 10K 2 台 5 10:40 15 分钟 30K 2 台 该系统采用多道程序设计技术,对磁带机采用静态分配,忽略设备工作时间和系统进行调度所花的时间,请分别写出采用“先来先效劳调度算法和“计算时间最短者优先算法选中作业执行的次序以及它们的平均周转时间。解:先来先效劳法如下表:作业序号 进输入井时间 进入主存时间 开始计算时间 结束计算时间 周转时间 解释 1 10:00 10:00 10:00 10:25 25 此时输入井中只有一个作业且满足资源要求,因此被选中运行。pro
31、cedure Insert(Queue ReadyQue,Pointer P)/ReadyQue 是就绪队列指针,P 是要插入队列进程指针 /P 中的 priority 指示其进程的优先数 /P 中的 Next 指示其后继进程指针 Pointer P1=ReadyQue,P2=ReadyQue;/P1 指示比 P 优先数小的第一个进程指针 /P2 指示比 P 优先数大的第一个进程指针 while(P-prioritypriority&P1-Next)/查找要插入位置的前后结点 P2=P1;P1=P1-Next;/查到后将 P 插入到就绪队列中 P-Next=P1;P2-Next=P;/End
32、Procedure-7-7-2 10:20 10:20 10:25 10:55 35 作业 2 到达输入井,满足资源要求,装入主存,等到作业 1 运行完毕进入运行态。4 10:35 10:35 10:55 11:15 40 由于作业 3 要求主存空间无法满足,因此作业4 先行一步,运行期间作业 5 进入输入井,并满足资源要求,因此作业 5 进入主存就绪。5 10:40 10:55 11:15 11:30 50 作业 3 仍要等候,作业 5 可以运行。3 10:30 11:30 11:30 11:40 70 最后作业 3 装入主存并运行 平均周转时间为22+35+40+50+70/5=44 分钟
33、 按计算时间最短者优先算法如下表:作业序号 进输入井时间 进入主存时间 开始计算时间 结束计算时间 周转时间 解释 1 10:00 10:10 10:00 10:25 25 此时输入井中只有一个作业且满足资源要求,因此被选中运行。2 10:20 10:20 10:25 10:55 35 作业 2 到达输入井,满足资源要求,装入主存,等到作业 1 运行完毕进入运行。5 10:40 10:55 10:55 11:10 30 由于作业 3 要求主存空间无法满足,因此作业 4先行一步装入主存,当作业 2 让出处理器的同时,作业 5 满足资源要求进入主存就绪。根据算法作业 5 先进入处理器运行。4 10
34、:35 10:35 11:10 11:30 55 3 10:30 11:30 11:30 11:40 70 最后作业 3 装入主存并运行 平均周转时间:25+35+30+55+70/543 分钟 19、作业名 到达时间 估计时间(分钟)开始时间 完成时间 等待时间 A 8:30 130 B 8:50 15 C 9:20 70 答:采用计算时间短的作业优先算法如下:作业名 到达时间 估计时间(分钟)开始时间 完成时间 等待时间分钟 A 8:30 130 10:55 13:05 145 B 8:50 15 9:30 9:45 40 C 9:20 70 9:45 10:55 25 最高响应比优先调度
35、结果如下:作业名 到达时间 估计时间(分钟)开始时间 完成时间 等待时间 响应比 1 响应比 2 A 8:30 130 9:45 11:55 85 60/130 75/130 B 8:50 15 9:30 9:45 40 40/15 C 9:20 70 11:55 13:05 155 10/70 25/70 20、什么是进程调度?当进程调度选中一个进程后,怎样才能让它占用处理器?我们把一个进程让出处理器由另一个进程占用处理器的过程称为进程调度。答:当进程调度选中一个进程后,把选中进程的进程控制块中有关的现场信息,如通用存放器、控制存放器和程序状态字存放器的内容送入处理器相应的存放器中,处理器就
36、按该进程的要求工作,到达了进程占用处理器的目的。24、有 5 个进程 P1,P2,P3,P4,P5 它们同时依次进入就绪队列,它们的优先数和所需要的处理器时间如表 3-1 所示 进程 处理器时间 优先数 P1 10 3 P2 1 1 P3 2 3 P4 1 4 P5 5 2 忽略进行调度等所花费的时间,请答复以下问题 a、写出分别采用“先来先效劳和“非抢占式的优先数调度算法选中进程执行的顺序。b、分别计算出上述两种算法使进程在就绪队列中的等待时间以及两种算法下的平均等待时间。-8-8-解:a)采用先来先效劳法的执行顺序是 P1P2P3P4P5。这是由其进入的顺序所确定的。采用“非抢占式的优先数
37、调度算法时,各进程的执行顺序是 P1P4P3P5P2.b)如表所示:先来先效劳法:进程 等待时间 运行时间 P1 0 10 P2 10 1 P3 11 2 P4 13 1 P5 14 5 平均等待时间(0+10+11+13+14)/5=9.6 非抢占式的优先数调度算法:进程 等待时间 运行时间 P1 0 10 P4 10 1 P3 11 2 P5 13 5 P2 18 1 平均等待时间(0+10+11+13+18)/5=10.4 25、UNIX 进程由哪些局部组成?各起什么作用?答:在 UNIX 系统中进程由三局部组成:进程控制块、正文段和数据段。UNIX 系统为了节省进程控制块所占的主存空间
38、,把每个进程控制块分成两局部。一局部常驻内存,记录了进行进程调度时必须使用的一些主要信息,不管进程是否占有处理器运行,系统经常会对这局部的内容进行查询和处理。UNIX 系统把作为根本控制块,把它的数据结构称为 proc 结构。另一局部非常驻内存,当进程不占有处理器时,系统不会对这局部内容进行查询和处理,因此这局部内容可以存放在磁盘的对换区中,它随着用户程序和数据换进或换出主存。而正文段的功能那么是在多道程序设计系统中,不同的进程可能要调用相同的程序。供多个进程共享的程序称为进程的正文段。正文段是可再入的程序,它由不可被修改的程序和常数组成。进程执行程序时用到的数据构成数据段,如果进程执行的顺序
39、是非共享的,那么也构成数据段的一局部。UNIX 把进程的数据段又划分成三局部,用户栈区、用户数据区和系统工作区。26、UNIX 中创立一个进程要做哪些主要工作?答:UNIX 中一个进程使用系统调用 fork 来创立新进程,形成父子关系经。父进程与子进程可以并发执行。fork 生成一个新进程的工作由函数 newproc 完成的,它的工作过程如下:1、在进程表 proc中为子进程找一个空闲的表项,用来存放子进程的 proc 结构。2、为子进程分配一个惟一的标识号,UNIX 系统进程标识号的范围是 0-255。3、把父进程 proc 中字段复制到子进程的 proc 中,但把 p-pid 置为分配到的
40、标识号,把 p-pid 置为父进程标识号,把 p_stat置为“创立状态。4、按父进程中 p_size 所示的长度为子进程申请分配空间。27、答:运行状态、就绪状态、睡眠状态、创立状态、僵死状态。28、UNIX 采用怎样的进程调度算法?UNIX 对进程的调度采用动态优先数算法,进程的优先数随进程的执行情况而变化。29、UNIX 优先数和优先权之间有什么关系?-9-9-答:UNIX 中每个进程都有一个优先数,就绪进程能占用处理器的优先权取决于进程的优先数,优先数越小那么优先权越高。30、UNIX 什么情况下要进行进程调度?调度程序 swtch 的主要任务是什么?答:当进程执行中由于各种事件让出处
41、理器时,或一个处理器的进程用完了一个时间片后被剥夺了占用处理器的权利被抢占时。进程调度程序 swtch 从内存就绪队列中选取优先数最小的进程占用处理器运行。在 UNIX 系统中,Swtch 程序是用来完成进程调度的。Swtch 进行调度的时机是:进程完成了预定任务而终止 进程因等待某些时间而进入睡眼状态 进程由于与其他进程协同完成某一任务时因同步需要而主动放弃处理器 发现比线性进程更高优先权的进程。进程用完了一个规定的时间片 其他异常处理时强迫对处理器进行调度。Swtch 程序的主要任务是:保存现在运行进程的现场信息 从在内存就绪的进程中选择一个优先数最小优先权最高的进程占用处理器 为被选中的
42、进程恢复现场信息。1.解释以下术语 逻辑地址;绝对地址;地址转换 答:逻辑地址:对于用户来说,他无须知道自己的作业究竟是在主存的什么位置,他们可以认为自己的程序和数据就是放在从0 地址开始一组连续的地址空间中,这个地址空间是程序用来访问信息所用的一系列连续地址单元的集合,该地址空间就是逻辑地址空间。逻辑地址空间中,地址单元的编号称为逻辑地址。绝对地址:主存也被按照连续的存储单元进行编号,绝对地址空间就是主存中一系列连续存储信息的物理单元的集合,也称绝对地址空间为存储地址空间或物理地址空间。绝对地址空间中物理单元的编号称为绝对地址。地址转换:由于一个作业装入到与其逻辑地址空间不一致的绝对地址空间
43、,使得逻辑地址与绝对地址不同,而引起的对有关地址局部的调整,即逻辑地址转换成绝对地址的过程称为重定位,也称为地址转换。2.存储保护的目的是什么?怎样实现存储保护?答:存储保护的目的就是为了保护主存中各区域内的信息不被破坏,它包括存储的权限,存储不可跨越区域等等。为实现存储保护,必须由硬件和软件配合实现。比方在页式管理中,要由操作系统提供页表,硬件机构确定页的使用必须是平安的,如不能访问不属于自己的页等。3.什么叫重定位?重定位的方式有哪两种?比拟它们的不同。答:由于一个作业装入到与其逻辑地址空间不一致的绝对地址空间,使得逻辑地址与绝对地址不同,而引起的对有关地址局部的调整,即逻辑地址转换成绝对
44、地址的过程称为重定位,也称为地址转换。重定位有静态和动态两种情况。所谓静态重定位是在装入一个作业的时候,把作业中的指令地址和数据地址全部一次性地转换成绝对地址。所谓动态重定位是由软件和硬件相配合来实现的。地址重定位不再是装入的时候一次完成了,而是设置一个基址存放器,装入作业的时候,将作业在主存区域的首地址放入到基址存放器中。作业执行的时候,由硬件的地址转换机构动态地对地址进行转换,执行指令的时候,只要将逻辑地址加上基址存放器的内容,就得到了绝对地址。静态重定位和动态重定位的不同在于:静态重定位是在作业装入的时候一次完成,动态重定位是在作业执行时再实现的。静态重定位是软件支持的,动态重定位是硬件
45、和软件合作实现的。静态重定位不能实现主存的移动,而动态重定位可以。动态重定位还可能提供虚拟存储空间。4、比拟固定分区、可变分区和页式存储管理的优缺点。答:固定分区优点:能支持多道程序设计。无需专门的硬件地址转换机构。缺点:主存利用率不算太高,分配中出现内部零头问题。-10-10-分区大小固定不灵活,不能为程序动态申请内存。不具备虚拟存储能力。可变分区优点:支持多道程序设计。没有内部零头问题,主存利用率比固定分区高。采用移动技术后可以满足正在执行的作业的主存扩充的要求。缺点:动态重定位和保护措施需要硬件机构支持,本钱高。由于有外部零头,所以主存利用率依然不算很高。移动技术开销很大。每次必须将作业
46、完整调入并连续存放,主存利用率不高。不具备虚拟存储能力。页式存储管理优点:支持多道程序设计 解决了外部零头问题,内部零头大大减少一个作业平均只有 50页面大小的内部零头主存利用率比拟高。用户作业无需在主存中连续存放,提高主存的利用率。如果是分页虚拟存储管理,可以提供大容量的多个虚拟存储器,主存利用率更高了。缺点:动态重定位和保护措施需要硬件机构支持,本钱高;采用页表,占用了一局部主存空间和处理机时间。分页虚拟存储管理中,增加了缺页中断的处理,增加了系统开销。5、在可变分区管理方式下,为什么要引入移动技术?移动一道作业时操作系统要做哪些工作?答:采用移动技术的主要优点是:1可以使分散的空闲区集中
47、起来,可以容纳新的作业,提高主存空间的利用率 2方便作业执行过程中扩充主存空间,一道作业在执行中要求增加主存量时,只要移动邻近作业就可以增加它所点的分区长度。移动一道作业时操作系统要进行的处理:1判断被移动的作业是否在与外围设备交换信息,如是那么不能移动,否那么可以移动。2操作系统在移动作业信息时先移动作业信息的存储位置。3修改主存分配表中和保存在进程控制块中的分区起始地址和长度信息。4采取必要措施,尽量减少移动的作业数和信息量,提高系统效率。6、假定某计算机系统的主存容量为 32K,对主存采用动态定位可变分区分配算法。现在已经有 3 个作业在主存储器中如图,当作业 J2 执行时,要求扩充 3
48、K 作业,为了满足作业 J2 这一要求,应移动几道作业的信息?写出它们的次序、方向和距离。答:因为采用可变分区的管理方式,要求作业的逻辑地址空间是连续的,并且主存空间也是连续的。因此,作业J2 要求扩充的主存区域应该在原占有区域之后,于是必须通过移动来集中空闲区以供J2 扩充之需。移动的方法有两种:先把 J1 向上移动 1K 再把 J2 向上移动 2K.J3 向下移动 2K.显然,第二种方法只要进行一次移动,明显比第一种方法好。7、用可变分区方式管理主存时,假定主存中按地址顺序依次有五个空闲区,空闲区的大小依次为 32K、10K、5K,228K,100K.现有五个作业 J1,J2,J3,J4,
49、J5.它们各需主存 1K,10K,108K,28K 和 115K.假设采用最先适应分配算法能把这五个作业按 J1-J5的次序全部装入主存?你认为按怎样的次序装入这五个作业可使主存空间利用率最高?答:按最先适应算法时 32K 空闲区可装入 J1、J2,剩下 21K。228K 空闲区中装入 J3,J4,剩下 92K,结果是 J5 无法装入。仍按最先适应算法,假设调整作业装入次序为 J4、J1、J2、J3、J5。即在 32K 空闲区中依次装入 J4(28K),J1(1K)(或先 J1 再 J4),剩下 3K,在 10K 空闲区中装入 J3 刚好,在 228K 空闲区中装入 J3 和 J5,剩下 5K
50、。这时的主存空间利用率最高。-11-11-8、解释页式存储管理中为什么要设置页表和快表?答:在页式存储管理中,主存被分成大小相等的假设干块,同时程序逻辑地址也分成与块大小一致的假设干页,这样就可以按页面为单位把作业的信息放入主存,并且可以不连续存放,为了在作业执行过程中准确地查表逻辑地址与绝对地址的的对应关系,就需要为每个作业建立一张页表,表示逻辑地址中的页号与主存中块号的对应关系。页表一般存放在主存中,当要按给定的逻辑地址访问主存时,要先访问页表,计算出绝对地址,这样两次访主存延长了指令执行周期,降低了执行速度,而设置一个高速缓冲存放器将页表中的一局部存放进去,这局部页表就是快表,访问主存时