第9 章 综合模拟试题
9.1 模拟试题(一)
一.判断改错题(判断下列命题的正确性,并对错误命题说明理由,正确命题不加说明。)(10分)
1.一个作业由若干作业步组成,在多道程序系统中这些作业步可以并发执行。
2.多道程序的引入主要是为了提高CPU的利用率。
3.不同进程所包含的程序必定相同。
4,P.V操作中信号量的值,永远代表着某类可用资源的数量。
5.操作系统对进程的管理和控制主要是通过PCB来实现的。
二.单项选择题(10分)
1.实时操作系统必须在________内处理完来自外部的事件。
A.响应时间 B.周转时间
C.被控对象规定时间 D.调度时间
2.操作系统提供给程序员的接口是________。
A.进程 B.系统调用
C.库函数 D.系统调用和库函数
3.操作系统是对____________进行管理的软件。
A.软件 B.硬件
C.计算机资源 D.应用程序
4.联想存储器在计算机系统中是用于_______的。
A.存储文件信息 B.与主存交换信息
C.内存地址变换 D.内存管理信息
5.响应比高者优先作业调度算法是以计算时间和__________来考虑的。
A.输入时间 B.完成时间
C.周转时间 D.等待时间
6.在消息缓冲通信中,消息队列属于_________资源。
A.临界 B.共享
C.永久 D.可剥夺
7.进程间的同步是指进程间在逻辑上的相互__________关系。
A.联接 B.制约
C.继续 D.调用
8.采用资源剥夺法可解除死锁,还可以采用_____方法解除死锁。
A.执行并行操作 B.撤消进程
C.拒绝分配新资源 D.修改信号量
9.实现虚拟存储器的目的是________。
A.实现存储保护 B.实现程序浮动
C.扩充辅存容量 D.扩充主存容量
10.为了解决不同用户文件的"命名冲突"问题,通常在文件系统中采用______。
A.约定的方法 B.多级目录
C.路径 D.索引三.填空(20分)
1.多道程序环境下的各道程序,宏观上它们是在________运行,微观上则是在______执行。
2.并发和____________是操作系统的两个最基本的特征,两者之间互为存在条件。
3.所谓系统调用,就是用户在程序中调用________所提供的一些子功能。
4.确定作业调度算法时应注意系统资源的均衡使用,使_____作业和_____作业搭配运行。
5.临界资源的概念是________,而临界区是指______________。
6.进程是一个__________态概念,而程序是一个__________态概念。
7.处理死锁的方法通常有_______、________和________。
8.重定位的方式有_______和_________两种。
9.UNIX操作系统中进程控制块分为______和__________两部分。
10.从资源管理(分配)的角度出发,I/0设备可分为________、_______和________三种类型。
四.简答题(30分)
1.什么叫多道程序设计?多道程序设计的主要特点是什么?
2.什么是线程?线程与进程的区别是什么?
3.什么是系统功能调用?系统调用与一般用户程序有什么区别?与库函数和实用程序又有什么区别?
4.什么是设备驱动程序?其功能是什么?用户进程怎样使用驱动程序?
5.为什么引进缓冲区? UNIX系统V的缓冲区有哪儿种?
6.提高内存利用率的途径有哪些?
五,综合题(30分)
1.某个采用段式存储管理的系统为装入主存的一个作页建立了段表SMT。
段号
段长
主存起始地址
0
1
2
3
4
660
140
100
580
960
2219
3300
90
1237
1959
(1)给出段式地址转换过程。
(2)计算该作业访问的内存地址(0,432),(1,10),(2,500),(3,400)时的绝对地址。
2.假设系统有同类资源10个,供P、Q、R三个进程共享,P、Q、R所需资源总数分别为8、4、9,它们申请资源的次序和数量如下:
次序
进程
申 请 量
1
2
3
4
5
6

R
P
Q
P
R
Q

2
4
2
2
1
2

按银行家算法为它们分配资源:
(1)写出执行完序号为6的申请时,各进程的状态和已占的资源数。
(2)请估计系统是否会出现死锁,并简要说明理由。
3.进程A1,A2,…An1通过m个缓冲区向进程B1,B2,…Bn2不断地发送消息。发送和接收工作遵循如下规则:
(1)每个发送进程一次发送一个消息,写入一个缓冲区,缓冲区大小等于消息长度;
(2)对每一个消息,B1,B2,…,Bn2都须各接收一次,读入各自的数据区内;
(3)m个缓冲区都满时,发送进程等待;没有可读的消息时,接收进程等待。
试用P、V操作组织正确的发送和接收工作。
模拟试题(一)答案一.判断题改错题
1.错,原因:按顺序执行。
2.对
3.错,原因:只有共享的可再入程序相同。
4.错,原因:信号量为负值时,绝对值表示等待队列中的进程个数。
5.对二.单项选择题
1.C 2.B 3.C 4.C 5.D 6.A 7.B 8.B 9.D 10.B
三.填空
1,并行 串行
2,共享
3,操作系统
4,I/O繁忙 CPU繁忙
5,次仅允许一个进程访问的资源 程序中访问临界资源的那段程序代码
6,动态 静态
7,死锁预防 死锁避免 死锁检测与解除态
8,静态重定为 动态重定位
9,Proc结构 User结构
10,独享   共享 虚拟四,简答题
1.多道程序设计是指把一个以上的程序放在内存中,并且同时处于运行状态,这些程序共享CPU和其它计算机资源。其主要特点是:
(1)CPU的利用率高。在单道环境下,程序独占资源,当程序等待I/0操作时,CPU空闲,造成CPU资源的浪费:在多道环境下,多个程序共享计算机资源,当某个程序等待I/0操作时,CPU可以执行其它的程序,提高了CPU的利用率。
(2)设备利用率高。在多道环境下,内存和外设也由多个程序共享,这样也会提高内存和外设的利用率。
(3)系统吞吐量大。由于资源利用率的提高,减少了程序的等待时间,提高了系统的吞吐率。
2.线程是在进程内用于调度和占有处理机的基本单位,它由线程控制表、存储线程上下文的用户钱以及核心校组成。
线程可分为用户级线程、核心级线程以及用户/核心混合型线程等类型。其中,用户级线程在用户态下执行,CPU调度算法和各线程优先级都由用户设置,与操作系统内核无关;核心级线程的调度算法及线程优先级的控制权在操作系统内核中:混合型线程的控制权则在用户和操作系统内核。
线程与进程的主要区别如下:
(1)进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如内存空间、外设等:线程只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源。
(2)以进程为单位进行处理机调度和切换时,由于涉及到资源转移以及现场保护等问题,将导致处理机切换时间变长,资源利用率低。以线程为单位进行处理机调度和切换时,由于不发生资源变化,特别是地址空间的变化,处理机切换时间较短,处理机效率高。
(3)就用户而言,多线程可以减少用户的等待时间,提高系统的响应速度。例如,当一个进程需要对两个不同服务器进行远程过程调用时,对于无线程的操作系统,就需要顺序等待两个不同调用返回结果后才能继续执行,而且等待中可能发生进程调度。对于多线程系统,则可以在同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。
(4)线程和进程一样,都有自己的状态和相应的同步机制,但是,由于线程没有单独的数据和程序空间,因此,线程不能像进程的程序和数据一样,交换到外存上,因此线程没有挂起状态。
进程的调度、同步控制大多由操作系统内核完成,而线程的控制可以由操作系统内核完成,也可以由用户控制完成。
3.系统调用是操作系统提供给编程人员的唯一接口。编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中已有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供杳关的功能。
它与一般用户程序、库函数和实用程序的区别是:系统功能调用是在程序核心态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。
4.设备驱动程序是驱动外部物理设各和相应的DMA控制器或I/O控制器等设备,使之能直接和内存进行I/O操作的子程序集合。它们负责设置相应设备的有关寄存器,启动I/O操作,指定操作类型和数据流向等。
设备驱动程序屏蔽了直接对硬件操作的细节,为程序员提供了操作设备的良好接口。
用户进程通过调用设备驱动程序提供的接口来使用设各驱动程序。
5.引进缓冲区的目的是为了匹配外设与CPU之间的处理速度,减少中断次数和中断处理时间,解决DMA和通道方式的数据传输瓶颈。
缓冲区分为自由buf队列、空设备队列、设备缓冲区队列、设备I/0请求队列。
6,内存利用率不高,主要表现为以下四种形式:
(1)内存中存在着大量的、分散的、难以利用的碎片。
(2)暂时或长期不能运行的程序和数据,占据了大量的存储空间。
(3)当作业较大时,内存中只能装入少量作业,当它们被阻塞时,将使CPU空闲,从而也就降低了内存的利用率。
(4)内存中存在着重复的拷贝。
针对上述问题,可分别采用下述方法提高内存的利用率:
(1)改连续分配方式为离散分配方式,以减少内存中的零头。
(2)增加对换机制,将那些暂时不能运行的进程或暂时不需要的程序和数据,换出至外存,以腾出内存来装入可运行的进程。
(3)引入动态链接机制,当程序在运行中需要调用某段程序时,才将该段程序由外存装入内存。这样,可以避免装入一些本次运行中不用的程序。
(4)引入虚拟存储器机制,使更多的作业能装入内存,并使CPU更加忙碌。引入虚拟存储器机制,还可以避免装入本次运行中不会用到的那部分程序和数据。
(5)引入存储器共享机制,允许一个正文段或数据段被若干个进程共享,以削减内存中重复的拷贝。
五,综合题
1.(1)A.根据程序编译后形成的逻辑地址,取出段号s,w。
B.根据s在段变换表中查找相应的段起始地址p和该段长1。
C.检查w运l是否成立,若成立则执行E:否则进入D执行。
D.产生地址越界错,程序终止。
E.计算:物理地址=p+w,这就是所要的指令物理地址。
(2) (0,432) 物理地址=2219+432=2651
(1,10) 物理地址=3300+10=3310
(2,500) 因为段内偏移500〉段长100,故报地址越界错
(3,400) 物理地址=1237+400=1637
2,(1)执行完序号为6的申请时,各进程的状态和已占的资源数如下:
P等待
已占用资源4个
Q就绪或运行
已占用资源4个
R等待
己占用资源2个
根据单项银行家算法,过程为:
①R申请2个资源时,剩余资源可使各进程运行结束,所以这个分配是安全的,故将2个资源分给R。
②同理,p,Q分别申请4、2个资源时,剩余资源可使各进程运行结束,所以这个分配也是安全的,故将4、2个资源分给P、Q。
③P申请2个资源时,系统此刻剩余资源数为2,如果将这两个资源分给P,系统就没有资源了。这时的p、Q、R都还需要资源才可运行完,这样,p、Q、R将都进入阻塞状态。所以P申请的这两个资源不能分配。
④同理,接下来R欲申请1个资源也是不安全的分配,故不能分给。
⑤Q申请2个资源时,假定操作系统分给它。Q进程将运行结束,Q释放的资源又可使P运行结束:P运行结束,释放的资源又可使R运行结束。所以这个分配是安全的,故将2个资源分给Q。
(2)不会死锁,因为银行家算法在任何时候均保证至少有一个进程能得到所需的全部资源,这样,得到资源的进程能及时归还资源供其他进程使用。
3.本题是生产者-消费者问题的一个变形,一组生产者A1,A2,…An1和一组消费者B1,B2,…,Bn2共用m个缓冲区,每个缓冲区只要写一次,但需要读n2次。因此,我们可以把这一组缓冲区看成n2组缓冲区,每个发送者需要同时写n2组缓冲区中相应的n2个缓冲区,而每一个接收者只需读它自己对应的那组缓冲区中的对应单元。
在本题中,应设置一个信号量mutex实现诸进程对缓冲区的互斥访问;两个信号量数组empty[n2]和full[n2]描述n2组缓冲区的使用情况。mutex的初值为1,数组empty中元素初值为m,数组full中的元素初值为0。其同步关系描述如下:
int mutex,empty[n2],full[n2];
int 1;
mutex=1;
for(i=O;i<=n2-1;i++)
{
empty[i]=m;
full[i]=0;
}
main( )
{
cobegin
Al( );
A2( );
An1( );
B1( );
B2( );
Bn2( );
Coend
}
send( ) /*发送消息*/
{
int i;
for (i=O;i<=n2-1; i++)
p(empty[i]);
p(mutex);
将消息放入缓冲区;
v(mutex);
for(i=0;i<=n2-1;i++)
v(full[i]);
}
receive (i) /*进程Bi接收消息*/
{
p(full[i]);
p(mutex);
将消息从缓冲区取出;
v(mutex);
v(empty[i]);
}
Ai( ) /*因发送进程A1,A2,…,An1的程序类似,这里只给出进程Ai的描述.*/
{
while(1)
{
send( );
}
}
Bi() /*因接收进程B1,B2,…,Bn2的程序类似,这里只给出进程Bi的描述.*/
{
while(1)
{
receive(i);
}
}
9.2 模拟试题(二)
一.判断改错题(判断下列命题的正确性,并对错误命题说明理由,正确命题不加说明。)(10分)
1.可以将操作系统看作是一个资源分配器,用来控制I/O设备和用户的程序。
2.死锁的形成只与资源分配策略有关,而与并发进程的执行速度无关。
3.在引入线程的操作系统中,线程是资源分配和调度的基本单位。
4.分页存储管理方案易于实现用户使用内存空间的动态扩充。
5.特权指令只能在管态下执行,而不能在算态下执行。
二.单项选择题(10分)
1.在下列语言中属于脱机作业控制语言的是_________。
A.作业控制语言 B.汇编语言 C.会话式程序设计语言 D.解释BASIC
2.操作系统中____________采用了以空间换时间的技术。
A.SPOOLing技术 B.覆盖技术 C.通道技术 D.虚拟存储技术
3.___________是进程调度算法。
A.时间片轮转法 B.先来先服务方法 C.响应比高者优先法 D.均衡调度算法
4.在UNIX文件系统中,为了对盘空间的空闲块进行有效的管理,采用的方法是____。
A.空白文件目录法 B.FAT C.空闲块成组链接法 D.位示图法
5.资源的静态分配法破坏了产生死锁的必要条件的________。
A.互斥控制 B.非剥夺控制 C.逐次请求 D.环路条件
6.在批处理操作系统中,_____反映了作业的运行情况,并且是作业存在的唯一标志。
A.作业状态 B.作业类型 C.作业控制块 D.作业优先级
7.临界区是_____________。
A.一段共享数据区 B.一个缓冲区 C.一段互斥执行的程序段 D.一个互斥资源
8.在请求分页存储管理中,当所访问的页面不在内存时,便产生缺页中断,缺页中断是属于__________。
A.I/O中断 B.程序中断 C.访管中断 D.外中断
9.时钟中断是属于
A.硬件故障中断 B.程序中断 C.输入输出中断 D.外部中断
10.操作系统通过_____________对进程进行管理。
A.进程 B.进程控制块 C.进程启动程序 D.进程控制区三.填空(20分)
1.操作系统提供给用户的接口主要有________、______和_________。
2.为了实现地址变换,在分页系统中设置了页表寄存器,其中存放了_____和________;当进程未执行时,上述信息将存放在________中。
3.在中断驱动方式中,CPU是以_______为单位对I/0 进行干预的;DMA方式时,是以_____为单位进行干预的;I/O通道方式是以_________为单位进行干预的。
4.文件存储空间的分配可采取多种方式,其中,_________方式可使文件顺序访问的效率最高;_____方式则可解决文件存储空间中的碎片问题,但却不支持对文件的随机访问;而UNIX采用的则是__________方式。
5.进程的最基本的特征是______和______在UNIX系统中,可通过系统调用_____来创建进程。
6.使用共享文件进行进程通信的方式被称为_______;而发送进程利用操作系统提供的发送命令,直接将格式化的消息发送给目标进程的通信方式则称为_____________。
7.在用信号量实现对临界资源的互斥访问时,若信号量的初值为2,当前值为 -1,表示有_________个进程等待使用该资源。
8.引入进程的主要目的是_________,进程存在的惟一标志是_______。
四.简答题(30分)
1.什么是多道程序技术?在操作系统中引入该技术,带来了哪些好处?
2.虚拟存储器具有哪些基本特征?实现虚拟存储器的几个关键技术是什么?
3.一个比较完善的文件系统应该具有哪些功能?
4.RAID是通过什么方法来提高磁盘的I/O速度和可靠性的?
5.何谓死锁?为什么将所有资源按类型赋予不同的序号,并规定所有的进程按资源号递增的顺序申请资源后,系统便不会产生死锁?
6.试说明访管指令、特权指令和系统功能调用之间的区别和联系。
五,综合题(30分)
1.计算进程PC和打印进程P01、P02共享一个单缓冲区〉计算进程负责计算,并把计算结果放入单缓冲中:打印进程P01、P02则负责从单缓冲中取出计算结果进行打印,而且对每一个计算结果,P01和P02都需分别打印一次。请用记录型信号量描述上述进程间的同步关系。
2.假设磁盘有200个磁道,磁盘请求队列中是一些随机请求,它们按照到达的次序分别处于98、183、37、122、14、124、65、67号磁道上,当前磁头在53号磁道上,并向磁道号减小的方向上移动。请给出按FCFS、SSTF、SCAN及CSCAN算法进行磁盘调度时满足请求的次序,并计算出它们的平均寻道长度。
3.假设某多道程序设计系统中有供用户使用的内存100K,打印机1台。系统采用可变分区方式管理内存:对打印机采用静态分配,并假设输入输出操作的时间忽略不计;采用最短剩余时间优先的进程调度算法,进程剩余执行时间相同时采用先来先服务算法;进程调度时机选择在执行进程结束时或有新进程到达时。现有一进程序列如下:
进程号
进程到达时间
要求执行时间
要求主存量
申请打印机数(台)
1
0
8
15K
1
2
4
4
30K
1
3
10
1
60K
0
4
11
20
20K
1
5
16
14
10K
1
假设系统优先分配内存的低地址区域,且不许移动己在主存中的进程,请:
(1)给出进程调度算法选中进程的次序,并说明理由。
(2)全部进程执行结束所用的时间是多少?
模拟试题(二)答案一.判断题改错题
1.对
2.错,原因:与进程执行速度有关。
3.错,线程是调度的基本单位,进程是资源分配的基本单位
4.错,原因:分段存储管理易于实现用户使用内存空间的动态扩充。
5.对
二.单项选择题
1.A 2.D 3.A 4.C 5.C 6.C 7.C 8.B 9.D 10.B
三.填空
1.命令接口 图形接口 程序接口。
2.页表长度 页表在内存中的起始地址 该进程的进程控制块。
3.字节 数据块 一组数据块。
4.连续分配 隐式链接分配 混合索引分配。
5.动态性 并发性 fork
6.管道通信 直接通信。
7.1
8.使程序能够正确地并发执行 进程控制块PCB。
四,简答题
1.多道程序技术是指在内存中同时存放若干个作业,并使西IT共享系统的资源,同时运行的技术。
在操作系统中引入多道程序技术带来了以下好处:
(1)提高CPU的利用率。当内存中仅放一道程序时,每逢该程序运行中发出I/O请求后,CPU空闲,必须在其I/0完成后才能继续执行:尤其是I/O设备的低速性,更使CPU的利用率显著降低。在引入多道程序设计技术后,由于可同时把若干道程序装入内存,并可使它们交替地执行,这样,当正在运行的程序因I/O而暂停执行时,系统可调度另一道程序执行,从而可保持CPU处于忙状态,使CPU的利用率提高。
(2)可提高内存和UO设备的利用率。为了能运行较大的作业,通常内存都具有较大的容量,但由于80%以上的作业都属于中、小型作业,因此在单道程序的环境下也必定造成内存的浪费。类似地,系统中所配置的多种类型的I/0设备,在单道程序环境下,也不能充分利用。如果允许在内存中装入多道程序,并允许它们并发执行,则无疑会有如提高内存和I/0设备的利用率。
(3)增加系统吞吐量。在保持CPU、I/0设备不断忙碌的同时写也必然会大幅度地提高系统的吞吐量,从而降低作业加工所需费用。
2.虚拟存储器的基本特征有:
(1)多次性:作业只要部分装入内存便可后动执行;其余部分可待需要时再调入内存,即一个作业将分成多次装入内存。
(2)对换性:在进程运行期间,允许将那些暂不使用的程序和数据从内存魄至外存的对换区(换出),待以后需要时再将它们从外存调入内存(换入)。
(3)离散性:实现虚拟存储器必须采用离散的分配技术,而连续的分配技术无法实现虚拟存储器的功能。
(4)虚拟性:虚拟存储器只是在逻辑上扩充内存容量,而实际的内存容量并没有真正扩大。
实现虚拟存储器的关键技术有以下两个:
①请求调页(段)技术:这是指及时将进程所要访问的、不在内存中的页(段)调入内存。
该功能是由硬件(缺页(段)中断机构)发现缺页(段)和软件(将所需页(段)调入内存)配合实现的。
②置换页(段)技术:当内存中已无足够空间用来装入即将调入的页(段)时,为了保证进程能继续运行,系统必须换出内存中的部分页(段),以腾出足够的空间,将所嚣的页(段)调入内存。具体的置换操作并不复杂,其关键是应将哪些页(段)换出,即采取什么置换算法。
3.一个比较完善的文件系统应该具备以下功能:
(1)文件存储空间的管理:通过文件存储空间的管理,使文件"各得其所",并且尽量提高文件存储空间的利用率。
(2)目录管理:通过目录管理,实现对文件的按名存取,提高对文件的检索速度,解决文件的命名冲突问题(允许文件重名),并实现多个文件的共享。
(3)文件的读写管理:通过对文件的读写管理,能快速地从磁盘上读出文件中的数据,或快速地将数据写到磁盘用。
(4)文件的安全性管理:采用一系列措施〈如多级文件保护措施)对系统中的文件进行保护,以防文件被盗窃、修改和破坏。
(5)提供用户接口:向用户提供-个统二的、使用方便的接口,使用户可通过该接口方便地取得文件系统的服务(如文件存取服务,创建文件、删除文件、修改文件等文件管理服务)。
4.RAID利用一台磁盘阵列控制器来统一管理和控制一组(儿台到儿十台〉磁盘驱动器,用户数据和系统数据可分布在阵列的所有磁盘中,而阵列中的所有磁盘驱动器可并行交叉地进行数据传输,因此它可大大地提高数据传输的速度。
RAID方案可分成RAID0-RAID7这几级,除了RAID0外,其他各级都采用了容错技术。如RAID1采用了磁盘镜像功能,阵列中的每个磁盘都有一个镜像盘;RAID3则专门使用了一台奇偶校验盘,其中每气位用来存放根据其他磁盘中同一位置的数据位计算出来的奇偶校验码,从而使得某个磁盘发生故障时,3可通过其余设备重新构造数据:RAIP5将奇偶校验码以螺旋方式散布到各个数据盘中;RAID6中采用了两种不同的校验算法计算校验码,并将它们保存在不同磁盘中,因此RAID可显著地提高磁盘的可靠性。
5.所谓死锁,是指多个进程在运行过程中因争夺资源而造成的一种僵局,若无外力作用,这些进程都将无法再向前推进。
此时系统不会发生死锁的原因是死锁产生的必要条件之一循环等待条件不可能成立。因为多个进程之间只可能存在占据较低序号资源的进程等待占据较高序号资源的进程释放资源的情况,但不可能存在反向的等待,因此,它们之间绝对不会形成循环等待链。
6.访管指令是一类机器指令,执行访管指令可以引起访管中断。访管指令不是特权指令,它可以在算态下执行,也可以在管态下执行;特权指令也是一类机器指令,特权指令只能在管态下执行;系统调用不是机器指令,每个系统调用命令相当于一个函数,该函数实现操作系统提供的一种子功能。用户编程时也可以使用这些系统调用命令。
在系统调用命令中,总是包含一条访管指令,当系统调用执行到访管指令时,就引起访管中断。在进入中断处理程序后便由算态进入管态,在管态下,可以执行特权指令以完成操作系统提供的功能。当中断处理程序结束后又从管态返回到算态。
当用户程序想要操作系统提供服务时,就可在用户程序中使用系统调用命令,它是操作系统与用户的编程接口。
五,综合题
1.为了实现计算进程和打印进程之间的同步,并使单缓冲中的每个计算结果都被两个打印进程分别打印一次,可设置四个信号量:full1表示缓冲中是否有可供PO1打印的计算结果,full2表示缓冲中是否有可给P02打印的计算结果:emptyl、empty2则表示计算结果是否已被P01、P02取走,只有当一个结果被两个打印进程都取走后,缓冲区才变空,计算进程才可将下一个计算结果放入单缓冲。相应的同步算法可描述如下:
Var empty1,empty2,full1,full2:semaphore:=1,10,0;
begin
parbegin
PC,begin
repeat
compute next number;
P(empty1);
P(empty2);
add the number to buffer;
V(full1);
V(full2);
Until false;
end
P01:begin
repeat
P(full1);
take from buffer;
V(empty1);
print last number;
until false;
end
P02:begin
repeat
P(full2);
take from buffer;
V(empty2);
print last number;
until false;
end
parend
end
2.磁盘调度的次序以及它们的平均寻道长度如下表所示。
表磁盘调度的次序以及平均寻道时间
FCFS
SSTF
SCAN
CSCAN
被访问的下一个磁道号
移动的磁道数
被访问的下一个磁道号
移动的磁道数
被访问的下一个磁道号
移动的磁道数
被访问的下一个磁道号
移动的磁道数
98
45
65
12
37
16
37
16
183
85
67
2
14
23
14
23
37
146
37
30
65
51
183
169
122
85
14
23
67
2
124
59
14
108
98
84
98
31
122
2
124
110
122
24
122
24
98
24
65
59
124
2
124
2
67
31
67
2
183
59
183
59
65
2
平均寻道长度80
平均寻道长度约5
平均寻道长度26
平均寻道长度4075
3.(1)进程调度情况如下:
时刻0:Pl到达。由于系统中只有一个就绪进程P1,故选中Pl投入执行。
时刻4:P2到达。P1已执行4个时间片,而已因申请打印机而阻塞,系统中具备执行条件的仍只有P1,故仍然选中Pl投入执行。
时刻8:Pl结束。P2将得到Pl释放的打印机,从阻塞变为就绪,且它是系统中惟一的进程,故选中P2投入执行。
时刻10:P3到达。P2已执行2个时间片,而P3则因申请内存而阻塞,故仍选中P2投入执行。
时刻11:P4到达。P2己执行3个时间片,P3仍阻塞,P4则因申请打印机而阻塞,故仍将选中P2投入执行。
时刻12:P2结束。P2由于终止而释放内存和打印机,但P3所申请的内存空间仍得不到满足,而P4则将得到打印机转为就绪状态,故将选中巳投入执行。
时刻16:P5到达。P3仍阻塞,P4己执行4个时间片,R则因申请打印机而阻塞,故仍选中P4投入执行。
时刻32:P4结束。P4由于终止丽释放内存和打印机,P3将获得足够的内存转为就绪状态,P5获得打印机转为就绪,但因P3要求执行的时间为1,短于民的执行时间14,故将选中P3投入执行。
时刻33:P3结束。R是系统中惟一就绪的进程,故将选中P5投入执行,i并在时刻47,所有进程执行完毕。
从以上分析可看出,选中进程的顺序为Pl、P2、P4、P3、P5。
(2)时刻47,所有的进程执行完毕。
9.3模拟试题(三)
一.判断改错题(判断下列命题的正确性,并对错误命题说明理由,正确命题不加说明。)(10分)
1.进程A、B共享变量x,需要互斥执行;进程B、C共享变量y,B、C也需要互斥执行,因此,进程A、C必须互斥执行。
2.为了提高系统资源的利用率,在作业调度的优先级算法中应该规定,计算型作业的优先级较高,I/O型作业的优先级较低。
3.I/0交通管理程序的主要功能是管理主存控制器和通道。
4.采用资源静态分配法可以预防死锁的发生。
5.移臂调度的目标是使磁盘旋转周数最小。
二.单项选择题(10分)
1.从资源分配角度看,外设可分为若干种,其中不包括_________。
A.虚拟设备 B.物理设备 C.独占设备 D.共享设备
2.进程队列的组织通常采用________。
A.线性表法 B.位示图法 C.SMT法 D.进程的家族关系
3.在可变式分配方案中,最佳适应算法是将空白区在空白区表中_______按次序排列。
A.地址递增 B.地址递减 C.容量递增 D.容量递减
4.如果有三个进程共享同一互斥段,而且每次最多允许两个进程进入该互斥段,则信号量的初值应设置为
A.3 B.1 C.2 D.0
5.在UNIX中,文件的逻辑结构是__________。
A.记录式结构 B.无结构流式结构 C.串联文件结构 D.树型文件结构
6.在UNIX SystemV操作系统中,存储管理采用___________方案。
A.段式管理 B.请求分页管理 C.可变式分区管理 D.固定式分区管理
7.空白文件目录法用于______________。
A.主存空间的管理 B.文件存储空间的管理
C.虚存空间的管理 D.外设的分配与回收
8.UNIX文件的目录结构采用
A.简单目录 B.二级目录 C.树形目录 D.带交叉勾连的树形目录
9.虚存是________。
A.容量扩大了的内存 B.提高运算速度的设各
C.实际不存在的存储器 D.进程的地址空间及其内存扩大方法
10.在多道批处理系统中,用户的作业是由____组成的。
A.程序 B.程序、数据
C.程序、作业说明书 D.程序、数据、作业说明书三.填空(20分)
1.把一个能被多个用户同时调用的程序称为__________程序。
2.当有多个进程等待分配处理机时,系统按一种规定的策略从多个处于_______状态的进程中选择一个进程,让它占有处理机,被选中的进程就进入了_______状态。
3.采用批处理控制方式的系统,用户提交作业前必须使用_____________编写______,以指出作业加工的步骤。
4.一个作业的运行时间假设为1个小时,它在系统中等待了3个小时,那么该作业的周转时间为______________,而响应比为______________。
5.在多道批处理系统中,通常采用以下两种作业调度算法:____________、________。
6.文件的逻辑结构通常采用两种形式:一是_______文件,二是________文件。
7.在操作系统的发展过程中,_________和__________的出现,标志着操作系统的正式形成。
8.在请求分页系统中,反复进行入页和出页的现象称为____________。
9._______________再定位是在程序执行期间,在每次存储之前进行的。
10.多道程序设计的特点是________、_____________、________。
11.I/O设备的分配,通常采用的两种算法是:_________、___________。
四,简答题(30分)
1.对临界区管理的要求是什么?
2.在UNIX操作系统的进程控制块中,哪些部分是长驻内存的?其优点是什么?
3.何谓纯代码?它的主要用途是什么?
4.段式存储器管理和页式存储管理的区别是什么?
5.文件系统的基本功能是什么?
6.简述UNIX操作系统中进程映像的组成。
五,综合题(30分)
1.在一个分页存储管理系统中,页面大小为4阻,系统中的地址寄存器占24位,假定页表如下:
页号
块号
0
3
1
4
2
9
3
7
现假定一逻辑地址,页号为3,页内地址为20,试设计相应的物理地址,并画出图来说明地址变换过程。
2.假定磁盘的存取臂现在正处于M柱面上,有如下四个请求者等待访问磁盘,试写出最省时的响应顺序,并计算存取臂移动的总量:
请求者
柱面号
磁道号
块号
1
9
6
3
2
7
5
6
3
20
20
6
4
15
15
2
3.有一只笼子,每次只能放一只动物,猎手向笼中放猴子,农民向笼中放猪,动物园等买笼中的猴子,饭店等买笼中的猪,试用P、V操作写出它们能同步执行的程序。
模拟试题(三)答案一.判断改错题
1.错,原因:不传递。
2.错,原因:I/O型作业的优先级高。
3.错,原因:I/O交通管理程序的主要功能是管理设备、控制器和通道。
4.对
5.错,原因:移臂调度的目标是使磁盘寻道时间最短。
二.单项选择题
1.B 2.A 3.C 4.C 5.B 6.B 7.B 8.D 9.D 10.D
三.填空
1.可再入式
2.就绪 运行
3.作业控制语言JCL 作业说明书
4,4小时 4
5.优先级调度算法 均衡调度算法
6.有结构的记录式 无结构的流式
7.多道程序设计 分时系统
8.系统抖动
9.动态地址
10.多道 宏观上并行 微观上串行
11.先请求先服务 优先级高者优先四,简答题
1.对临界区管理的要求是:
(1)当有若干个进程要求进入它们的临界区时,应在有限的时间内使一个进程进入临界区,进程之间不应相互等待而使谁都不能进入临界区。
(2)每次只允许一个进程进入临界区内。
(3)进程在临界区内逗留应在有限的时间范围内。
2.UNIX操作系统的进程控制块包括两部分:一部分是进程基本控制块(PROC结构),它存放着进程的一些基本控制信息:另一部分称为进程扩充控制块(USER结构),主要存放进程不在处理机上运行时,系统就不访问的信息。
PROC结构中存放的是系统经常使用和更新的信息,需要快速访问,所以将其常驻内存。如果把进程的所有信息都放在内存中,将造成很大的内存开销。所以,在UNIX中将USER结构存放在盘交换区中。当某个进程正在CPU执行时,其PROC和USER结构均驻留在内存中,这就提高了访问进程的速度。当CPIJ切换到其他进程执行时,把该进程的USER结构切换到盘交换区中,以便给其他进程较大的内存空间。
3.纯代码是能够被多个进程共享的程序段,代码不因程序的执行而改变,又称为重入码。纯代码的主要作用就是可被多个程序共享。并不是所有的程序段都是可被多个进程共享的,非可重入码被多个进程共享时可能出现错误。
4.分页和分段都采用离散分配方式,它们的区别是:
(1)页式管理中源程序进行编译连接时是将主程序、子程序、数据区等按照线性空间的一维地址顺序排列起来。段式管理则是将程序按照内容或过程(函数)关系分成段,每段拥有自己的名字。一个用户作业或进程所包含的段对应于一个二维线性虚拟空间,也就是一个二维虚拟存储器。
(2)同动态页式管理一样,段式管理也提供了内外存统一管理的虚存实现技术。与页式管理不同的是:段式虚存每次交换的是一段有意义的信息,而不是像页式虚存管理那样只交换固定大小的页,从而需要多次的缺页中断才能把所需要的信息完整地调入内存。
(3)在段式管理中,段长可根据需要动态地增长。这对那些需要不断增加或改变新数据或子程序的段来说,将是非常有好处的。
(4)段式管理便于对具有完整逻辑功能的信息段进行共享。
(5阶段式管理便于进行动态链接,而页式管理进行动态链接的过程比较复杂。
5.文件系统是操作系统中与管理文件有关的软件和数据。
文件系统的功能是为用户建立、撤销、读写、修改和复制文件,以完成对文件的按名存取和进行存取控制。
6.UNIX操作系统中进程映像包含,PROC结构、user结构、用户校和核心校的内容,以及用户地址空间的共享正文段、数据区、工作区。
(1)UNIX操作系统的进程控制块包括两个部分:一个部分是进程基本控制块(proc结构),它存放着进程的一些基本控制信息:另一个部分称为进程扩充控制块(user结构),主要存放进程不在处理机上运行时,系统就不访问的信息。
(2)共享正文段:进程执行的程序若用可重入码编写则可为若干个进程共享执行,构成共享正文段。
(3)数据区:进程执行程序时用到的数据。
(4)工作区:进程在核心态下运行时的工作区为核心钱:在用户态下运行的工作区为用户栈。
五,综合题
1.地址变换过程如下图所示。
页表地址寄存器
逻辑地址
3
20
页号
块号
0
3
1
4
2
9
3
7
7
20
物理地址=a +7×1024+20
=a +7188(a为起始地址)
2.响应顺序:2、1、4、3
移臂总量:(8-7)+(9一7)+(15-9)+(20-15)=14
3.这个问题实际上可看作是两个生产者和两个消费者共享了一个仅能存放一件产品的缓冲器。生产者各自生产不同的产品,消费者各自取自己需要的产品。利用P、V操作编程为:
猎手进程 农民进程 动物园进程 饭店进程
P(S) P(S) P(S1) P(S2)
放入虎 放入猪 买老虎 买猪
V(S1) V(S2) V(S) V(S)
信号量初值:S=1,S1=0,S2=0。
也可以将这四个进程用程序表示为:
begin
S,S1,S2:semaphore;
S=1,S1=O,S2=O;
parbegin
process hunter
begin
L1:have a tiger;
P(S);
put a tiger;
V(S1);
go to L1
end ;
process peasant
begin
L2:have a tiger;
P(S);
put a pig;
V(S2);
go to L2
end;
process hotel
begin
L3:P(S1);
get a pig;
V(S);
eat a pig;
go to L3
end ;
process zoo
begin
L4:P(S2);
get a tiger;
V(S);
eat a tiger;
goto L4;
end;
parend
end
9.4 模拟试题(四)
一.判断改错题(判断下列命题的正确性,并对错误命题说明理由,正确命题不加说明。)(10分)
1.LRU页面调度算法总是选择在主存驻留时间最长的页面被淘汰。
2.磁盘是共享设备,所以每一时刻可有若干个进程同时与它交换信息。
3.分时系统中,时间片设置得越小,则平均响应时间越短。
4.多个进程可以对应于同一个程序,且一个进程也可能会执行多个程序。
5.设备独立性是指系统具有使用不同设备的能力。
二.单项选择题(10分)
1.UNIX文件系统中的巨型文件中,最大的逻辑块号码是___________。
A.7*256+256*256-1 B.7*256 C.256 D.8
2.位示图用于__________。
A.页面置换 B.磁盘空间管理 C.文件目录查找 D.磁盘驱动调度
3.在一个可变式分区管理中,最差适应算法应将空闲区按_______的次序排列。
A.地址递增 B.地址递减 C.容量递增 D.容量递减
4.设有两个进程共享3个同类资源,为使系统不死锁,每个进程最多可以申请___个资源。
A.O B.1 C.2 D.3
5.进程从运行状态到等待状态可能是由于_______。
A.运行进程执行了P操作 B.进程调度程序的调度
C.现运行进程时间片用完 D.现运行进程执行了V操作
6.作业调度中的先来先服务算法是以_______为出发点考虑的。
A.作业执行时间 B.作业的周转时间
C.作业等待时间 D.等待时间加运行时间
7.一个作业一般可以分为几个必须顺序处理的作业步,这些作业步是由的。
A.用户指定 B.操作系统规定 C.装入程序决定 D.程序员指定
8.采用固定分区方式分配主存的最大缺点是_______。
A.不利于存储保护 B.分配算法复杂 C.主存利用率不高 D.零头太多
9.磁盘是共享设备,每一时刻进程在使用磁盘。
A.一个 B.至少一个 C.限定N个 D.由磁盘容量决定
10.采用树形目录结构可以_______
A.缩短查找文件的时间 B.节省存储空间
C.减少文件的传送时间 D.存储更多的文件三.填空(20分)
1.计算机只有处于_________时,才能执行特权指令,否则被认为是非法指令。
2.在多道程序设计系统中,可把因某种原因进入阻塞态进程的_________链接在一起,构成阻塞进程队列。
3.用户编制程序时使用__________地址,处理机访问存储器时使用__________地址。
4.当处理机执行完一条指令后,硬件的_________立即检查有无中断事件发生,若有,则暂停现在运行的进程的执行,调用操作系统的_____________加以处理。
5.把逻辑文件存放在存储介质上,如果组成________或_________,则逻辑记录可以不必存放在连续的存储块中。
6.为了记录设备的分配情况,操作系统应设置一张_____________。
7.采用批处理的控制系统,用户提交作业前必须使用__________编写_______________来指出作业加工的步骤。
8.在进行多种资源分配时,可使用__________算法避免死锁。
9.计算机系统为每一台设备确定一个编号,称为设备的__________。
10.UNIX的管道机制pipe是连接在进程间的_________,称为_____________。
11.在UNIX中,一个进程采用________来创建新进程,创建和被创建的进程间形成父子关系。父子间可以__________执行,子进程继承父进程的_____________,进程终止可以使用_________,而父进程可以使用___________等待其子进程的终止。
四.简答题(30分)
1.什么是请求分页存储管理的缺页中断率?影响缺页中断率的因素有哪些?
2.设备分配中为什么可能出现死锁?
3.对临界资源区的管理和使用的基本要求是什么?
4.简述常用的页面调度算法。
5.什么是记录的成组和分解?
6.什么是UNIX进程的对换空间?怎样管理对换空间?
五,综合题(30分)
1.有三个进程P1,P2和P3并发工作。进程P1需用资源S3和S1;进程P2需用资源S1和SL进程P3需用资源S2和S3。回答:
(1)若对资源分配不加限制,会发生什么情况?为什么?
(2)为保证进程正确工作,应采用怎样的资源分配策略?为什么?
2.设有五道作业,它们的提交时间和运行时间见下表,试给出在下面两种调度算法下,作业的执行顺序和平均周转时间:
(1)先来先服务调度算法:
(2)短作业优先调度算法。
作业名
提交时间|
需执行时间
J1
10.1时
0.3小时
J2
10.3时
0.5小时
J3
10.5时
0.4小时
J4
10.6时
0.3小时
J5
10.7时
0.2小时
3.在一个请求分页存储管理中,一个程序的页面走向为6,0,1,2,0,3,0,4,2,3,采用LRU页面置换算法,设分配给该程序的存储块数M=3,每调进一个新页就发生一次缺页中断。
(1)试完成下表:
时刻
1 2 3 4 5 6 7 8 9 10
P
6 0 1 2 0 3 0 4 2 3
M=3
F
(2)求:缺页中断次数F=___________________。
缺页率f=_________________。
模拟试题(四)答案一.判断题改错题
1.错,原因:是选择最长时间没有被用的页面被淘汰。
2.错,原因:每一时刻只有一个进程与它交换信息。
3.错,原因:平均响应时间不但与时间片的大小有关,还与其他因素有关。
4.对
5.错,原因:设备独立性,可使应用程序独立于具体的物理设备和独立于设备的类型二.单项选择题
1.A 2.B 3.D 4.C 5.A 6.C 7.B 8.C 9.A 10.A
三.填空(20分)
1.管态
2.PCB
3.符号名(或名地址) 物理
4.中断装置 中断处理程序
5.链接文件 索引文件
6.系统设备表
7.JCL 作业说明书
8.多项银行家
9.绝对编号
10.可共享文件 pipe文件
11.系统调用fork() 并行 proc、user、栈、用户数据区等 系统调用exit()
系统调用wait()
四.简答题
1.缺页中断率=缺页中断次数/访问页面的总次数影响请求分页缺页中断率的因素有,①分配给作业的主存块数;②页面的大小;③程序的局部化程度;④页面调度算法。
2.在多道程序系统中,可使CPU和I/0设备并行工作,使某些进程以命令形式发出I/O 请求后,不进入阻塞状态,仍可以继续运行,需要时还可以发出多个UO请求。仅当进程所请求的设备为另一个进程占用时才进入阻塞状态。这样就可以使进程同时操作多个外部设备。这种多请求方式,导致了设备分配的不安全,因而就可能出现死锁。
3.没有进程在临界区内时,若有进程想进入临界区,可以允许一个进程进入临界区。当已有进程进入临界区时,其他欲进入临界区的进程必须等待。
当一个进程离开临界区时,若发现有进程正在等待进入临界区,则要唤醒这些进程。
4.常用的页面调度算法有:先进先出算法(FIFO)、最近最久未使用算法(LRU)和最近不常用算法(LFU)。
(1)FIFO:总是选择最先进入主存的页面调出。FIFO算法简单,易实现,但奋时缺页中断率较高。
(2)LRU:基于程序的局部性原理,总是选择距现在最长时间内没有被访问的页面先调出。其特点是实现麻烦,系统开销大,缺页中断率低。
(3)LFU:根据一段时间里页面被访问的次数,选择被访问次数少的页面先调出。LFU方法需要为页面增加计时器,算法开销大,确定重新计时周期T的难度大,缺页中断率低。
5.(1)把若干逻辑记录合并成一组,存入一个物理块的工作称为记录的成组。
(2)从一组中把一个逻辑记录分离出来的工作称为记录的分解。
6.UNIX系统在磁盘上开辟了一个足够大的区域,称为对换区,作为内存的逻辑扩充,解决进程之间的内存竞争。系统空间是操作系统程序所占用的内存空间,长驻内存;用户程序所占用的空间称为进程空间,把一个进程换出到对换区是指腾出该进程所占用的进程空间。
UNIX系统对对换空间采用最先适应分配算法进行管理。
对换空间是由一组连续的磁盘块组成的,每个块空间大小相同,对换空间以块为单位进行分配。为了管理对换空间,在内存中设置了一个数组即映射图,其中每一项是一个记录,用来登录空闲的对换空间。该记录有两个域,分别用于登录对换空间的起始地址和该空闲块组的块数。
五,综合题(30分)
1.(1)可能会发生死锁现象。例如,进程P1,P2和P3分别获得资源S3,S1和S2后再继续申请资源时都要等待,这是循环等待。
(2)可有几种答案:
①采用静态分配,由于执行前已获得所需的全部资源,故不会出现占有资源又等待别的资源的现象(或不会出现循环等待资源现象)。
②采用按序分配,不会出现循环等待资源现象。
③采用银行家算法,在分配时,保证了系统处于安全状态。
2,(1)采用先来先服务(FCFS)算法:
作业名
提交时间
需执行时间
开始运行时间
完成时间
J1
10.1小时
0.3小时
10.1小时
10.4小时
J2
10.3小时
0.5小时
10.4小时
10.9小时
J3
10.5小时
0.4小时
10.9小时
11.3小时
J4
10.6小时
0.3小时
11.3小时
11.6小时
J5
10.7小时
0.2小时
11.6小时
11.8小时
J1,J2,13,J4,15
T=[(10.4-101)+(10.9-103)+(113-105)+(11.6-10.6)+(11.8-10.7)]/5
=3.8/5=0.76h
(2)短作业优先调度(SJF)算法:
作业名
提交时间
需执行时间
开始运行时间
完成时间
J1
10.1小时
0.3小时
10.1小时
10.4小时
J2
10.3小时
0.5小时
10.4小时
10.9小时
J3
10.5小时
0.4小时
11.4小时
11.8小时
J4
10.6小时
0.3小时
11.1小时
11.4小时
J5
10.7小时
0.2小时
10.9小时
11.1小时
J1,J2,J5,14,J3
T=[(10.4-101)+(10.9-103)+(11.8-105)+(11.4-10.6)+(11.1一10.7)]/5
=3.4/5=0.68h
3.(1)完成表如下所示:
时刻
1 2 3 4 5 6 7 8 9 10
P
6 0 1 2 0 3 0 4 2 3
M=3
6 0 1 2 0 3 0 4 2 3
6 0 1 2 0 3 0 4 2
6 0 1 2 2 3 0 4
F
1 2 3 4 5 6 7 8
(2)缺页中断次数F=8。
缺页率f=8/10。
9.5 模拟试题(五)
一,判断题(判断下列命题的正确性,并对错误命题说明理由,正确命题不加说明。)(10分)
1.采用多道程序设计的系统中,系统的道数越多,系统的效率越高。
2.采用资源静态分配法可以预防死锁的发生。
3.I/0交通管理程序的主要功能是管理主存控制器和通道。
4.移臂调度的目标是使磁盘旋转周数最小。
5.对系统状态图进行化简,可以检测死锁。
二.单项选择题(10分)
1.UNIX文件的目录结构采用
A.简单目录 B.二级目录 C.树形目录 D.带交叉勾连的树形目录
2.在可变式分配方案中,最先适应算法是将空白区在空白区表中按______次序排列。
A.地址递增 B.地址递减 C.容量递增 D.容量递减
3.设m为同类资源数,n为系统中的并发进程数。当n个进程共享m个互斥资源时,每个进程的最大需求是W。下列情况下,系统会死锁的是________。
A.m=2,n=1,W=2 B.m=2,n=2,W=1 C.m=4,n=3,W=2 D.m=4,n=2,W=3
4.在UNIX系统V中,用户通过____________读取磁盘文件中的数据。
A.系统功能调用 B.作业申请表 C.原语 D.中断
5.UNIX系统V的进程调度原理是基于____________。
A.最短作业优先 B.时间片调度 C.时间片加优先级 D.先来先调度
6.存储管理方案中,____________可采用覆盖技术。
A.单一连续区 B.可变分区 C.段式 D.段页式
7.通过硬件和软件的功能扩充,把原来独占的设备改造成若干用户共享的设备,这种设备称为______________。
A.系统设备 B.存储设备 C.用户设备 D.虚拟设备
8.以下关于UNIX文件和文件系统的说法中错误的是________。
A.UNIX采用流式文件逻辑结构和索引文件物理结构
B.UNIX文件系统分为基本文件系统和扩充文件系统两部分
C.在UNIX中把外围设备也当作文件看待,称为设各文件
D.UNIX采用的是树形目录结构
9.分页式虚拟存储系统中,页面的大小与可能产生的缺页中断次数_______。
A.成正比 B.成反比 C.无关 D.成固定比值
10.在操作系统中,每个进程具有独立性,进程之间又具有相互制约性。对于任何两个并发进程,它们____________。
A.必定无关 B.必定相关 C.可能相关 D.可能相同三.填空(20分)
1.操作系统的主要特点是_______、________、________。
2.在单CPU系统中,CPU和_____________是并行工作的。
3.作业控制方式有_________和_________两种方式。
4.操作系统为程序员提供的接口是___________,为一般用户提供的接口是________。
5.UNIX的0#进程的主要功能是创建用户进程、___________、_____________。
6.存储管理中的地址转换是指把程序中的_____地址转换成为______地址。
7.SPOOLing技术不仅提高了_____设备的利用率,而且还为用户提供了______设备。
8.对每个索引结构的文件,都要建立一张索引表,其中每一个表项至少应包含____和_____。
9.利用通道能实现_________和________之间的信息双向传输。
10.为实现多道程序设计,计算机系统在硬件方面必须提供两种支持,它们是_________
和_____________________。
四.简答题(30分)
1.简述引进线程的好处。
2.在设计实时系统时要考虑哪些问题?
3.试说明访管指令、特权指令和系统功能调用之间的区别和联系。
4.试给出I/O调度算法,为什么在I/O调度中不能采用时间片轮转调度?
5.文件存储空间的管理有哪些常用的方法?
6.阐述UNIX文件系统的特点,并解释UNIX怎样进行文件检索。
五,综合题(30分)
1.系统采用不能移动已在主存中的作业的可变分区管理主存。现有用户可用空间100KB,系统有4台打印机,有一批作业为:
作业号
到达时间
运行时间
需主存量
需打印机数
1
2
3
4
5
10:00
10:20
10:30
10:35
10:40
25s
30s
10s
20s
15s
15KB
60KB
50KB
10KB
30KB
2
1
3
2
2
系统采用多道程序设计技术,资源的静态分配法,忽略设备工作时间和系统进行调度所花的时间。请分别给出采用FCFS、短作业优先调度算法运行时作业的调度顺序和其平均周转时间。
2.请用信号量解决以下的"过独木桥"问题:同一方向的行人可连续过桥,当某一方向有人过桥时,另一方向的行人必须等待;当某一方向无人过桥时,另一方向的行人可以过桥。
3.某个文件系统,采用混合索引分配方式,其FCB中共有13个地址项,每个盘块的太小为512字节,请回答下列问题:
(1)如果每个盘块号只需要用2个字节来描述,则该系统需要设置几次间址项?
(2)如果每个盘块号需要用3个字节来描述,并允许每个盘块中存放170个盘块地址,而且,系统采用10个直接地址项、1个一次间址项、1个二次间址项和1个三次间址项,则对某个长度为18 000 000字节的文件,它需占用多少个盘块(包括间址块)?
模拟试题(五)答案一,判断题
1.错,原因:采用多道程序设计的系统中,系统效率不取决于道数。
2.对
3.错,原因:I/O交通管理程序的主要功能是管理设备、控制器和通道。
4.错,原因:移臂调度的目标是使磁盘寻道时间最短。
5.对二.单项选择题
1.D 2.A 3.D 4.A 5.C 6.A 7.D 8.B 9.B 10.C
三.填空
1.并发的执行 资源共享 不确定性
2.输入输出设备
3.脱机控制 联机控制
4.系统调用 命令界面
5.交换 调度
6.逻辑 物理
7.外围 虚拟
8.逻辑块号 物理块号
9.外设 内存
10.中断 通道四.简答题
1.引进线程的好处为:
(1)以线程作为系统调度的基本单位,减少了系统的时空开销。以进程为系统调度的基本单位的系统中,进程的切换是很频繁的。在切换中由于要保留当时的运行环境,还要设置新选中的进程的运行环境,这既花费了处理机的时间,又增加了主存的空间,从而也限制了系统进程的数量和进程的切换速度。
(2)引进线程提高了系统的并行能力。线程作为进程内的一个可执行实体,减少了并行粒度。线程作为调度的基本单位而不是资源分配的基本单位,调度更为容易,而且采用线程提高系统的并行能力比采用进程更为有效。
(3)同一进程的线程共享进程的用户地址空间,所以同一进程的线程间的通信更容易实现。
2.实时系统设计时应考虑下列问题:
(1)实时时钟管理;(2)连续人机对话;(3)过载保护;(4)高可靠性措施。
3.访管指令是一类机器指令,执行访管指令可以引起访管中断。访管指令不是特权指令,它可以在算态下执行,也可以在管态下执行。
特权指令也是一类机器指令,特权指令只能在管态下执行。
系统调用不是机器指令,每个系统调用命令相当于一个函数,该函数实现操作系统提供的一种子功能。用户编程时也可以使用这些系统调用命令。
在系统调用命令中,总是包含一条访管指令,当系统调用执行到访管指令时,就引起访管中断。在进入中断处理程序后便由算态进入管态,在管态下,可以执行特权指令以完成操作系统提供的功能。当中断处理程序结束后又从管态返回到算态。
当用户程序想要操作系统提供服务时,就可在用户程序中使用系统调用命令,它是操作系统与用户的编程接口。
4.I/O调度算法如下所述:
(1)先来先服务。按进程请求I/0的先后顺序,将其排成一个请求队列,对于先提出I/O
请求的进程,将设备优先级分配给它。
(2)优先级高者优先。按进程的优先级将提出I/O请求的进程排成一个队列,先满足高优先级进程的I/O请求。
在进程调度中可以采用时间片轮转法,但这种方法不适合I/O调度。因为I/O操作的通道程序一经启动便一直进行下去直至完成。在它完成之前,不应被中断。
5.通常,文件存储空间的管理有如下三种方法:
(1)空白文件目录。将磁盘空间的一个未分配区域称为一个空白文件,系统为所有的空白文件单独建立一个目录,每个空白文件在这个目录中建立一个表目。
(2)位视图法。对文件存储的存储空间建立一张位视图,存于内存,用以反映整个磁盘空间的分配情况。
(3)空白块链。将盘上的所有空白块用链接指针或索引结构组织成一个空白文件。
6.在UNIX系统中,文件的逻辑结构采用无结构的流式文件,文件的物理结构采用索引结构方式。UNIX系统把外围设备也当作文件看待,称为设备文件。UNIX文件系统的文件包括普通文件、目录文件、设备文件、管道文件。
UNIX文件系统由基本文件系统和可装卸的子文件系统两部分组成,它们都有自己的目录结构。基本文件系统是整个UNIX文件系统的根文件系统,系统启动后,基本文件系统就存在着,不可卸掉。子文件系统可随时装卸。
UNIX文件系统采用树形目录结构,每个文件有一个唯一的索引节点,称为I节点i-node。为了加快文件的访问速度,在内存开辟了一个索引节点缓冲区inode[],构成索引节点表。
五,综合题
1.(1) FCFS
Jl 15KB 2台打印机
85KB
Jl 15KB 2台打印机
J2 60KB 1台打印机
25KB
A.10:00,剩2台打印机 B.10:20,剩1台打印机
Jl 15KB 2台打印机
J2 60KB 1台打印机
25KB
Jl 15KB 2台打印机
J2 60KB 1台打印机
25KB
C.10:25,剩3台打印机 D.10:30,J3调人被拒绝
J1运行结束,J2运行
J4 10KB 2台打印机
5KB
J2 60KB 1台打印机
25KB
J4 10KB 2台打印机
90KB
E.10:35 剩1台打印机 G.10:55 剩两台打印机
F.10:40 (J5被拒绝) J2愠结束
10KB
J5 30KB 2台打印机
60KB
J4 15KB 2台打印机
J5 30KB 2台打印机
60KB
H.10:55 剩0台打印机 I.11:15 剩2太打印机
J5结束,J4执行 J4运行结束
100KB
l 50KB 32台打印机
50KB
J.11:30 J5运行结束 K.11:40 J3运行结束
J3进入、运行,剩1台打印机 剩4台打印机进入输入井时间 开始执行时间 运行结束时间 周转时间
J1,10:00 10:00 10:25 25
J2,10:20 10:25 10:55 35
J3,10:30 11:30 11:40 70
J4,10:35 10:55 11:15 4O
J5,10:40 11:15 11:30 50
调度顺序:J1,J2,J4,J5,J3
平均周转时间=[25+35+70+40+50]/5=44s
(2)短作业优先同理,短作业优先的调度次序为:J1,J2,J5,J4,J3。
平均周转时间=[25+35+70+30+55]/5=43s
2.将独木桥的两个方向分别标记为A和B:并用整形变量countA、countB分别表示A、B方向上已在独术桥上的行人数,它们的初值为0:再设置三个初值都为1的互斥信号量:SA用来实现对countA的互斥访问,SB用来实现对countB的互斥访问,mutex用来实现两个方向的行人对独木桥的互斥使用。则可将A方向行人的动作描述为:
P(SA);
if(countA=O)then P(mutex);
countA:=countA+1;
V(SA);
通过独木桥;
P(SA);
countA:=countA,1·
if(countA=O)then V(mutex);
V(SA);
B方向行人的算法与A方向类似二只需将SA替换成SB,countA替换成countB即可。
3.(1)如果盘块地址只需用2个字节来描述,则该磁盘系统中盘块的数目将小于等于2^l6,即65536块,故文件的大小也不会超过65536块:而每个盘块中可存放256个盘块号,因此系统最多只要用到二次间址。实际上,使用1个一次问址项和1个二次间址项后,允许文件的最大长度已达11+256+256×256块,:已经超出了该磁盘系统中实际的盘块数目。
(2)根据题意,该文件的最后一个字节,即文件结束符的字节偏移量为18000000,而18000000/512的商为35156,因此该文件的最后一块的逻辑块号为35156。
由于10+170+170×170运35156<10+170+170×170+170×170×170,故该文件不仅需要使用10个直接地址项,还需要使用一次、二次及三次间址项。又因为35156一(10+170+170×170)=6076,6076/(170×170)得到商为0,余数为6076,得知该文件在三次间址时还需要1个二次间址块:而余数6076J170得到商为35,可知该文件在三次问址时还需要36个一次间址块。因此该文件需要:
三次间址块,1 =1个二次间址块,1 + 1 =2个一次间址块,36 + 170 + 1 =207个数据块:(35×170+127)十170×170+170+10=35157个故共需要35367个物理盘块。
9.6 模拟试题(六)
一,判断题(判断下列命题的正确性)(10分)
1.在分时系统中,为使多个用户能够同时与系统交互,最关键的问题是系统能及时接收多个用户的输入。
2.在进程对应的代码中使用P、V操作后,可以防止系统发生死锁。
3.在只提供用户级线程的多处理机系统中,一个进程最多仍只能获得一个CPU。
4.竞争可同时共享的资源,不会导致系统进入死锁状态。
5.在没有快表支持的段页式系统中,为了存取一个数据,需三次访问内存。
6.以进程为单位进行整体对换时,每次换出必须将整个进程的内存映像全部换出。
7.请求分页系统中?一条指令执行期间产生的缺页次数可能会超过四次。
8.引入缓冲区能使CPU与I/0设备之间速度不匹配的情况得到改善,但并不能减少设备中断CPU的次数。
9.由于设备驱动程序与硬件紧密相关,因此,系统中配备多少个设备就必须配备同样数量的设备驱动程序。
10.文件系统中,所有文件的目录信息集中存放在内存的一个特定区域中。
二.多项选择题(10分)
1.设计实时操作系统必须先考虑系统的________。
A.效率 B.实时性 C.可移植性 D.可靠性 E.使用方便性
2.为了防止系统故障造成系统中文件被破坏,通常采用________的方法来保护文件。
A.二次转储 B.随机转储 C.建立副本 D.虚拟转储 E.定时转储
3.操作系统中的批处理控制方式也可以称为__________________。
A.自动控制 B.联机控制 C.假脱机控制 D.交互控制 E.脱机控制
4.在下列存储管理方案中,可用上下限地址寄存器实现存储保护的是_______。
A.固定分区存储管理 B.可变分区存储管理 C.页式存储管理
D.段式存储管理 E.段页式存储管理
5.在批量处理系统中,一个作业要进入系统,用户应提供______或_________。
A.作业说明书 B.作业控制卡 C.程序 D.数据 E.调度信息三.填空(20分)
1.操作系统最基本的特征是_____和______,最主要的任务是________。
2.引入进程的主要目的是_________,进程存在的惟一标志是_______。
3.______是指通过破坏死锁产生的必要条件来防止死锁的发生。引起死锁的四个必要条件中,______是不应被破坏的,但对某些特殊的资源(如打印机),该条件可通过_____来破坏。
4.虚拟存储器管理的基础是________原理;在请求分页管理方式中,页表中的状态位用来指示对应页_________,修改位用来指示对应页_________。
5.设备驱动程序是_______与__________之间的通信程序,如果系统中有3台相同的单显和2台相同的彩显,则必须为它们配置________种设备驱动程序。
6.廉价磁盘冗余阵列可组成一个大容量磁盘系统,它利用______技术来提高磁盘系统的存取速度,而利用_________技术来增加磁盘系统的可靠性。
7.包过滤防火墙工作在_______层,采用代理服务技术的防火墙则工作在________层。
8.UNIX文件系统对文件存储空间采用_______分配方式,它通过_______来管理空闲的文件存储空间。
四.简答题(30分)
1.UNIX文件系统为什么有磁盘i节点和内存i节点?它们有什么不一样?
2.什么是文件目录?文件目录中包含哪些信息?
3.文件存取控制方式有哪些?比较其优缺点。
4.简述进程和程序之间的差别。
5.程序的并行执行将导致运行结果失去封闭性,这对所有的程序都成立吗?
6.设备分配中为什么可能出现死锁?
五,综合题(30分)
1.设有两个进程P1和P2的程序如下,其信号量的初始值S1=S2=0,试求P1,P2并发执行结束后的x,y,z的值,并对结果加以解释。
进程1 进程2
y=1; x=1;
y=y+2; x=x+1;
v(S1); p(Sl);
Z=y+1; x=X+y;
p(S2); v(S2);
y=y+z; z=z+x;
2.在一个请求分页管理的系统中,主存容量为lMB,被划分为256块,每块为4KB。现有一作业,它的页面变换表如下:
页号
块号
状态
0
24
0
1
26
0
2
32
0
3
1
4
1
(1)若给定一逻辑地址为9016,其物理地址为多少?
(2)若给定一逻辑地址为12300,给出其物理地址的计算过程。
3.假定在某移动臂磁盘上,刚刚处理了访问75号柱面的请求,目前正在80号柱面读信息,并且布下述请求序列等待访问磁盘:
请求次序
1
2
3
4
5
6
7
8
访问的柱面号
73
68
100
120
60
108
8
50
试用:(1)电梯调度算法;(2)最短寻找时间优先算法,分别列出实际处理上述请求的次序。
模拟试题(六)答案一,判断题
1.× 2.× 3.√ 4.√ 5.√ 6.× 7,√ 8.× 9.× 10.×
二.多项选择题
1.B,D 2.C,E 3.A,E 4.A,B 5.A,C,D或B,C,D
三.填空
1.并发 资源共享 管理资源。
2.使程序能够正确地并发执行 进程控制块PCB。
3.预防死锁 互斥条件 SPOOLing技术
4.局部性原理 是否己调入内存 是否被修改过
5.I/0 进程 设备控制器 2
6.交叉存取 容错。
7.网络 应用。
8.混合索引 成组链接法。
四.简答题
1.UNIX系统中,磁盘i节点以静态形式存放文件说明信息。内存I节点是为了减少设备的启动次数以及提高操作速度,把磁盘i节点复制到内存特定区域。由于进程需要用i节点中的逻辑结构和物理结构信息完成对文件信息的保护和共享,故i节点中多当前文件状态信息。
2.文件的目录项是一个文件目录名以及对该文件实施控制和管理的说明信息。
文件目录包括文件名、与文件名相对应的文件内部表示、文件信息在文件存储设备上第一个物理块的地址信息,以及关于文件逻辑结构、物理结构、存取控制和管理信息。
3.文件存取方式一般包括存取控制矩阵、存取控制表、口令和密码等方式。
存取控制矩阵是以一个二维矩阵进行存取控制的。矩阵的一维记录用户,另一维记录文件。矩阵元素是用户对丈件的存取控制权限。这种存取方式的特点是简单,但当文件和用户数比较多时,存取矩阵相当大,空间开销大。
存取控制表以文件为单位,把用户按某种关系分为若干组,同时规定每组的存取限制。存取控制表的方式占用空间少,查找速度快,但需要对用户进行分组。
口令方式有两种,一是当用户登录系统时,获得系统使用权的口令;另一种口令是指每个用户为每个创建的文件设置的口令,记录于文件的说明中,用户对文件的使用受口令的影响。口令方式简单,但保密性较差。
密码方式是在用户创建原文件时对文件进行重新编码加密,当读文件时要进行解密。加密方式具有保密性强,不宜破解的优点。但加密、解密均要花费相当多的时间。
4.(1)进程是一个动态的概念,程序是一个静态的概念。程序是记录在介质上的指令的有序集合,无执行含义:进程是程序的一次执行。
(2)进程间可以并行运行,具有异步特征,而程序没有这些特征。
(3)不同进程可以包含同一个程序,同一个程序在执行中也可以产生多个进程。
5.并不是所有程序的并行执行都会导致运行结果失去封闭性。例如,当程序中都使用内部变量,不可能被外部程序访问时,程序的运行不会受到外部环境的影响。
6.在多道程序系统中,可使CPU和I/0设备并行工作,使某些进程以命令形式发出I/O
请求后,不进入阻塞状态,仍可以继续运行,需要时还可以发出多个I/O请求。仅当进程所请求的设备为另一个进程占用时才进入阻塞状态。这样就可以使进程同时操作多个外部设备。这种多请求方式,导致了设备分配的不安全,因而就可能出现死锁。
五,综合题
1.x=5; y =12; z =9;
2.(1)逻辑地址为9016时,因为
9016=2*4*1024+824
所以页号为2,页内偏移量为824。
从PMT中可知,该页被装入主存的第32块中,所以,其物理地址为:
32*4*1024+824=128K+824
(2)同理,逻辑地址为12300时,可以表示为:
12300=3*4*1024=3*4K+12
页号为3,由PMT可知其在辅存,产生缺页中断,中断处理程序将该页装入内存。
3.(1)电梯调度算法的处理次序为,3,6,4,1,2,5,8,7。
(2)最短寻找时间优先算法的处理次序为:1,2,5,8,7,3,6,4。
9.7 模拟试题(七)
一,判断题(判断下列命题的正确性)(10分)
1.分时系统中,时间片设置得越小,则平均响应时间越短。
2.多个进程可以对应于同一个程序,且一个进程也可能会执行多个程序。
3.一个进程的状态发生变化总会引起其他一些进程的状态发生变化。
4.在引入线程的操作系统中,线程是资源分配和调度的基本单位。
5.信号量的初值不能为负数。
6.最佳适应算法比首次适应算法具有更好的内存利用率。
7.为提高对换空间的利用率,一般对其使用离散的分配方式。
8.设备独立性是指系统具有使用不同设备的能力。
9.隐式链接结构可以提高文件存储空间的利用率,但不适合文件的随机存取。
10.访问控制矩阵比访问控制表更节约空间。
二.多项选择题(10分)
1.下述进程状态的转换中,_____和______是不可能的。
A.运行态→就绪态 B.运行态→等待态 C.等待态→就绪态
D.等待态→运行态 E.就绪态→等待态
2.在存储管理中允许作业占有连续主存空间的是________和________。
A.单用户连续存储管理 B.页式存储管理 C.段式存储管理
D.可变分区存储管理 E.段页式存储管理
3.在交互控制方式下,用户为控制作业的执行可采用或
A.作业控制语言 B.命令语言 c.汇编语言 D.高级程序语言 E.会话语言
4.有关作业管理的下述描述中和是正确的。
A.系统现有空间资源能满足被选作业的资源要求是选择作业进入系统的一个必要条件
B.作业与进程是一一对应的
C.作业调度选中一个作业后,与作业相关的进程应处于运行状态
D.在兼有批处理和分时处理的计算机系统中,往往把终端作业作为前台作业,把批处理作业作为后台作业
E.MS-DOS操作系统不允许用户脱机方式控制作业的执行
5.下面关于UNIX系统中用户接口的描述正确的是____。
A.she11命令是用户与UNIX系统的接口
B.终端用户可以直接使用系统调用取得操作系统服务
C.终端用户通过trap指令取得UNIX系统的服务
D.用户通过键入shell命令或shell程序使用系统三.填空(20分)
1.在多道批处理系统中,通常采用以下两种作业调度算法:_________和__________。
2.在操作系统的发展过程中________和_________的出现,标志了操作系统的正式形成。
3.在请求分页系统中,反复进行入页和出页的现象称为__________。
4.____________再定位是在程序执行期间,在每次存储访问之前进行的。
5.多道程序设计的特点是__________,____________,______________。
6.一个作业从进入系统到运行结束,一般要经历的阶段是提交,________,____,______。
7.UNIX是一个________式_________操作系统,从结构上看,UNIX可以分成__________和___________两部分。
8.UNIX的shell有两层含义,一是指由_______组成的_________,二是指__________。
用户登录成功后UNIX运行的第一个程序是_____________。
四,简答题(30分)
1.对临界资源区的管理和使用的基本要求是什么?
2.简述常用的页面调度算法。
3.什么是记录的成组和分解?
4.什么是多道程序技术?在操作系统中引入该技术,带来了哪些好处?
5.提高内存利用率的途径有哪些?
6.将目录文件当作一般数据文件来处理有什么优缺点?
五,综合题(30分)
在银行家算法中,若出现以下资源分配情况:
进程
需要的最大资源数
已分配资源
剩余资源
P0
P1
P2
P3
P4
7,5,3
3,2,2
9,0,2
2,2,2
4,3,3
0,1,0
2,0,0
3,0,2
2,1,1
0,0,2
3,3,2
试问:(1)该系统状态是安全的吗?
(2)如果进程依次有如下资源请求:
P1:(1,0,2)
P4:(3,3,0)
PO:(0,2,0)
系统将怎样进行资源分配?
2.UNIX采用何种进程调度算法?在什么情况下要进行进程调度?调度程序SWITCH的主要任务是什么?
1.某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票厅中少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。若把一个购票者看作一个进程,请回答下列问题:
(1)用P、V操作管理这些并发进程时,应怎样定义信号量?写出信号量的初值以及信号量各种取值的含义。
(2)根据所定义的信号量,把应执行的P、V操作填入下述程序中,以保证进程能够正确地并发执行。
COBEGIN PROCESS PI(I=1,2,......)
Begin
,
进入售票厅:
购票:
:
退出:
End:
COEND
(3)若欲购票者最多为n个大,写出信号量可能的变化范围(最大值和最小值)。
模拟试题(七)答案一,判断题
1.× 2.√ 3.× 4.× 5.√ 6.√ 7.× 8.√ 9.√ 10.×
二.多项选择题(10分)
1.D,E 2.A,D 3.B,E 4.D,E 5.A,D
三.填空
1.优先级调度 均衡调度
2.多道 分时
3.系统抖动
4.动态地址
5.多道 宏观上并行 微观上串行
6.后备 执行 完成
7.交互 分时 内核层 外壳层
8.shell命令 shell命令语言 该命令语言的解释程序 shell进程(或shell)
四,简答题
1.没有进程在临界区内时,若有进程想进入临界区,可以允许一个进程进入临界区。当已有进程进入临界区时,其他欲进入临界区的进程必须等待。|
当一个进程离开临界区时,若发现有进程正在等待进入临界区,则要唤醒这些进程。
2.常用的页面调度算法有:先进先出算法(FIFO)、最近最久未使用算法(LRU)和最近不常用算法(LFU)。
(1)FIFO:总是选择最先进入主存的页面调出。FIFO算法简单,易实现,但奋时缺页中断率较高。
(2)LRU:基于程序的局部性原理,总是选择距现在最长时间内没有被访问的页面先调出。其特点是实现麻烦,系统开销大,缺页中断率低。
(3)LFU:根据一段时间里页面被访问的次数,选择被访问次数少的页面先调出。LFU方法需要为页面增加计时器,算法开销大,确定重新计时周期T的难度大,缺页中断率低。
3.(1)把若干逻辑记录合并成一组,存入一个物理块的工作称为记录的成组。
(2)从一组中把一个逻辑记录分离出来的工作称为记录的分解。
4.多道程序技术是指在内存中同时存放若干个作业,并使它们共享系统的资源,同时运行的技术。
在操作系统中引入多道程序技术带来了以下好处:
(1)提高CPU的利用率。当内存中仅放一道程序时,每逢该程序运行中发出I/O请求后,CPU空闲,必须在其I/0完成后才能继续执行:尤其是I/O设备的低速性,更使CPU的利用率显著降低。在引入多道程序设计技术后,由于可同时把若干道程序装入内存,并可使它们交替地执行,这样,当正在运行的程序因I/O而暂停执行时,系统可调度另一道程序执行,从而可保持CPU处于忙状态,使CPU的利用率提高。
(2)可提高内存和UO设备的利用率。为了能运行较大的作业,通常内存都具有较大的容量,但由于80%以上的作业都属于中、小型作业,因此在单道程序的环境下也必定造成内存的浪费。类似地,系统中所配置的多种类型的I/0设备,在单道程序环境下,也不能充分利用。如果允许在内存中装入多道程序,并允许它们并发执行,则无疑会有如提高内存和I/0设备的利用率。
(3)增加系统吞吐量。在保持CPU、I/0设备不断忙碌的同时写也必然会大幅度地提高系统的吞吐量,从而降低作业加工所需费用。
5.内存利用率不高,主要表现为以下四种形式:
(1)内存中存在着大量的、分散的、难以利用的碎片。
(2)暂时或长期不能运行的程序和数据,占据了大量的存储空间。
(3)当作业较大时,内存中只能装入少量作业,当它们被阻塞时,将使CPU空闲,从而也就降低了内存的利用率。
(4)内存中存在着重复的拷贝。
针对上述问题,可分别采用下述方法提高内存的利用率:
(1)改连续分配方式为离散分配方式,以减少内存中的零头。
(2)增加对换机制,将那些暂时不能运行的进程或暂时不需要的程序和数据,换出至外存,以腾出内存来装入可运行的进程。
(3)引入动态链接机制,当程序在运行中需要调用某段程序时,才将该段程序由外存装入内存。这样,可以避免装入一些本次运行中不用的程序。
(4)引入虚拟存储器机制,使更多的作业能装入内存,并使CPU更加忙碌。引入虚拟存储器机制,还可以避免装入本次运行中不会用到的那部分程序和数据。
(5)引入存储器共享机制,允许一个正文段或数据段被若干个进程共享,以削减内存中重复的拷贝。
6.将目录文件作为一般数据文件来处理,可以简化操作系统对目录的实现。但如果允许一个用户在某个目录下创建文件,则他必须有对该目录文件进行读写的权限,他同时便可直接从目录文件中读到该目录下所有文件的物理地址等信息,然后存取到它们的内容,因此这种方式难以实现对文件的保护。为了解决上述问题,很多操作系统将目录当作特殊的文件看待,用户要获得目录中的文件属性信息或在创建一个文件时需在目录文件中建立一个目录项,都必须通过操作系统提供的例程来完成。
五,综合题
1.(1)P1的请求(3,2,2)是系统剩余资源(3,3,2)能满足的,故P1能运行完:P1释放资源使得P2的申请能得到满足,…:进程按P1,P3,P0,P2,P4顺序执行,每个进程都可以获得需要的资源运行完毕,故当前状态是安全的。
(2)P1请求(1,0,2)后,剩余资源(3,3,0),假设分配后,各进程与资源的关系如下表所示:
进程
需求量
已获资源数
尚需资源数
P0
7,5,3
0,1,0
7,4,3
P1
3,2,2
3,0,2
0,2,0
P2
9,0,2
3,0,2
6,0,0
P3
2,2,2
2,1,1
0,1,1
P4
4,3,3
0,0,2
4,3,1
则系统按P1,P3,P0,P2,P4顺序执行,每个进程均能执行完。P1的需求可以满足。
P4请求(3,3,0)后,剩余资源(2,3,0),假设分配后,各进程与资源的关系如下表所示:
进程
需求量
已获资源数
尚需资源数
P0
7,5,3
0,1,1
7,4,3
P1
3,2,2
3,0,2
0,2,0
P2
9,0,2
3,0,2
6,0,0
P3
2,2,2
2,1,1
0,1,1
P4
4,3,3
0,0,2
4,3,1
则系统剩余资源不能满足P4的要求,不能分配。
PO请求(0,2,0)后,剩余资源(2,3,0),假设分配后,各进程与资源的关系如下表所示:
进程
需求量
已获资源数
尚需资源数
P0
7,5,3
2,4,0
7,2,3
P1
3,2,2
3,0,2
0,2,0
P2
9,0,2
3,0,2
6,0,0
P3
2,2,2
2,1,1
0,1,1
P4
4,3,3
0,0,2
4,3,1
则系统分配后还剩余系统资源(2,1,0),POMP4尚需的资源数均不能得到满足,不能对P0分配。
2.UNIX进程采用动态优先数调度算法,进程的优先数随着进程执行情况的变化不断更新。
调度时机;
进程等待各种事件而进入睡眠状态;
进程的时间片用完后被剥夺处理机;
现运行进程运行完毕;
有更高优先级进程进入;
进程因同步而自动挂起等,进程调度程序SWITCH从就绪队列中选取优先数小的进程分配给其它处理机执行。
SWECH功能:
保存正在运行的现场;
从处于内存就绪态的进程中选择一个优先数小的进程运行;
为被调度的进程恢复现场。
3.(1)定义一信号量S,初始值为20。
S>0 S的值表示可继续进入售票厅的人数
S=0 表示售票厅中己有20名顾客(购票者)
S<0 |S|的值为等待进入售票厅的人数
(2)上框为P(S)
下框为V(S)
(3)S的最大值为20
S的最小值为20-n
9.8 模拟试题(八)
一,判断题(判断下列命题的正确性)(10分)
1.实时系统在响应时间、可靠性及交互作用能力等方面一般都比分时系统要求高。
2.windows XP是一个多用户、多任务的操作系统。
3.一个进程正在临界区中间执行时,不能被中断。
4.系统处于不安全状态必然导致系统死锁。
5.请求分段存储管理中,分段的尺寸要受主存空间的限制。
6.属于同一个进程的多个线程可共享进程的程序段、数据段。
7.设备的独立性是指每类设备有自己的设备驱动程序。
8.虚拟设备是指允许用户使用比系统中具有的物理设备更多的设备。
9.对物理文件来说,顺序文件必须采用连续分配方式,而链接文件和索引文件可采用离散分配方式。
10.在UNIX文件系统中,文件的路径名和磁盘索引结点之间是一一对应的。
二.多项选择题(10分)
1.下述进程状态的转换中,不可能的是________。
A.运行态→就绪态 B.运行态→等待态 C.等待态→就绪态
D.等待态→运行态 E.就绪态→等待态
2.在存储管理中允许作业占有连续主存空间的是________。
A.单用户连续存储管理 B.页式存储管理 C.段式存储管理
D.可变分区存储管理 E.段页式存储管理
3.在交互控制方式下,用户为控制作业的执行可采用________。
A.作业控制语言 B.命令语言 C.汇编语言
D.高级程序语言 E.会话语言
4.有关作业管理的下述描述中正确的是________。
A.系统现有空间资源能满足被选作业的资源要求是选择作业进入系统的一个必要条件
B.作业与进程是一一对应的
C.作业调度选中一个作业后,与作业相关的进程应处于运行状态
D.在兼有批处理和分时处理的计算机系统中,往往把终端作业作为前台作业,把批处理作业作为后台作业
E.MS-DOS操作系统不允许用户脱机方式控制作业的执行
5.下面关于UNIX系统中用户接口的描述正确的是_____。
A.she11命令是用户与UNIX系统的接口
B.终端用户可以直接使用系统调用取得操作系统服务
C.终端用户通过trap指令取得UNIX系统的服务
D.用户通过键入shell命令或shell程序使用系统三.填空(20分)
1.从资源分配的角度来看,所有I/0设备可分为三种类型:独占设备,_______和______。
2.产生死锁的必要条件是互斥控制、_______、_________、___________.
3.一个作业的运行时间假设1个小时,它在系统中等待了3个小时,那么该作业的周转时间为______________,而响应比为______________。
4.在多道批处理系统中,通常采用以下两种作业调度算法:____________、________。
5.文件的逻辑结构通常采用两种形式:一是_______文件,二是________文件。
6.在os的发展过程中,_________和__________的出现,标志着操作系统的正式形成。
7.在请求分页系统中,反复进行入页和出页的现象称为____________。
8._______________再定位是在程序执行期间,在每次存储之前进行的。
9.多道程序设计的特点是________、_____________、________。
10.I/O设备的分配,通常采用的两种算法是:_________、___________。
四.简答题(30分)
1.字符缓冲区的缓冲区队列有哪些? 对缓冲区队列的操作有哪些?
2.简述块设备驱动程序。
3.在分时系统中响应时间与哪些因素有关?
4.什么是虚存,实现虚存的物质基础是什么?
5.什么是缓冲池,其主要工作方式有哪几种?
6.UNIX创建一个进程需要做哪些工作?
五,综合题(30分)
1.计算进程PC和打印进程P01、P02共享一个单缓冲区〉计算进程负责计算,并把计算结果放入单缓冲中:打印进程P01、P02则负责从单缓冲中取出计算结果进行打印,而且对每一个计算结果,P01和P02都需分别打印一次。请用记录型信号量描述上述进程间的同步关系。
2.设有一组作业,它们的提交时间及运行时间如下所示。
作业号
提交时间
运行时间(分钟)
1
8.00
70
2
8.40
30
3
8.50
10
4
9.10
5
试问在单道方式下,采用响应比高者优先调度算法,作业的执行顺序是什么?
3.某系统采用页式存储管理策略,拥有逻辑空间32页,每页2K,拥有物理空间1M。
(1)写出逻辑地址的格式。
(2)若不考虑访问权限等,进程的页表有多少项?每项至少有多少位?
(3)如果物理空间减少一半,页表结构应相应作怎样的改变?
模拟试题(八)答案一,判断题
1.× 2.√ 3.× 4.× 5.√ 6.√ 7.× 8.√ 9.√ 10.×
二.多项选择题
1.D,E 2.A,D 3.B,E 4.D,E 5.A,D
三.填空
1.共享设备 虚拟设备
2.非剥夺控制 逐次请求 环路条件
3,4小时 4
4.优先级调度算法 均衡调度算法
5.有结构的记录式 无结构的流式
6.多道程序设计 分时系统
7.系统抖动
8.动态地址。
9.多道宏观上并行 微观上串行
10.先请求先服务 优先级高者优先。
四.简答题
1.字符设备的缓冲区队列分为空闲缓冲区队列和I/0字符缓冲区队列。
对缓冲区队列的操作分为对空闲缓冲区队列的操作和对I/0缓冲区队列的操作。具体分为以下几种:
(1)从空闲缓冲区队列分配一个缓冲区给驱动程序。
(2)把一个缓冲区释放后放入空闲缓冲区队列。
(3)从I/O缓冲区队列提取一个字符,并调整I/0缓冲区队列的末尾。
(4)把一个字符放入νo缓冲区队列中的最后一个缓冲区的尾部。
(5)从I/O缓冲区队列中每次移走一个缓冲区中的所有字符或n(n>1)个字符。
(6)向I/0缓冲区队列中每次送一个缓冲区的字符或若干个字符。
2.块设各驱动程序是把一个逻辑设备号组成的文件系统地址转换成物理设备上特定的物理块号,并启动物理设备和控制器进行I/O传输工作。
3.Q=T/N,分时系统的响应时间与等待队列中的进程数目以及为每个进程分得的时间片大小有关。
4.虚存是利用操作系统产生的一个容量比主存大得多的存储器,实际上是一个地址空间。实现虚存的物质基础是:一定容量的主存、大容量的辅存和地址变换机构。
5.为了克服专用缓冲区的缺陷,可采用公用缓冲技术,即缓冲池。缓冲池包括空闲缓冲区、装满输入数据的缓冲区和装满输出数据的缓冲区。缓冲池的工作方式有4种:(1)收容输入工作方式;(2)提取输入工作方式;(3)收容输出工作方式(4)提取输出工作方式。
6.在UNIX系统中,一个进程总是使用系统功能调用fork()创建新进程,原进程与新创建的进程形成父子关系。创建进程的工作为:调用new proc并生成一个子进程;处理机在父进程和子进程间重新调度,当处理机分给子进程时,将子进程的运行时间设置为0,并返回0值,子进程返回。当处理机分配给父进程时,置返回值为子进程的标识,父进程返回。
五,综合题
1.为了实现计算进程和打印进程之间的同步,并使单缓冲中的每个计算结果都被两个打印进程分别打印一次,可设置四个信号量:full1表示缓冲中是否有可供PO1打印的计算结果,full2表示缓冲中是否有可给P02打印的计算结果:emptyl、empty2则表示计算结果是否已被P01、P02取走,只有当一个结果被两个打印进程都取走后,缓冲区才变空,计算进程才可将下一个计算结果放入单缓冲。相应的同步算法可描述如下:
Var empty1,empty2,full1,full2:semaphore:=1,10,0;
begin
parbegin
PC,begin
repeat
compute next number;
P(empty1);
P(empty2);
add the number to buffer;
V(full1);
V(full2);
Until false;
end
P01:begin
repeat
P(full1);
take from buffer;
V(empty1);
print last number;
until false;
end
P02:begin
repeat
P(full2);
take from buffer;
signal(empty2);
print last number;
until false;
end
parend
end
2,8:00时,因为这时只有作业1到达,因此调度作业1运行。70分钟后(即9:10),作业1运行完毕。
9:10时,这时作业1运行完成,其他三个作业均已到达。它们的响应比分别为:
r2=1+(9:10-8:40)/30=2
r3=1+(9:10-8:50)/10=3
r4=1+(9:10-9:10)/5=1
从计算结果看,作业3的响应比高,所以让作业3先运行。10分钟后(即9:20),作业3运行完毕。
9:20时,这时作业3运行完成,其他两个作业的响应比分别为:
r2=1+(9:20-8:40)/30=2.3
r4=1+(9:20-9:10)/5=3
从计算结果看,作业4的响应比高,所以让作业4先运行。5分钟后(即9:25),作业4运行完毕。这时只剩下作业2,调度作业2运行。
从上面的分析可知,作业的执行顺序为1、3、4、2。
3,(1)该系统拥有逻辑空间32页,故逻辑地址中页号必须用5位来描述;而每页为2K,因此页内地址必须用11位来描述,这样可得到它的逻辑地址格式如下:
15 11 10 0
页 号
页 内 地 址
(2)每个进程最多有32个页面,因此进程的页表项最多为32项;若不考虑访问权限等,则页表项中只需给出页所对应的物理块块号,1M的物理空间可分成29个内存块,故每个页表项至少有9位。
(3)如果物理空间减少一半,则页表中页表项数仍不变,但每项的长度可减少1位。
第9 章 综合模拟试题
9.9 模拟试题(九)
一.名词解释(10分)
1.系统调用 2,联想存储器 3.远程过程调用 4.位示图 5,用户账号二.多项选择题(10分)
二、多项选择题〈每小题2分,共10分〉
1.在进程基本调度状态转换时,会出现的情况是__________。
A.就绪→运行 B.运行→阻塞 C.就绪→阻塞 D.阻塞→就绪 E.阻塞→运行
2.分布式系统的主要特点是__________。
A.各节点的自治性 B.资源共享的透明性 C.各节点的协同性
D.系统的安全性 E.系统的坚定性
3.属于产生死锁的必要条件的是__________。
A.剥夺控制 B.互斥控制 C.资源共享 D.环路条件 E.逐次请求
4.解决进程间互斥的问题可以使用_______。
A.信号量及P、V操作 B.信箱通讯方式 C.加锁与开锁 D.消息缓冲方式
E.特权指令
5.从资源分配角度来看,外设分为________。
A.逻辑设备 B.独享设备 C.共享设备 D.物理设备 E.虚拟设备三.填空(20分)
1.现代操作系统的特征是:______、_________、不确定性和虚拟性。
2.操作系统的两种内核组织形式是:_________和_______________。
3.分时系统的特点是:_____、_______、及时性和交互性。
4.Windows NT从结构上分为______和_______两部分。
5.地址再定位有两种方式:_______和_____________。
6.操作系统是___________,支持它运行的环境是。
7.程序的并发执行,失去了顺序程序的_________性和___________________性,程序和机器执行程序的活动不再一一对应。
8.当系统创建一个进程时,就为其建立一个_________,当进程被撤消时就将其注量收回。
9.系统中各进程对互斥资源操作的程序段必须互斥执行。我们把这种互斥执行的程序段称为____________。
10.通常解除死锁的方法有两种,分别是: __________法和__________法。
11.Linux支持UNIX的三种进程通讯机制:________、信号量及_________。
四.简答题(30分)
1.在以进程为单位进行对换时,每次是否将整个进程换出?为什么?
2.在请求分页系统中,为什么说一条指令执行期间可能产生多次缺页中断?
3.试说明I/O控制发展的主要推动因素。
4.请说明中断驱动I/O方式和DMA方式有什么不同。
5.设备独立性的优点有哪些?
6.什么是文件目录?文件目录中包含哪些信息?
五,综合题(30分)
1.如磁盘的每个磁道分成9个块,现有一文件共有A、B、…、I 9个记录,每个记录的大小与块的大小相等,设磁盘转速为27ms/转,每读出一块后需要2ms的处理时间。若忽略其他辅助时间,试问:
(1)如果顺序存放这些记录并顺序读取,处理该文件要多少时间?
(2)如果要顺序读取该文件,记录如何存放处理时间最短?
2.在UNIX System V中,如果一个盘块的大小为1KB,每个盘块号占4个字节,那么,一个进程要访问偏移量为263168字节处的数据时,需要经过几次间接?
3.设公共汽车上,司机和售票员的活动分别是:
在汽车不断地到站、停车、行驶过程中,这两个活动有什么同步关系?用信号量和P、V操作实现它们的同步。
模拟试题(九)答案
一.名词解释
1.所谓系统调用就是用户在程序中能用访管指令调用的,由操作系统提供的子功能集合,其中每个子功能称为一个系统调用命令。
2.在分页(请求分页)存储管理中,为了加快查页表的速度,在地址变换机构中加入一组高速寄存器,这些寄存器连同管理它们的硬件构成了一个容量较小的存储器,称为联想存储器,也叫快表。
3.在网络环境下,当节点A的进程调用节点B上的一个过程时,节点A上的调用进程被挂起,在节点B上执行被调用的过程,信息以参数的形式从调用进程传送到被调用进程,并将被调用过程执行的结果返回给调用进程。对程序员来说,他看不到消息的传递过程和I/O处理过程。这种通信方式,称为远程过程调用。
4.在内存中用若干字构成一个图,每个字中的每一位对应文件存储器上的一个物理块,这个能反映文件存储器上整个存储空间分配情况的图,称为位示图。
5.在计算机网络中,用户账号是一些信息的集合.这些信息定义了工作站上的一个用户,包括用户名、口令、组所属关系和一些权限列表。
二、多项选择题
1.A B D 2.A B C E 3.B D E
4.A C 5.B C E
三.填空
1.共享性,并发性 2.强内核,微内核 3.同时性,独立性
4.用户态,核心态 5.静态再定位,动态再定位 6.系统软件,系统硬件
7.封闭,可再现 8.PCB 9.临界区
10.删除,剥夺 6.消息队列,共享内存四.简答题
1.答:在以进程为单位进行对换时,并非每次都将整个进程换出。这是因为:
(1)从结构上讲,进程是由程序段、数据段和进程控制块组成的,其中进程控制块总有部分或全部常驻内存,不被换出。
(2)程序段和数据段可能正被若干进程共享,此时它们也不能换出。
2.答:因请求调页时,只要作业的部分页在内存,该作业就能执行,而在执行过程中发现所要访问的指令或数据不在内存时,则产生缺页中断,将所需的页面调入内存。在请求调页系统中,一条指令(如copy A to B)可能跨了两个页,而其中要访问的操作数可能与指令不在同一个页上,且操作数本身也可能跨两个页。当要执行这类指令,而相应的页都不在内存时,就将产生多次缺页中断。
3.答:设备管理的目标是:选择和分配输入/输出设备以便进行数据传输操作;控制输入/输出设备和CPU(或内存)之间交换数据;为用户提供一个友好的透明接口;提高设备和设备之间、CPU和设备之间,以及进程和进程之间的并行操作,以使操作系统获得最佳效率。设备管理的功能是:提供和进程管理系统的接口,进行设备分配,实现设备和设备、设备和CPU等之间的并行操作进行缓冲区管理。
4.答:中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行的过程。
CPU转去执行相应的事件处理程序的过程称为中断处理。CPU收到中断请求后转到相应的事件处理程序称为中断响应。
5.设备独立性具有如下两个优点:
(1)提高设备资源利用率。假设申请者指定具体设备,而被指定的设备可能正被占用,因而无法得到,而其它同类设备可能空闲,造成资源浪费以及进程不必要的等待,利用设备独立性即可解决这类问题。
6.答:一个文件的文件名和对该文件实施控制管理的说明信息称为该文件的说明信息,又称为该文件的目录。
文件目录中包含文件名、与文件名相对应的文件内部标识以及文件信息在文件存储设备上第一个物理块的地址等信息。另外还可能包含关于文件逻辑结构、物理结构、存取控制和管理等信息。
五,综合题
1.答:由题目所给条件可知,磁盘转速为每转27ms,每磁道存放9个记录,因此读出1个记录的时间是:27/9=3ms
(1)读出并处理记录A需要5ms,此时读写头己转到了记录B的中间,因此为了读出记录B,必须再转将近一圈〈从记录B的中间到记录B〉。后续8个记录的读取及处理与此相同,但最后一个记录的读取与处理只需5ms。于是,处理9个记录的总时间为:8×(27+3)+(3+2)=245ms
(2)由于读出并处理一个记录需要5ms,当读出并处理记录A时,不妨设记录A放在第1个盘块中,读写头已移到第2个盘块的中间,为了能顺序读到记录B,应将它放到第3个盘块中,即应将记录按如下顺序存放:
盘块
1
2
3
4
5
6
7
8
9
记录
A
F
B
G
C
H
D
I
E
这样,处理一个记录并将磁头移到下一个记录的时间是:
3(读出)+2(处理)+1(等待〉=6ms
所以,处理9个记录的总时间为:6×8+5=53ms
2.分析:在UNIX系统中,文件的数据存储在离散的磁盘块中,这些文件的盘块号直接或间接地存放在该文件索引节点的13个地址项中。前10个地址项是直接寻址,每个地址项中直接存放了该文件所在的盘块号;第11个地址项是一次间接寻址,即先将1~256(因一个盘块的大小为1KB且每个盘块号占4个字节,所以一个盘块中最多能存放1024/4=256)个盘块号存放在一个磁盘块中,再将该磁盘块的块号存放在该地址项中;第12个地址项是二次间接寻址,其中的磁盘块号指向一个一次间接块号表;第13个地址项是三次间接寻址,其中的磁盘块号指向一个二次间接块号表。
故偏移量263168的逻辑块号为:263168/1024=257
块内偏移量为:263168.1024×257=0
因为10<257<266,所以偏移地址263168的块号在一次间接块内,故一个进程要访问偏移量为263168字节处的数据时,只需要经过一次间接。
3.在汽车行驶过程中,司机活动与售票员活动之间的同步关系为:售票员关车门后,向司机发开车信号,司机接到开车信号后启动车辆,在汽车正常行驶过程中售票员售票,到站时司机停车,售票员在车停后开车门让乘客上下车。因此司机启动车辆的动作必须与售票员关车门的动作取得同步,售票员开车门的动作也必须与司机停车取得同步。
在本题中,应设置两个信号量:s1、s2,s1表示是否允许司机启动汽车,其初值为0;s2表示是否允许售票员开门,其初值为0。用P、V原语描述如下:
int s1=0;
int s2=0;
main( )
{
parbegin
driver( );
busman( );
parend
}
driver( )
{
while(1)
{
p(s1);
启动车辆;
正常行车;
到站停车;
v(s2);
}
}
busman( )
{
while(1)
 {
关车门;
v(sl);
售票;
p(s2);
开车门;
上下乘客;
}
}
用P、V操作来控制现实生活中的操作流程是一类常见的试题。这类试题要求解题者能将生活中的控制流程用形式化的方式表达出来。
9.10 模拟试题(十)
一.名词解释(10分)
1.临界资源与临界区 2.同步与互斥 3.信号量 4信箱 5.低级通信原语二、多项选择题(每小题2分,共10分)
1.有关进程的描述中,正确的是______________。
A.进程执行的相对速度不能由进程自己来控制。
B.P、V操作都是原语操作。
C.利用信号量的P、V操作可以交换大量信息。
D.同步是指并发进程之间存在的一种制约关系。
E.并发进程在访问共享资源时,不可能出现与时间有关的错误。
2.用于解决进程间互斥的方法是_________。
A.信号量及P、V操作 B.加锁与开锁 C.信箱方式
D.消息缓冲方式 E.特权指令方式
3.正确的叙述是____________。
A.操作系统的一个重要概念是进程,不同进程所执行的代码也不同。
B.操作系统通过PCB来控制和管理进程,用户进程可从PCB中读出与本身运行状态相关的信息。
C.当进程由执行状态变为就绪状态时,CPU现场信息必须被保存在PCB中。
D.当进程申请CPU得不到满足时,它将处于阻塞状态。
E.进程是可与其他程序并发执行的程序在一个数据集合上的运行过程,所以程序段是进程存在的惟一标志。
4.正确的叙述是________________。
A.一个进程的状态发生变化总会引起其他一些进程的状态发生变化。
B.进程被挂起(suspend)后,状态变为阻塞状态。
C.信号量的初值不能为负数。
D.线程是CPU调度的基本单位,但不是资源分配的基本单位。
E.在进程对应的代码中使用P、V操作后,可以防止系统发生死锁。
F.管程每次只允许一个进程进入。
G.P、V操作可以解决一切互斥问题。
H.程序的顺序执行具有不可再现性。
5.进程的特征有___________。
A.动态性 B.静态性 C.并发性 D.独立性 E.异步性 F.结构特性三.填空(20分)
1网络操作系统中,基本上可分为两种类型的通信方式:一是________的通信方式,二是______的通信方式。
2.对于一个进程来说,其工作的正确性不仅取决于程序的正确性,而且也与进程在执行中与其他相关进程正确地实施_____有关。
3.在进程之间有时也存在一定的制约关系,一种是直接制约关系,其基本形式为______,另一种是间接制约关系,其基本形式为______。
4.信箱是一种数据结构,逻辑上可分为两部分:__________和_________。
5.在基于消息传递的通信机制中,其核心部分是发送原语和接收原语,统称为______。
6、在客户/服务器模式下,为实现远程过程调用的透明性,设置了两个代理:一个是____;另一个是_____。
7.在操作系统中,信号量表示资源的实体,是一个与队列有关的_____型变量,其值仅能由________来改变。
8.在客户/服务器模式下,客户发送一个请求给服务器,服务器完成该请求后返回结果或出错信息。所有这些信息都是由操作系统的___________完成的。
9.对待死锁,一般应考虑死锁的预防、避免、检测和解除四个问题。典型的银行家算法是属于________,破坏环路等待条件是属于__________,而剥夺资源是__________的基本方法。
10.对外存对换区的管理应以________为主要目标,对外存文件区的管理应以________为主要目标。
11.把_________地址转换为__________地址的工作称为地址映射。
四.简答题(30分)
1.在单机操作系统中,进程如何用信箱进行相互之间的通信?
2.什么是Belady现象?
3.I/0软件设计的目标是什么?
4.文件的物理结构有哪几种?为什么说串联文件结构不适于随机存取?
5.UNIX采统为什么要设置延迟写和异步写?它们各有什么优缺点?
6.实现多道程序设计要解决哪些问题?
五,综合题(30分)
1.讨论操作系统可以从哪些角度出发,如何把它们统一起来?
2.某系统的进程状态转换图如下图所示,请说明:
(1)引起各种状态转换的典型事件有哪些?
(2)当我们观察系统中某些进程时,能够看到某一进程产生的一次状态转换能引起另一进程作一次状态转换。在什么情况下,当一个进程发生转换3时能立即引起另一个进程发生转换1?
(3)试说明是否会发生下述因果转换:
2→1
3→2
4→1
3.在银行家算法中,若出现下述资源分配情况:
进 程
Allocation
Need
Available
A B C D
A B C D
A B C D
P0
P1
P2
P3
P4
0 3 2
1 0 0 0
1 3 5 4
0 3 3 2
0 0 1 4
0 0 1 2
1 7 5 0
2 3 5 6
0 6 5 2
0 6 5 6
1 6 2 2
试问:(1)该状态是否安全?
(2)如果进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?
模拟试题(十)答案一.名词解释
1.临界资源:系统中存在许多进程,它们共享各种资源。然而有些资源一次只允许一个进程使用,在它未使用完之前5不允许其他进程使用,这样的资源称为临界资源,也称互斥资源o
临界区:互斥执行的程序段,称为临界区。
2.同步:相互合作的两个进程之间需要在某个(些)确定点上协调它们的工作。一个进程到达了该点后,除非另一进程已经完成了某些操作,否则就不得不停下来,等待这些操作的完成。这就是进程间的同步。
互斥:两个进程由于不能同时使用同一临界资源,只能在一个进程使用完了,另一进程才能使用,这种现象称为进程间的互斥。
3.信号量:在操作系统中,信号量表示资源实体,是一个与队列有关的整型变量,其值仅能由P、V操作来改变。
4信箱:信箱用于存放信件,而信件是一个进程向另一进程发送的消息。在两个进程利用信箱通信时,一个进程可向信箱发送消息,而另一进程可从信箱中取走消息。
5.低级通信原语:利用P、V操作,进程间只能交换少量信息,而且交换的信息仅是控制信息,显然其通信效率极低。这样的通信原语,称为低级通信原语。
高级通信原语:能在进程间传送大量数据信息的通信原语,称为高级通信原语。
二、多项选择题
1,A B D 2.A B 3.C 4.C D F G 5.A C D E F
三.填空
1.基于共享变量 基于消息传递
2.同步和互斥
3.进程一进程 进程一资源一进程'
4.信箱头 信箱体
5.通信原语
6.客户代理 服务器代理
7.整 P、V操作
8.内核
9.死锁的避免 死锁的预防 死锁的解除
10.提高存储空间的利用率 提高换入换出速度
11.逻辑   物理
四.简答题
1.在单机操作系统中,可以使用信箱实现两个进程之间的通信。
在操作系统中,一个进程要与另一个进程进行通信,接收消息的进程必须为自己创建一个信箱。
进程调用send原语发送信件前,必须组织好信件,然后调用send原语,并在调用时给出参数:信箱名和信件内容或信件存放起始地址。同样,接收进程也要调用receive原语,给出参数:信箱名和信件取出后的存放地址。通信原语的形式是:
send(boxname,msg)
receive (boxname,msg)
2.Belady现象是指在使用FIFO算法进行内存页面置换时,在未给进程或作业分配足够它所要求的全部页面的情况下,有时出现的分配的页面数增多,缺页次数反而增加的奇怪现象。
3.I/0软件设计的目标是:
(1)与设备无关性;
(2)错误处理;
(3)同步/异步传输;
(4)能处理独占设备和共享设备的I/O操作。
为了实现这4个目标,I/O系统组成4个层次:
(1)中断处理程序;(2)设备驱动程序;(3)与设备无关的I/0软件;(4)用户空间的I/O软件。
4.答:文件的物理结构是指文件在存储设备上的存放方法。常用的文件物理结构有连续t
文件,串联文件和索引文件3种。
串联文件结构用非连续的物理块来存放文件信息。这些非连续的物理块之间没有顺序关系,链接成一个串联队列。搜索时只能按队列中的串联指针顺序搜索,存取方法应该是顺序存取的。否则,为了读取某个信息块而造成的磁头大幅度移动将花去较多的时间。因此,串联文件结构不适于随机存取。
5.答:异步写的目的是提高写盘速度,延迟写的目的是为了让数据块在内存中待尽量多的时间,以减少不必要的I/0操作。优点:把一个缓冲区的数据往磁盘写时,如同步,进程因为等待写操作完成而进入睡眠,而且要在写操作完成后才释放缓冲区。如延迟写或异步写时,系统启动传输,不等写完成而返回,都加快了写盘速度,但延迟写还减少了不必要的I/O操作。缺点:延迟写没有立即把数据写入磁盘,当系统发生瘫痪时将产生磁盘数据错误。异步写是启动传输后,不等传输完成而返回,也可能发生数据错,但可能性小。
6.答:为了实现多道程序设计,必须解决以下三个问题:
(1)存储保护和地址重定位。
(2)处理机的管理和调度。
(3)资源的管理和调度。
五,综合题
1.讨论操作系统可以从以下角度出发:(l)操作系统是计算机资源的管理者;(2)操作系统为用户提供使用计算机的界面;(3)用进程管理观点研究操作系统,即围绕进程运行过程来讨论操作系统。
上述这些观点彼此并不矛盾,只不过代表了对同一事物(操作系统)站在不同的角度来看待。每一种观点都有助于理解、分析和设计操作系统。
2:(1)在本题所给的进程状态转换图中,存在四种状态转换。当进程调度程序从就绪队列中选取一个进程投入运行时引起转换1;正在执行的进程如因时间片用完而被暂停执行就会引起转换2;正在执行的进程因等待的事件尚未发生而无法执行(如进程请求完成I/O)则会引起转换3;当进程等待的事件发生时(如I/0完成)则会引起转换4。
(2)如果就绪队列非空,则一个进程的转换3会立即引起另一个进程的转换1。这是因为一个进程发生转换3意味着正在执行的进程由执行状态变为阻塞状态,这时处理机空闲,进程调度程序必然会从就绪队列中选取一个进程并将它投入运行,因此只要就绪队列非空,一个进程的转换3能立即引起另一个进程的转换1。
(3)所谓因果转换指的是有两个转换,一个转换的发生会引起另一个转换的发生,前一个转换称为因,后一个转换称为果,这两个转换称为因果转换。当然这种因果关系并不是什么时候都能发生,而是在一定条件下才会发生。
2→1:当某进程发生转换2时,就必然引起另一进程的转换1。因为当发生转换2时,正在执行的进程从执行状态变为就绪状态,进程调度程序必然会从就绪队列中选取一个进程投入运行,即发生转换1。
3→2:某个进程的转换3决不可能引起另一进程发生转换2。这是因为当前执行进程从执行状态变为阻塞状态,不可能又从执行状态变为就绪状态。
4→1:当处理机空闲且就绪队列为空时,某一进程的转换4就会引起该进程的转换1。因为此时处理机空闲,一旦某个进程发生转换4,就意味着有一个进程从阻塞状态变为就绪状态,因而调度程序就会将就绪队列中的此进程投入运行。
3.(1)利用银行家算法对此时刻的资源分配情况进行分析,可得此时刻的安全性分析情况。
进 程
Work
Need
Allocation
Work+Allocation
Finish
A B C D
A B C D
A B C D
A B C D
P0
P3
P4
P1
P2
1 6 2 2
1 6 5 4
1 9 8 6
1 9 9 10
2 9 9 10
0 0 1 2
0 6 5 2
0 6 5 6
1 7 5 0
2 3 5 6
0 0 3 2
0 3 3 2
0 0 1 4
1 0 0 0
1 3 5 4
1 6 5 4
1 9 8 6
1 9 9 10
2 9 9 10
3 12 14 14
true
true
trye
true
true
从上述分析中可以看出,此时存在一个安全序列{P0,P3,P4,P1,P2},故该状态是安全的。
(2)P2提出请求Request2(1,2,2,2),按银行家算法进行检查:
Request2(1,2,2,2)≤Need2(2,3,5,6)
Request2(1,2,2,2)≤Available(1,6,2,2)
试分配并修改相应数据结构,资源分配情况如下:
进 程
Allocation
Need
Available
A B C D
A B C D
A B C D
P0
P1
P2
P3
P4
0 3 2
1 0 0 0
2 5 7 6
0 3 3 2
0 0 1 4
0 0 1 2
1 7 5 0
1 1 3 4
0 6 5 2
0 6 5 6
0 4 0 0
再利用安全性算法检查系统是否安全,可用资源Available (0,4,0,0)已不能满足任何进程的需要,故系统进入不安全状态,此时系统不能将资源分配给P2。