自考

您所在的位置:网站首页 操作系统第三章课后答案 自考

自考

2024-07-13 11:27| 来源: 网络整理| 查看: 265

目录 第一章操作系统概论第二章 操作系统运行环境第三章 线程与进程第四章 进程的同步与互斥第五章 死锁第六章 存储管理第七章 文件系统第八章 I/O设备管理

第一章操作系统概论

1.什么是操作系统?请说明操作系统在计算机系统中的作用和地位。 操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合,他们能够有效地组织和管理计算机中的硬件和软件资源,合理地控制计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使用户能够灵活、方便、有效的使用计算机,并使整个计算机系统能高效运行。

2.操作系统管理计算机系统的哪些资源? 硬件和软件资源。

3.请从资源管理角度说明操作系统的主要功能。 进程管理(处理器管理)、存储管理、文件管理、作业管理、设备管理

4.操作系统有哪些基本特征? 并发性:计算机系统中同时存在若干个正在运行着的程序。 共享性:操作系统程序和多个用户程序共享系统中的各种资源。 随机性:操作系统的运行是在一种随机的环境下进行的。

5.比较Windows、UNIX、Linux操作系统的体系结构,有什么异同? Windows体系结构是分成的模块系统,主要层次有硬件抽象层HAL、内核、执行体和大量的子系统结合 UNIX操作系统的系统架构图,其最里层是硬件,作为整个系统的基础;其次是操作系统内核,包括进程管理、存储器管理、设备管理和文件管理四个资源管理功能;往外一层是系统调用接口,及操作系统与用户的接口shell以及编译程序等;最外层是应用程序 Linux系统有四个主要部分,及内核、shell、文件系统和应用程序

6.Android操作系统有什么特点? Android操作系统分为四层,从高层到低层分别是应用程序层、应用框架层、系统运行库层和Linux内核层。 以Linux为核心的手机操作平台,是一款开放式操作系统。

7.手机操作系统通常提供哪些功能? 实时性、可靠性、易于链接

8.请叙述各种类型操作系统的工作方式及特点。 一般把操作系统分为三种基本类型:批处理操作系统,分时系统和实时系统 (1)批处理操作系统 批处理操纵系统分为简单批处理系统和多道批处理系统两种类型。 用户将作业交给系统操作员,系统操作员在收到作业后并不立即将作业输入计算机,而是在收到一定数量的作业后,组成一批作业,再把这批作业输入到计算机中。这批作业可在系统中形成一个连续的、自动转接的作业流。系统操作员然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将执行完毕的作业结果交给用户。 批处理操作系统的特点是成批处理。 (2)分时系统 分时操作系统是为了弥补批处理系统不能提供交互式快速服务的缺点而发展起来的。一台计算机主机链接了若干个终端,每个终端可由一个用户使用。用户通过终端交互式的向系统提出命令请求,系统接受用户的命令后,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据系统送回的处理结果发出下一道交互指令。 分时操作系统具有多路性、交互性、独占性、及时性的特点 (3)实时系统 使计算机能在规定的时间内,及时响应外部事件的请求,同时完成对该事件的处理,并能控制所有实时设备和实时任务协调一致地工作的操作系统。目标是,在严格地时间范围内,对外部请求做出反应,系统具有高度可靠性。 实时系统主要有两类:硬实时系统,软实时系统 (4)嵌入式操作系统 嵌入式操作系统就是运行在嵌入式芯片环境中,对整个芯片以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件。 嵌入式操作系统具有可靠性、实时性、占有资源少、智能化能源管理、易于连接、低成本等优点。 (5)个人计算机操作系统 个人计算机操作系统是一种单用户多任务的操作系统。其主要特点是:为单个用户服务;采用图形界面人机交互的工作方式,界面友好;使用方便,用户无须具备专门知识,也能熟练地操作系统。 (6)网络操作系统 为计算机网络配置地操作系统称为网络操作系统。网络操作系统是基于计算机网络地、在各种计算机操作系统之上按照网络体系结构协议标准设计开发的软件,包括网络管理、通信、安全、资源共享和各种网络应用。 计算机网络有:集中式模式、分布式模式 (7)分布式操作系统 分布式操作系统是网络操作系统的更高级形式,除了有网络操作系统的功能之外,其特征是,系统中所有主机使用同一个操作系统、资源深度共享、透明性、自治性

9.请比较批处理系统、分时系统以及实时系统之间的相同点和不同点。 相同点:这三类操作系统均为现代计算机系统中普遍使用的操作系统,操作系统本身以及它所管理的对象都是并发的系统,是一个极其复杂和庞大的软件系统。 不同点:批处理操作系统的特点是成批处理,用户不能干预自己作业的远行;分时系统的特点是多路性、交互性、独占性和及时性;实时操作系统的特点是能在严格的时间范围内对外部请求做出反应,以及具有高度可靠性。

10.请描述分时系统下响应时间的含义。 分时系统中,常把用户从终端发出命令到系统给予回答的时间定义为响应时间。

11.在什么情况下应该采用批处理方式?在什么情况下应该考虑分时系统策略? 批处理系统适用于追求系统资源利用率高、作业吞吐率高的计算机系统。 分时系统适用于需要提供交互式快速服务的计算机系统。

12.现代的通用操作系统把批处理方式和分时方式二者结合起来,为什么要这样做?这样的结合有什么特点? 这样的操作系统结合了批处理和分时两种系统的特点,该系统把处理终端用户的、交互式的、比较小的但需要及时处理的作业作为‘前台作业’予以优先处理;把需要较长运行时间、要调用其他外部设备、比较大型但无须终端用户干预的且不需要立即处理的作业作为‘后台作业’进行批处理。这样,使整个计算机系统忙闲结合,能更有效地利用计算机系统地资源。

13.实时操作系统有什么主要特征? 在严格的时间范围内,对外部请求做出反应,系统具有高度可靠性。

14.在如下的应用场合中,应该选用什么类型的操作系统?并请说明为什么。 导弹控制:实时操作系统 国家统计局:通用的分时/批处理操作系统 汽车发动机点火控制:实时操作系统 火车订票系统:网络操作系统 互联网电子游戏:网络操作系统

15.请说明什么是SPOOLing技术?在现代操作系统中有没有使用SPOOLing技术? SPOOLing技术的全称是‘同时的外部设备联机操作’。该技术是用磁盘设备作为主机的直接输入输出设备,主机直接从磁盘上选取作业运行,作业的执行结果也存在磁盘上,通道负责将用户作业从外设动态写入磁盘,并使这一操作与主机并行。从而大大提高了处理器和各种外部设备的利用效率。由于SPOOLing技术需要通道技术,所以一般用于大型计算机系统和那些对I/O处理能力要求比较严格的系统中,一般低档 微型计算机中,不使用此技术

16.网络操作系统和分布式操作系统都是配置在计算机网络上的操作系统,他们之间有什么本质上的不同? 网络操作系统使基于计算机网络的,是在各种计算机操作系统之上按网络体系结构协议标准设计开发的软件,它包括网络管理、通信、安全、资源共享和各种网络应用。分布式操作系统使网络操作系统的更高级形式,除了有网络操作系统的功能之外,其特征是系统中所有主机使用同一个操作系统、资源的深度共享、透明性和自治性

17.操作系统设计的过程包括哪些方面?在每个方面都要考虑什么问题? 操作系统的设计过程包括功能设计、算法设计、结构设计。在每个方面均应考虑使操作系统具有可靠性、高效性、易维护性、可移植性、安全性和简明性等问题。

18.操作系统的设计目标是什么? 目标有三条:系统模块化、模块标准化、通信规范化

19.影响操作系统正确性的因素有哪些? 影响操作系统正确性的因素包括操作系统的功能成分多、各种外部设备的接口复杂、参与开发的人员较多

20.在进行操作系统结构设计时应考虑哪些问题? 应考虑组成操作系统的各部分的划分原则以及它们之间的关系(即通信),简言之,即操作系统的构成法和组成方法。

21.请说明模块组合法、层次式结构和客户/服务器结构的基本思想以及优缺点。 整体式结构(模块组合法)的基本思想是首先确定操作系统的总体功能,然后将总功能分解成若干子功能,实现每个子功能的程序称为模块,再通过接口将所有模块链接起来形成一个操作系统的整体。 优点:结构紧密、接口简单直接、系统效率高。 缺点:模块间转接随便,各模块互相牵连,独立性差,系统结构不清晰;数据基本上作为全程量处理,模块的修改和维护较困难;由于模块组合结构常以大型表格为中心,限制了系统的并发性。 层次式结构的基本思想式为克服模块结构的缺点、减少各模块之间无规则的相互调用、相互依赖关系,力求将模块间的调用的无序性变为有序性,将操作系统的所有功能模块按功能流程图的调用次序,将模块分成若干层,各层之间的模块只能是单向依赖或单向调用关系 优点:既具有模块法把整体问题分解成局部化的优点,使各模块自己的组织结构和依赖关系清晰明了,增加了系统的可读性和可适应性,增加了系统的可靠性,易于调试、易于修改、易于扩充、易于维护等。 微内核(客户/服务器)结构适宜于应用在网络环境下分布式处理的计算机环境中 优点:将系统的分成若干个小的并且自包含的服务进程分支,每个分支运行在独立的用户进程中,相互之间通过规范一致的方式接受发送消息而联系起来。优点:可靠、灵活、适宜于分布式处理的计算环境 缺点:效率较低

第二章 操作系统运行环境

1.请简述处理器的组成和工作原理。你认为哪些部分和操作系统密切相关,为什么? 处理器一般由运算器、控制器、一系列的寄存器以及告诉缓存构成。其中,运算器实现指令中的算数和逻辑运算,是计算机的核心。控制器负责控制程序运行的流程。寄存器是一种暂时存储器件,用于CPU执行指令的过程中暂存数据、地址及指令信。CPU本身提供了一定的存储能力,但容量很小。处理器中的运算器、控制器、寄存器都与操作系统密切相关、操作系统就是通过对处理器中的这些部件来实现程序的运算和程序流程的控制的。

2.为了支持操作系统,现代处理器一般都提供哪几种工作状态,以隔离操作系统和普通程序?每种状态各有什么特点? 现代处理器一般都提供管态和目态等两种工作状态。用户在目态下运行,只能使用非特权指令,具有较低的特权级别;操作系统在管态下运行,可以使用特权指令和非特权指令,具有较高的特权级别。

3.计算机系统中既有操作系统程序,又有用户程序,什么情况下操作系统程序才能占用中央处理器? 当用户程序占用CPU时,CPU在目态下运行,只能使用非特权指令;当需要使用特权指令时,将引起一次处理器状态的切换,此时处理器通过中断机制,将目态转换为管态,然后将处理权移交给操作系统中的一段代码,操作系统才能占用cpu。从目态变为管态其转换的唯一途径是通过中断。

4.为什么要把“启动I/O”等指令定义为特权指令? 因为如果允许用户随便使用这些指令,就有可能使系统陷入混乱。

5.怎样限制用户程序中使用特权指令? 当用户程序占用CPU时,CPU在目态下运行,只能使用非特权指令;若此刻CPU取到了一条特权指令,形成“非法操作”事件,CPU就拒绝执行该只能怪。中断机制识别到该事件,运行状态就从目态变为管态,将控制权转给操作系统,通过操作系统通知用户修改。

6.什么是分级的存储体系结构?它主要解决了什么问题? 计算机存储系统的设计主要考虑容量、速度和成本三个问题。容量是存储系统的基础,都希望配置尽可能大的存储系统;同时要求存储系统的读写速度能与处理器的速度相匹配;此外成本也应该在一个合适的范围之内。但这三个目标不可能同时达到最优。一般情况下,存储设备读写速度越快,平均单位容量的价格越高,存储容量越小;反之,存储设备读写速度越慢,平均单位容量的价格越低,存储容量越大。为了在这三者之间取得平衡,就采用分级的存储体系结构,由寄存器、高速缓存、主内存、硬盘存储器、磁带机和光盘存储器等构成。操作系统经常访问 较小、较贵而快速的存储设备,以较大、较便宜而读写速度较慢的存储设备作后盾。在整体上通过对访问频率的控制来提高存储系统的效能。

7.请简述程序局部性原理。 是指程序在执行时呈现出局部性 规律,即在一段时间内,整个程序的执行仅限于程序中的某一部分。相应地,执行 所访问的存储空间也局限于某个内存区域。

8.什么是存储保护,由哪些方法实现存储保护? 存储在内存中的用户程序和操作系统以及他们的数据,有可能受到正在CPU上运行的某用户程序的有意或无意的破坏,这会造成十分严重的后果。一旦有程序向操作系统写入了数据,将有可能造成系统崩溃。对内存中的信息加以严格的保护,使操作系统及其他程序布被破坏,使其正确运行的基本条件之一。 界地址寄存器使被广泛使用的一种存储保护技术。其方法是在处理器中设置一对界限寄存器来存储该用户作业在内存中的上限和下限地址,分别称为下限寄存器和上限寄存器。也可将一个 寄存器作为基址寄存器,另一寄存器作为限长寄存器(指示存储区长度)的方法来指出程序在内存中的存储区域。每当处理器要访问内存时,硬件自动将被访问的内存地址与界限寄存器的内容进行比较,以判断是否越界。如果未越界,则按此地址访问内存,否则将产生程序中断----越界中断或称为存储保护中断。

9.操作系统与硬件如何配合来实现存储保护的? 操作系统通过与硬件中的界地址寄存器实现存储保护。其方法是在CPU中设置一对界限寄存器来存放某个作业在内存中的下限和上限地址,或者一个寄存器作为基址寄存器,另一个作为限长寄存器。每当CPU访问内存时,硬件自动将被访问的内存地址与界限寄存器的内容进行比较,以判断是否越界。如果未越界,则按此地址访问内存,否则将产生越界中断。

10.常见的I/O控制技术有哪些?各有什么特点? (1)通道 通道是独立于中央处理器的,专门负责数据I/O传输工作的处理单元。代替处理器对外部设备实行统一的管理,从而使处理器与外部设备并行工作,提高了多道程序处理的效率。 (2)DMA技术 DMA技术由DMA控制器自动控制成块数据在内存I/O单元之间的传送,提高了处理I/O的能力。

11.缓冲技术在计算机系统中起着什么样的作用,它是如何工作的? 缓冲技术是用在外部设备与其他硬件部分之间的一种数据暂存技术。用以缓解处理器处理数据速度与设备传输数据速度之间不匹配矛盾的一种数据暂存技术。

12.时钟对操作系统有什么重要作用? 计算机系统中的时钟可分为硬件时钟和软件时钟,以及绝对时钟和相对时钟。时钟可以防止系统陷入死循环,实现作业按时间片轮转进行,给出正确的时间信号,定时唤醒事先按确定时间执行的时间,记录事项等。

13.硬件时钟怎样实现,其作用是什么? 硬件时钟的工作原理是,在电路中的晶体振荡器,每隔一定间隔产生固定的脉冲频率,时钟电路中的时钟寄存器依据时钟电路所产生的脉冲数,对时钟寄存器进行加1的工作。

14.软件时钟怎样实现,其作用是什么? 软件时钟,常用作相对时钟,它的工作原理主要是利用内存单元模拟时钟寄存器,并采用一段程序来计算响应的脉冲数,对内存时钟寄存器进行加1或减1的工作,从而模拟了时钟的功能。

15.什么是中断,为什么说中断对现代计算机很重要? 中断是指处理器对系统外所发生的异步事件的响应。异步事件是指无一定时序关系的随机发生的事件。中断时所有要打断CPU的正常工作次序,并要求其去处理某一事件的一种常用手段。中断技术解决了主机和外设并行工作的问题,消除了因外设的慢速而使得主机等待的现象,为多机操作和实时处理提供的硬件基础。

16.中断的作用是什么? 能充分发挥处理器的使用效率。因为输入输出设备可以用中断的方式同 处理器通信,报告其完成处理器所要求的数据传输的情况和问题,这样可以免除处理器不断地查询和等待,从而大大提高处理器的效率。 提高系统的实时能力。因为具有较高实时处理要求的设备,可以通过中断方式请求及时处理,从而使处理器立即运行该设备的处理程序(也是该中断的中断处理程序)。

17.中断的向量是什么,其作用是什么? 引起中断的事件称为中断事件或中断源,计算机系统提供的中断源的有序集合称为中断字。处理某一种中断事件的程序称为中断处理程序。为了使中断装置便于找到所需的中断处理程序,专门设计了中断处理程序入口地址映射表,称为中断向量表,表中的每一项称为中断向量,主要由程序状态字PSW和程序计数器PC的值组成。中断向量的作用是通过它可以找到中断处理程序在内存种的存储位置。

18.中断响应主要做哪些工作? 处理器接收中断信号; 保护现场,将中断断点的程序状态字PSW和程序计数器PC值存入系统堆栈; 分析中断向量,取得中断处理程序的入口地址; 将处理器的PC值置为中断处理程序的入口地址; 调用中断处理程序。

19.中断处理的主要步骤是什么? 中断处理指中断信号已经被中断系统的硬件中断装置接收和响应之后,相应的中断处理程序进行中断处理的步骤。包括检查I/O相关的状态信息,操纵I/O设备或者在设备和内存之间传送数据。在中断处理程序结束工作之后,处理器会检测到一条中断返回指令,处理器执行此指令,把恢复中断时所保护的中断断点现场,处理器也恢复成被中断时的状态,整个中断处理结束。

20.为什么要对中断进行屏蔽? 如果没有中断屏蔽,当中断装置响应了某个中断后中断处理程序在进行处理时,中断装置也可能去响应另一个中断事件,就会出现优先级低的中断事件的处理打断优先级高的中断事件的处理,使得中断事件的处理顺序与响应顺序不一致,而且会形成多重嵌套处理,使多现场保护、程序返回等工作变得复杂。因此设置中断屏蔽。

21.多个中断同时发生时,系统是怎样处理的? 同时又多个中断请求时,系统接收只能高端优先级最高的中断而忽略其中中断优先级较低的中断。如果同一中断级中的多个设备接口都有中断请求,则按照固定的优先数或者轮转法确定响应的顺序。 对多个中断的处理策略一般有两种: (1)正当处理一个中断时,此时系统将对任何新发生的中断置之不理。在这期间发生的中断将保持挂起状态。当处理器再次允许中断时,这个新的中断信号会被处理器检测到,并作出处理。 (2)中断嵌套。即按照优先度分级,允许优先级较高的中断打断优先级较低的中断处理过程,于是引起中断处理的嵌套。

22.阐述硬件中的中断装置的左右。 硬件的中断装置负责捕获中断源发出的中断请求,并以一定的方式响应中断源(将中断现场的程序状态字PSW,指令计数器PC的值和其他重要现场信息压入系统堆栈),然后将处理器的控制权交给与中断源相应的中断处理程序。 硬件中断装置接收中断信号,并把中断信号寄存在中断寄存器中。

23.哪些中断时间一定会引起进程状态的变化,哪些中断事件可能引起进程状态的变化,有不引起进程状态变化的中断事件吗? 一定会引起进程状态变化的中断事件:硬件故障中断、输入输出中断、自愿中断; 可能会引起变化的中断事件:外部性中断事件、程序性中断事件。 进程在执行中状态会不断地改变,每个进程在任何时刻总是处于三种基本状态之一:等待态、就绪态、运行态。中断事件是否引起进程状态的变化,还要看该中断事件的中断优先级和进程PSW的中断屏蔽位。硬件故障中断和自愿中断是一定会引起进程状态变化的,而其他中断则可能引起进程状态变化。

24.操作系统为什么要提供‘系统调用’? 系统调用时操作系统为用户程序提供的一种服务界面,也可以说是操作系统保证程序设计语言能正常工作的一种支持。在源程序一级,用户用程序设计语言描述算题任务的逻辑要求,比如读文件、写文件、请求主资源等。这些要求的实现只有通过操作系统的系统调用才能完成,其中有些要求还必须执行硬件的特权指令才能达到目的。 为了从操作系统中获得服务,用户程序必须使用系统调用,系统调用陷入内核并调用操作系统。系统调用是操作系统提供给编程人员的唯一接口。

25.在操作系统中实现系统调用机制应该解决哪些问题? 进程控制、文件操作、进程通信、设备管理、信息维护等等。

26.当应用程序执行到系统调用时,系统时如何处理的? 当用户使用操作系统调用时,产生一条相应的指令(异常指令),处理器在执行到该指令时发生相应的中断,并发出有关信号给该处理机构(异常处理机构);该处理机构在收到了处理器发生的信号后,启动相关的处理程序去完成该系统调用所要求的功能。 当用户使用操作系统调用时,通过使用访管指令产生中断,把目态切换成管态,并启用操作系统。访管指令包含对应系统调用的功能号。

第三章 线程与进程

1.什么是多道程序设计? 允许多个程序同时进入内存并运行。

2.多道程序设计怎样提高系统效率?多道程序设计一定能提高系统效率吗? 采用多道程序设计能改善资源使用情况,提高系统效率。但是,采用多道程序设计也存在一些问题。 (1)可能延长程序的执行时间 (2)系统效率的提高有一定限度

3.操作系统为什么要引入“进程”?进程和程序有什么区别? 为了更好的描述程序的并发执行,实现操作系统的并发性和共享性,引入进程的概念。 进程和程序既有联系又有区别。 (1)进程和程序的联系 程序是构成进程的组成部分之一,一个进程的运行目标是执行它所对应的程序,如果没有程序,进程就失去了其存在的意义。从静态的角度看,进程是由程序、数据和进程控制块PCB三部分组成的。 (2)进程和程序的区别 程序是静态的,而进程是动态的。进程的程序的一个执行过程。程序的存在是永久的。而进程是为了程序的一次执行而暂时存在的。进程有生命周期,有诞生,亦有消亡。一个进程可以包括若干程序的执行,而一个程序亦可以产生多个进程。

4.程序的并发执行有什么特点?并发和并行有什么区别? 程序的并发执行的特点有: (1)在执行期间并发程序相互制约 (2)程序与计算不再一一对应 (3)并发程序的执行结果不再可现 程序的并行执行和并发执行存在差别。前者是指不论从宏观的时间周期上看,还是从微观上看,若干程序确实在同时运行;而程序的并发执行,如果在单处理器系统中,它们在宏观上是同时进行的,但在微观上,这些程序仍然是顺序执行的。

5.可再入程序有什么特性? 能够被多个用户同时调用的程序称作是可再入的程序。可再入程序必须是纯代码的程序,程序在执行中不会修改自身的代码。可再入程序的操作对象,即数据,是与程序相分离的。

6.进程有哪些基本状态?它们的变化关系是怎样的? 进程有三种基本状态:等待状态、就绪状态、运行状态 等待状态:也称阻塞状态或封锁状态。是指进程因等待某种事件发生而暂时不能运行的状态。等待状态——>等待的事件已发生——>就绪态 就绪状态:是指一个进程已经具备运行条件,但由于没有获得处理器而不能运行所处的状态。就绪状态——>进程调度——>运行态 运行状态:指进程已获得处理器,并且在处理器上执行的状态。运行态——>等待某一事件发生——>等待态。 运行态——>时间片已用完——>就绪态

7.系统中有n(n>1)个进程,在任一时刻,处于运行、就绪和等待状态的进程最多、最少各有多少个? 在单处理器系统中,任一时刻,处于运行状态的进程最多只有一个,最少0个;处于就绪状态的进程最多有N-1个,最少为0个;处于等待状态的进程最多有n个,最少有0个

8.进程控制块的作用是什么?其主要内容有哪些? 进程控制块是用来描述进程的基本情况以及进程的运行变化过程。进程控制块PCB是进程存在的唯一标志。 进程控制块的内容可以分成调度信息和现场信息两大部分。 调度信息供进程调度时使用,描述了进程当前所处的状况,它包括进程名、进程号、地址空间信息、优先级、当前状态、资源清单、家族关系、消息队列指针、进程队列指针和当前打开文件等。 现场信息刻画了进程的运行情况,只记录了哪些可能会被其他进程改变的寄存器,如程序状态字、时钟、界地址寄存器等。

9.进程能否修改访问自己的进程控制块内容? 进程控制块是系统为程序建立的用于标志进程,记录各进程执行情况的。进程本身不能访问或者修改自己的进程控制块的内容,但父进程可以访问或修改其子孙进程的进程控制块内容,以便对它的子孙进程进行必要的管理和控制。

10.当进程调度选中一个进程后,怎样才能让它占用处理器? 当进程调度选中一个进程后,把选中进程的进程控制块中有关的现场信息, 如通用寄存器、控制寄存器和程序状态字寄存器的内容送入处理器相应的寄存器中,处理器就按该进程的要求工作,达到了进程占用处理器的目的。

11.为什么要引入线程?线程和进程之间的区别和联系是什么? 为了减少程序并发执行时所付出的时间和空间开销,使操作系统具有更好的并发性。 线程是进程中的一个实体,是处理器调度和分派的基本单位。进程是拥有资源的独立单位。 线程具有许多传统进程的特征,故称为轻量级进程或进程元。

12.为什么说线程间的状态切换比进程间的状态切换开销更低?同一个进程中的两个线程切换的开销是否也比不同进程中两个线程切换的开销少? 线程不拥有自己的系统资源,切换状态时只需要保存少量的寄存器内容,不涉及存储器管理方面的操作;而进程拥有自己的系统资源,创建和撤销时都需要进行资源分配或回收,切换状态时需要对整个当前进程的处理器环境进行保存,并对新的被调度的进程处理器环境进行设置,这些操作都需要占用消耗系统资源。 同一进程间的线程具有相同的地址空间,共享相同的系统资源,切换方便,而不同进程之间线程切换时则需要进行进程切换,所以同一进程间的线程切换时开销也要小于不同进程中的两个线程切换的开销。

13.进程调度的作用是什么?引起进程调度的因素有哪些? 进程调度的作用时:记录系统中所有进程的执行状况;根据一定的调度算法,就就绪队列中选出一个进程,准备把处理器分配给它;把处理器分配给进程。 引起进程调度的因素有: (1)正在执行的进程运行完毕。 (2)正在执行的进程由于某种错误而终止。 (3)时间片用完,即有一个进程从运行状态变为就绪状态。 (4)正在执行的进程调用阻塞原语将自己阻塞起来,即一个进程从运行状态进入阻塞状态。 (5)创建了新的进程,即有一个新的进程进入就绪队列。 (6)正在执行的进程调用了唤醒源于操作激活了等待资源的进程,即一个等待状态的进程变为就绪状态。

14.抢占式调度和非抢占式调度有何区别? 可抢占方式,即就绪队列中一旦有优先级高于当前运行进程优先级的进程存在时,便立即进行调度,转让处理器。不可抢占方式,即一旦把处理器分配给一个进程,它就一直占用处理器,直到该进程自己因调用原语操作或等待I/O而进入阻塞状态,或时间片用完时才让出处理器,重新执行进程调度。

15.对于进程调度,较小的优先级值是表示较低的优先级还是表示较高的优先级? 不同的操作系统中设定不同。在UNIX和许多其他系统中,大的优先级值表示低优先级进程。许多系统,比如WINDOWS,刚好相反,大数值表示高优先级。

16.在一个单处理器的多道程序设计系统中,现有两道进程同时执行,其中一道以计算为主,另一道以输入输出为主,将怎样赋予进程进程占有处理器的优先数?解释为什么?

17.假定就绪队列中的进程按优先数自大到小顺序排列,当有进程要加入就绪队列时,应按它的优先数排入相应的位置,试就单向连接的方式写出实现进程入队的程序。

18.如下进程: 进程 执行时间 优先级 到达时间 开始时间 结束时间 等待时间 P1 50ms 4 0ms 0ms 50ms 0 P2 20ms 1 20ms 50ms 70ms 50ms P3 100ms 3 40ms 110ms 210ms 110ms P4 40ms 2 60ms 70ms 110ms 70ms (1)分别给出采用最短剩余时间算法、非抢占式优先级算法(优先级值越小,表示优先级越高)和时间片(30ms)轮转算法的调度过程和进程执行序列。 (2)计算上述每种调度策略的平均等待时间。 答:(1)非抢占式优先算法如图(2)非抢占式优先级算法:(0+50+110+70)/4=57.5ms

19.本章第二节图3-4包含了7个状态。原则上,若在任意两个状态间进行转换,则可能有42种不同的转换。 (1)列出所有可能的转换,并举例说明什么事件会触发这些状态转换。 (2)列出所有不可能的转换并说明原因 答:教材P85 图3-4 略

20.有5个进程P1,P2,P3,P4,P5,它们同时依次进入就绪队列,它们的优先数和需要的处理器时间如表所示: 进程 处理器时间/us 优先数 P1 P2 P3 P4 P5 10 1 2 1 5 3 1 3 4 2 忽略进行调度等所花费的时间,请回答下列问题。 (1)写出分别采用先来先服务算法和非抢占式的优先级调度算法选中进程执行的次序。 (2)分别计算出上述两种算法使各进程在就绪队列中的等待时间以及两种算法下的平均等待时间。 答:(1)执行次序:先来先服务P1-P2-P3-P4-P5。非抢占式优先级P2-P5-P1-P3-P4 (2)平均等待时间:先来先服务(0+10+11+13+14)/5=9.6 非抢占式优先级(6+0+16+18+1)/5=8.2

21.在分级调度算法中,为什么对不同就绪队列中的进程规定使用不同长度的时间片? 因为各个就绪队列的优先级不一样,优先级越高的队列时间片长度越小,优先级越低的队列时间片越长,这样做的目的就是让哪些短而高优先级的作业迅速完成,而又让大的作业能够处理完成。

22.为什么说多级反馈队列调度算法能较好的满足各类用户的需要? 多级反馈队列法综合了先进先出调度算法、时间片轮转算法和可抢占式最高优先级算法的一种进程调度算法。

23.系统内核包含哪些功能?内核的特点是什么? 系统内核提供下列功能:中断处理程序、进程同步与互斥、进程调度、控制与通信、存储管理的基本操作以及时钟管理等。 内核只占整个操作系统代码中的一小部分,就是最接近裸机的部分,内核就是进程赖以活动的基础,内核的功能通过原语操作来实现。

第四章 进程的同步与互斥

1.何谓与时间有关的错误?举例说明之。并发进程执行时一定会产生与时间有关的错误码?为什么? 并发进程中共享了公共变量,使得程序的计算结果与并发程序执行的速度有关,这种错误的结果又往往是与时间有关的,所以,把它称之为与时间有关的错误。

2.什么是临界区?什么是相关临界区?对相关临界区的使用规则? 若在系统中的某些资源一次只允许一个进程使用,则这类资源称为临界资源或共享变量,而在进程中访问临界资源的程序称为临界区。 如果又若干进程共享某一临界区,则称该临界区为相关临界区。 要求进入相关临界区的进程之间构成了互斥关系。为了保证系统中各并发进程顺利运行,对两个以上欲进入相关临界区的进程,必须实行互斥。

3.若用P、V操作管理某一组相关临界区,其信号量S的值在[-1,1]之间变化,当S=-1,S=0,S=1时,它们各自的物理含义是什么? 当S>0时,S值的大小表示某类可用资源的数量,即表示有该类资源可以分配。 当S



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3