计算机操作系统原理复习题Word文档格式.docx
《计算机操作系统原理复习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机操作系统原理复习题Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
为实现分时系统,其中,最关键的问题是如何使用户能及自己的作业进行交互,即当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,再将结果返回给用户。
此后,用户可继续键入下一条命令,此即人—机交互。
应强调指出,即使有多个用户同时通过自己的键盘键入命令,系统也应能全部地及时接收并处理
(3)特征:
多路性;
独立性;
及时性;
交互性。
7、实时任务划分?
实时系统及分时系统比较?
实时任务划分:
(1)按任务执行时是否呈现周期性来划分
(2)根据对截止时间的要求来划分。
比较:
(1)多路性。
实时信息处理系统的多路性主要表现在系统周期性的对多路现场信息进行采集,以及对多个对象或多个执行机构进行控制。
而分时系统的多路性则及用户情况有关,时多时少。
(2)独立性。
实时信息处理系统的每个终端用户在向实时系统提出服务请求时是彼此独立操作,互不干扰。
而分时控制系统中,对象的采集和对象的控制也是互不干扰。
(3)及时性。
实时信息处理系统的及时性以人所能接受的等待时间来确定。
分时系统的及时性是以控制对象所要求的开始截止时间或完成时间来确定的,一般为毫秒级。
(4)交互性。
实时信息处理系统仅限于访问系统中某些特定的专用服务程序。
分时系统能够向终端用户提供数据处理和资源共享等服务。
(5)可靠性。
分时系统也要求可靠性,但实时系统要求更高度的可靠性。
8、操作系统定义?
操作系统的定义:
操作系统(operatingsystem,简称OS)是计算机系统中的一个系统软件,它是这样一些程序模块的集合——它们管理和控制计算机系统中的软件和硬件资源,合理地组织计算机工作流程,以便有效地利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,从而在计算机及其用户之间起到接口的作用。
特征:
(1)并发性
(2)共享性(3)虚拟技术(4)异步性
9、是什么原因使操作系统具有异步性特征?
操作系统的异步性体现在三个方面:
一是进程的异步性,进程以人们不可预知的速度向前推进,二是程序的不可再现性,即程序执行的结果有时是不确定的,三是程序执行时间的不可预知性,即每个程序何时执行,执行顺序以及完成时间是不确定的。
10、操作系统的主要功能?
(1)处理机管理功能
(2)储存器管理功能
(3)设备管理功能
(4)文件管理功能
(5)操作系统及用户之间的接口
第二章进程管理
1、前驱图(如课后作业2)
2、程序并发执行时的特征?
(1)间断性
(2)失去封闭性(3)不可再现性
3、在操作系统中为什么引入进程的概念?
产生什么样的影响?
为了使程序能够并发执行,且为了对并发执行的程序加以描述和控制,引入了进程的概念。
4、进程?
1)进程特征
①结构特征:
进程控制块PCB、程序段、相关的数据段
②动态性:
进程实体的执行过程
③并发性:
多个进程实体同存于内存中,能在一段时间内同时运行
④独立性:
能独立运行、独立分配资源和独立接受调度的基本单位
⑤异步性:
进程是进程实体的运行过程,是系统进行资源分配和高度的一个独立单位
2)进程定义:
“进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位”。
5、进程和程序比较
程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。
而进程是程序在处理机上的一次执行过程,它是一个动态的概念。
程序可以作为一种软件资料长期存在,而进程是有一定生命期的。
程序是永久的,进程是暂时的。
进程更能真实地描述并发,而程序不能;
进程是由程序和数据两部分组成的。
进程具有创建其他进程的功能,而程序没有。
同一程序同时运行于若干个数据集合上,它将属于若干个不同的进程。
也就是说同一程序可以对应多个进程。
在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单元都是进程。
6、进程三基本状态?
引起基本状态转换的典型原因?
进程有就绪状态、执行状态、阻塞状态三种状态。
引起进程发生状态转换的典型原因:
(1)就绪状态→执行状态:
进程分配到CPU资源
(2)执行状态→就绪状态:
时间片用完
(3)执行状态→阻塞状态:
I/O请求
(4)阻塞状态→就绪状态:
I/O完成
7、引起进程创建的主要事件
引起进程创建的主要事件有:
用户登录、作业调度、提供服务、应用请求。
8、PCB的作用?
为什么说PCB是进程存在的唯一标志?
PCB是进程实体的一部分,是操作系统中最重要的记录型数据结构。
作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位,成为能及其它进程并发执行的进程。
OS是根据PCB对并发执行的进程进行控制和管理的。
9、并发执行进程之间的关系?
在多道程序环境下,当程序并发执行时,由于资源共享和进程合作,使同处于一个系统中的诸进程之间可能存在着以下两种形式的制约关系:
间接制约:
是并发执行进程之间互相共享公用资源而引起的制约。
(导致进程互斥)
直接制约:
是并发执行进程之间互相共享对方私用资源而引起的制约。
(导致进程同步)
10、临界资源?
临界区?
临界资源:
把在一段时间内只允许一个进程访问的资源称为临界资源或独占资源。
临界区:
人们把在每个进程中访问临界资源的那段代码称为临界区(criticalsection)
11、为什么进程在进入临界区之前应先执行“进入区”代码?
而在退出前又要执行“退出区”代码?
为了实现多个进程对临界资源的互斥访问,必须在临界区之前加一段用于检查临界资源是否正在被访问的代码,如未被访问,该进程可进入临界区对此临界资源进行访问;
如正被访问,则该进程不能进入临界区访问临界资源。
12、同步机制应遵循的规则?
为什么?
a.空闲让进、忙则等待、有限等待、让权等待四条准则
b.为实现进程能互斥地进入到自己的临界区
13、使用记录型信号量机制描述前驱图(课后作业22)
a.Vara,b,c,d,e,f,g,h;
semaphore:
=0,0,0,1,0,0,0,0;
begin
parbegin
beginS1;
signal(a);
signal(b);
end;
beginwait(a);
S2;
signal(c);
signal(d);
beginwait(b);
S3;
signal(e);
beginwait(c);
S4;
signal(f);
beginwait(d);
S5;
signal(g);
beginwait(e);
S6;
signal(h);
beginwait(f);
wait(g);
wait(h);
S7;
parend
end
14、利用记录型信号量解决生产者-消费者问题p58
15、利用记录型信号量解决读者-写者问题p63
16、利用记录型信号量解决哲学家进餐问题p61
17、进程通信的类型?
进程通信的类型主要有:
共享存储器系统、消息传递系统以及管道通信系统。
18、线程基本概念?
线程是进程中的一个实体,是被系统独立调度和分配的基本单位,故又称为轻权进程,它由线程控制表、储存线程上下文的用户线以及核心栈组成。
19、线程及进程的比较?
a.调度性。
在传统的操作系统中,拥有资源的基本单位和独立调度、分派的基本单位都是进程,在引入线程的OS中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位;
b.并发性。
在引入线程的OS中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,亦可并发执行,因而使OS具有更好的并发性;
c.拥有资源。
无论是传统的操作系统,还是引入了线程的操作系统,进程始终是拥有资源的一个基本单位,而线程除了拥有一点在运行时必不可少的资源外,本身基本不拥有系统资源,但它可以访问其隶属进程的资源;
d.开销。
由于创建或撤销进程时,系统都要为之分配和回收资源,如内存空间等,进程切换时所要保存和设置的现场信息也要明显地多于线程,因此,操作系统在创建、撤消和切换进程时所付出的开销将显著地大于线程。
第三章处理机调度及死锁
1、抢占式调度基本原则
(1)优先权原则。
(2)短作业(进程)优先原则。
(3)时间片原则。
2、周转时间、响应时间、带权周转时间
响应时间:
是从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间,或者说,直到屏幕上显示出结果为止的一段时间间隔。
它包括三部分时间:
从键盘输入的请求信息传送到处理机的时间,处理机对请求信息进行处理的时间,以及将所形成的响应信息回送到终端显示器的时间。
周转时间:
是指从作业被提交给系统开始,到作业完成为止的这段时间间隔(称为作业周转时间)。
它包括四部分时间:
作业在外存后备队列上等待(作业)调度的时间,进程在就绪队列上等待进程调度的时间,进程在CPU上执行的时间,以及进程等待I/O操作完成的时间。
3、高级调度及低级调度的主要任务是什么?
为什么要引入中级调度?
高级调度其主要功能是根据某种算法,把外存上处于后备队列中的那些作业调入内存,也就是说,它的调度对象是作业。
低级调度其主要功能是保存处理机的现场信息;
按某种算法先取进程;
把处理器分配给进程。
中级调度:
引入中级调度的主要目的的为了提高内存利用率和系统吞吐量。
为此,应使那些暂时不能运行的进程不再占用宝贵的内存资源,而将它们调至外存上去等待,把此时的进程状态称为就绪驻外存状态或挂起状态。
4、在作业调度中应如何确定接纳多少个作业和接纳哪些作业?
作业调度每次要接纳多少个作业进入内存,取决于多道程序度,即允许多少个作业同时在内存中运行。
应将哪些作业从外存调入内存,这将取决于所采用的调度算法。
最简单的是先来先服务调度算法,这是把将最早进入外存的作业最先调入内存;
较常用的一种算法是短作业优先调度算法,是将外存上最短的作业最先调入内存;
另一个较常的是基于作业优先级的调度算法,该算法是将外存上优先级最高的作业优先调入内存。
5、在选择调度方式和调度算法时,应遵循的原则是什么?
(1)面向用户的准则:
周转时间短、响应时间快、截止时间的保证、优先权准则。
(2)面向系统的准则:
系统吞吐量高、处理机利用率好、各类资源的平衡利用。
6、调度算法:
FCFS、SJF、高优先权调度、高响应比优先等
7、为什么说多级反馈队列调度算法能较好地满足各方面用户的需要?
对终端型作业用户而言,他们提交的作业大多属于交互型作业,作业通常较小,系统只要能使这些作业在第一个队列所规定的时间片内完成,便可使他们都感到满意。
对于短批处理作业用户而言,开始时他们的作业像终端型作业一样,如果仅在第一个队列中执行一个时间片即可完成,便可获得及终端型作业一样的响应时间;
对于稍长的作业,通常也只需在第二队列和第三队列各执行一个时间片内即可完成,其周转时间仍然很短。
对于长批处理作业用户而言,他们的作业将依次在第1,2,……,n个队列中运行,然后再按轮转方式运行,用户不必担心其作业长期得不到处理,而且每往下降一个队列,其将得到的时间片将随着增加,故可进一步缩短长时间的等待时间。
8、死锁?
产生死锁的原因?
必要条件?
a.死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进;
b.产生死锁的原因有二,一是竞争资源,二是进程推进顺序非法;
c.必要条件是:
互斥条件,请求和保持条件,不剥夺条件和环路等待条件。
9、处理死锁的基本方法
处理死锁的基本方法有:
预防死锁、避免死锁、检测和解除死锁。
10、银行家算法
11、死锁定理
死锁状态的充分条件是:
当且仅当SS为死锁状态的充分条件是:
当且仅当S状态的资源分配图是不可完全简化的。
该充分条件称为死锁定理。
第四章存储器管理
1、为什么要引入动态重定位?
如何实现?
a.程序在运行过程中经常要在内存中移动位置,为了保证这些被移动了的程序还能正常执行,必须对程序和数据的地址加以修改,即重定位。
引入重定位的目的就是为了满足程序的这种需要。
b.要在不影响指令执行速度的同时实现地址变换,必须有硬件地址变换机构的支持,即须在系统中增设一个重定位寄存器,用它来存放程序在内存中的起始地址。
程序在执行时,真正访问的内存地址是相对地址及重定位寄存器中的地址相加而形成的。
2、分区分配算法
分区存储管理中常采用的分配策略有:
首次适应算法、循环首次适应算法、最佳适应算法、最坏适应算法。
a.首次适应算法的优缺点:
保留了高址部分的大空闲区,有利于后到来的大型作业的分配;
低址部分不断被划分,留下许多难以利用的、小的空闲区,且每次分区分配查找时都是从低址部分开始,会增加查找时的系统开销。
b.循环首次适应算法的优缺点:
使内存中的空闲分区分布得更为均匀,减少了查找时的系统开销;
缺乏大的空闲分区,从而导致不能装入大型作业。
c.最佳适应算法的优缺点:
每次分配给文件的都是最适合该文件大小的分区;
内存中留下许多难以利用的小的空闲区。
d.最坏适应算法的优缺点:
给文件分配分区后剩下的的空闲区不至于太小,产生碎片的几率最小,对中小型文件分配分区操作有利;
使存储器中缺乏大的空闲区,对大型文件的分区分配不利。
3、在采用首次适应算法回收内存时,可能出现哪几种情况?
应怎样处理这些情况?
a.回收区及插入点的前一个分区相邻接,此时可将回收区及插入点的前一分区合并,不再为回收分区---分配新表项,而只修改前邻接分区的大小;
b.回收分区及插入点的后一分区相邻接,此时合并两区,然后用回收区的首址作为新空闲区的首址,大---小为两者之和;
c.回收区同时及插入点的前后两个分区邻接,此时将三个分区合并,使用前邻接分区的首址,大小为---三区之和,取消后邻接分区的表项;
d.回收区没有邻接空闲分区,则应为回收区单独建立一个新表项,填写回收区的首址和大小,并根据---其首址,插入到空闲链中的适当位置.
4、存储器管理中页式管理、段式管理的基本原理和特点
5、分页及分段系统中的地址变换
6、分页和分段的主要区别
1、页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率;
或者说,分页仅仅是由于系统管理的需要,而不是用户的需要。
段是信息的逻辑单位,它含有一组其意义相对完整的信息。
分段的目的是为了能更好的满足用户的需要。
2、页的大小固定且由系统确定,把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而一个系统只能有一种大小的页面。
段的长度却不固定,决定于用户所编写的程序,通常由编辑程序在对源程序进行编辑时,根据信息的性质来划分。
3、分页的作业地址空间是维一的,即单一的线性空间,程序员只须利用一个记忆符,即可表示一地址。
分段的作业地址空间是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。
7、在以进程为单位进行对换时,每次是否将整个进程换出?
因为:
a.从结构上讲,进程是由程序段、数据段和进程控制块组成的,其中进程控制块总有部分或全部常驻内存,不被换出。
b.程序段和数据段可能正被若干进程共享,此时它们也不能被换出。
8、局部性原理?
形成原因和表现?
局部性原理表现为哪两个方面局部性原理是指即进程对程序和数据的访问都有聚集成群的倾向,表现为两个方面:
时间局部性。
程序中大量的循环结构和各种数据结构,使某段程序一旦执行,很快又会被再次执行,某些数据结构被访问后,可能在短时间内再次被访问。
空间局部性。
程序顺序执行和局部存储的连续性,使程序访问某存储单元后,及它临近的存储单元会被访问。
9、虚拟存储器?
虚拟存储器的定义
基于局部性原理,一个作业在运行之前,没有必要全部装入内存,而仅将那些当前要运行的那部分页面或段,先装入内存便可启动运行,其余部分暂时留在磁盘上。
虚拟存储器的特征
虚拟存储器最基本的特征是离散性,在此基础上又形成了多次性及对换性的特征。
其所表出来的最重要的特征是虚拟性。
虚拟存储器的特征离散性虚拟性多次性对换性
10、实现虚拟存储器的关键技术
虚拟存储器的实现,毫无例外地都是建立在离散分配存储管理方式的基础上的。
目前,所有的许怒存储管理都是采用下述方式之一实现的。
1)分页请求系统
为了能实现请求调页和置换功能,系统必须提供必要的硬件支持,其中,最重要的是:
(1)请求分页的页表机制。
它是在分页的页表机制上增加若干个项而形成的,作为请求分页的数据结构;
(2)缺页中断机构。
每当用户程序要访问的页面尚未调入内存时,便产生一缺页中断,以请求OS将所缺的页面调入内存;
(3)地址变换机构。
它同样是在分页的地址变换机构的基础上发展形成的。
为了实现请求调页还须得到OS的支持,在实现请求调页功能时,石油OS将所需的页从外存调入内存;
在实现置换功能时,也是由OS将内存的某些页调至外存。
2)请求分段系统
为了实现请求分段,系统同样需要必要的硬件支持:
(1)请求分段的段表机制。
。
这是在钝分段的段表机制基础上,增加若干项而形成的;
(2)缺段中断机构。
每大拇哥用户程序所要访问的所要访问的所尚未调入内存时,产生一缺段中断,请求OS将所缺的段调入内存;
及请求调页类似,实现请求调段和置换功能也需要得到OS的支持。
关键是请求调页(段)技术和页(段)置换技术.
11、页面置换算法:
OPT、FIFO、LRU等
第五章I/O系统
1、I/O设备分类
1.按传输速率分类
低速设备:
每秒几个到数百字节。
如Modem
中速设备:
每秒数千到数万字节。
如打印机
高速设备:
每秒数百K到数兆。
如磁盘、磁带
2、按信息交换的单位分类
字符设备:
I/O传输的单位是字节,如打印机、modem等。
速率较低、中断驱动。
块设备:
I/O传输的单位是块,如磁盘、磁带。
特征:
速率高(几兆)、可随机访问任一块、DMA方式驱动。
3.按使用特性分类:
存储设备
输入输出设备
4按设备的共享属性分类这种分类方式可将I/O设备分为如下三类:
(1)独占设备。
这是指在一段时间内只允许一个用户(进程)访问的设备,即临界资源。
因而,对多个并发进程而言,应互斥地访问这类设备。
系统一旦把这类设备分配给了某进程后,便由该进程独占,直至用完释放。
应当注意,独占设备的分配有可能引起进程死锁。
(2)共享设备。
这是指在一段时间内允许多个进程同时访问的设备。
当然,对于每一时刻而言,该类设备仍然只允许一个进程访问。
显然,共享设备必须是可寻址的和可随机访问的设备。
典型的共享设备是磁盘。
对共享设备不仅可获得良好的设备利用率,而且它也是实现文件系统和数据库系统的物质基础。
(3)虚拟设备。
这是指通过虚拟技术将一台独占设备变换为若干台逻辑设备,供若干个用户(进程)同时使用。
2、为什么引入缓冲?
缓冲类型?
(1)缓和CPU及I/O设备间速度不匹配的矛盾
(2)减少对CPU的中断频率,放宽对CPU的中断响应时间的限制。
(3)提高CPU和I/O设备之间的并行性。
类型:
单缓、双缓、循环缓冲、缓冲池P172
3、设备独立性及其实现
引入设备独立性,可使应用程序独立于具体的物理设备,是设备分配具有灵活性。
另外容易实现I/O重定向。
为了实现设备独立性,必须在设备驱动程序之上设置一层设备独立性软件,用来执行所有I/O设备的公用操作,并向用户层软件提供统一接口。
关键是系统中必须设置一张逻辑设备表LUT用来进行逻辑设备到物理设备的映射,其中每个表目中包含了逻辑设备名、物理设备名和设备驱动程序入口地址三项;
当应用程序用逻辑设备名请求分配I/O设备时,系统必须为它分配相应的物理设备,并在LUT中建立一个表目,以后进程利用该逻辑设备名请求I/O操作时,便可从LUT中得到物理设备名和驱动程序入口地址。
4、设备虚拟?
实现设备虚拟所依赖的主要技术
设备虚拟:
将一台物理I/O设备虚拟为多台逻辑I/O设备,同样允许多个用户共享一台物理I/O设备。
通过SPOOLing技术
5、SPOOLing系统?
组成?
特点?
SPOOLing是SimultaneousPeripheralOperationOn-Line(即外部设备联机并行操作)的缩写,它是关于慢速字符设备如何及计算机主机交换信息的一种技术,通常称为“假脱机技术”。
实际上是一种外围设备同时联机操作技术,又称为排队转储技术。
组成:
(1)输入井和输出井
(2)输入缓冲区和输出缓冲区
(3)输入进程SPi和输出进程SPo
特点:
(1)提高了I/O的速度
(2)将独占设备改造为共享设备
(3)实现了虚拟设备功能
6、磁盘访问时间
(1)寻道时间Ts
(2)旋转延迟时间Tr
(3)传输时间Tt
访问时间Ta=Ts+1/(2r)+b/(rN)
7、磁盘调度算法:
FCFS、SSTF、SCAN、CSCANP194
8、提高磁盘I/O速度的主要方法
磁盘高速缓存、提前读(Read-Ahead)、延迟写、优化物理块的分布、虚拟盘
第六章文件管理
1、文件、记录、数据项
1、数据项
数据项可分成以下两种类型:
(1)基本数据项
这是用于描述一个对象的某种属性的字符集,是数据组织中可以命名的最小逻辑数据单位,即原子数据,又称为数据元素或字段。
(2)组合数据项
它由若干个基本数据项组成简称组项。
基本数据项除了数据名外,还应有数据类型。
2、记录
记录是一组相关数据项的集合,用语描述一个对象某方面的属性。
为了能唯一地标识一个记录,必须在记录的各个数据项中,确定出一个项或几个项,把它们的集合称为关键字(