操作系统各章总结Word文档下载推荐.docx
《操作系统各章总结Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《操作系统各章总结Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
它是提供给用户使用的接口,用户可以通过该接口取得操作系统的服务。
程序接口:
它是提供给程序员在编程时使用的接口,是用户程序取得操作系统服务的唯一途径)
7,设计现代os的主要目标是什么:
1,有效性2,方便性3,可扩充性4,开放性
二.1简述进程的5个特征。
进程的定义?
答
(1)动态性:
进程是程序的执行过程,它由创建而产生,由调度而执行,因得不到资源而暂停,并由撤销而死亡。
2)并发性:
多个进程实体同存于内存中,能在一段时间内同时运行。
(3)独立性:
进程是一个独立获得资源和独立调度的单位。
(4)异步性:
进程按各自独立的不可预知的速度向前推进。
(5)结构特征:
从结构上看,进程实体由程序段、数据段和进程控制块3部分组成。
定义:
是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。
2,前趋图:
用于描述进程之间执行的前后关系的有向无循环图。
2,进程并发执行的特征及产生间断性的原因:
1,间断性(并发执行时,由于他们共享系统资源,以及为完成同一任务而相互合作,致使在这些并发执行的程序之间形成了相互制约的关系)2,失去封闭性3,不可在现性
3,进程的三种基本状态:
1,就绪2,执行3,阻塞
2.什么叫进程同步机制?
请叙述进程同步机制的4条准则。
用于保证多个进程在执行次序上的协调关系的相应机制,称为进程同步机制。
进程同步机制的4条准则:
(1)空闲让进。
当无进程在临界区时,允许一个请求进入临界区的进程立即进入自己的临界区。
(2)忙则等待。
当已有进程进入其临界区时,其他试图进入临界区的进程必须等待(3)有限等待。
对要求访问临界资源的进程,应保证它在有限时间内进入临界区。
(4)让权等待。
当进程不能进入其临界区时,应立即释放处理器等待
4,临界资源:
一次仅允许一个进程使用的资源,如输入机,打印机,磁带机等。
临界区:
把在每一个进程中访问临界资源的那段代码成为临界区。
PV原语:
通过操作信号量来处理进程间的同步与互斥问题,其核心就是一段不可分割不可中断的程序。
5,试从动态性,并发性,独立性上比较进程和程序:
1,动态性,是进程最基本的特征,进程的实质是进程实体的一次执行过程,有一定的生命期,而程序只是一组有序的指令的集合,本身不具有运动的含义,因而是静态的2,并发性,多个进程实体同存于内存中且能够在一段时间内同时运行,而程序是不能并发执行的3,独立性,进程实体是一个能独立运行,独立分配和独立接受调度的基本单位,凡未建立pcb的程序都不能作为一个独立的单位参与运行。
6,原语:
是由若干指令组成的,用于完成一定功能的一个过程。
三.1,作业:
是一个比程序更广泛的概念,不仅包含了通常的程序和数据,而且还配有一份作业说明书,系统根据该说明来对程序的运行进行控制。
2,进程调度方式:
非抢占方式,抢占方式(原则:
优先权原则,短作业优先,时间片原则)
5,什么是死锁及其产生的原因?
1指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵局状态时,若无外力作用,它们都将无法再向前推进。
2,a,竞争资源b,进程间推进顺序非法
5,处理死锁的基本方法:
1,预防死锁2,避免死锁3,检测死锁4,解除死锁
6,产生死锁的条件:
互斥条件,请求和保护条件,不剥夺条件,环路等待条件
6,高级调度与低级调度的主要任务是什么?
为什么要引入中级调度?
高级调度的主要任务是根据某种算法,把外存上处于后备队列中的那些作业调入内存。
低级调度是保存处理机的现场信息,按某种算法先取进程,再把处理器分配给进程。
引入中级调度的目的是为了提高内存利用率和系统吞吐量。
使那些暂时不能运行的进程不再占用内存资源,将它们调至外存等待,把进程状态改为就绪驻外存状态或挂起状态。
7,临界资源:
打印机。
不能并发,首先进行互斥操作
四,1,程序的装入:
1,绝对装入方式2,可重定位装入方式3,动态运行时装入方式
程序的链接:
静态链接,装入时动态链接3,运行时动态链接
2,页面置换算法:
1,最佳页面置换OPT(难以实现)2,先进先出(FIFO)3,最近最久未使用(LRU)4,CLOCK置换算法(访问位是否为1).。
。
1,连续分配方式:
1,单一连续分配2,固定分区分配3,动态分
2,分段存储管理的引入原因:
方便编程,信息保护,信息共享,动态增长,动态链接
3,分段和分页的主要区别:
1,页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头提高内存的利用率,分段是为了能够更好的满足用户的需要2,页的大小固定且由系统决定,而段的长度不固定3,分页的作业地址空间是一维的而分段是二维的。
1.什么是动态重定位?
它有什么好处?
动态重定位是指在程序执行过程中进行的地址重定位,即可使装配模块不加任何修改就装入内存。
好处主要有2个,一是被装入的程序可以在内存中移动而不影响其程序正确运行;
二是程序的若干个相对独立的目标模块可以装在不相邻的内存区域。
2.什么是虚拟存储器?
有何特征?
虚拟存储器是具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的存储器系统。
虚拟存储器有如下4个特性:
离散性,内存采用离散分配方式。
多次性,一个作业分多次调入内存运行。
对换性,作业运作业行过程中在内存和外存对换区之间换进、换出。
虚拟性,从逻辑上对内存容量进行扩充。
3,分区存储管理中常用那些分配策略?
比较他们的优缺点。
答:
策略:
首次适应算法,循环首次适应算法,最佳适应算法,最坏是适应算法
A,首次适应算法优缺点:
保留了高址部分的大空闲区,有利于后来的大型作业分配;
低址部分不断被划分,留下许多难以利用的小空闲区,每次查找都从低址开始,增加了系统开销B,循环首次适应算法的优缺点:
内存空闲分区分布均匀,减少了查找系统开销,缺乏大空闲分区,导致不能装入大型作业C,最佳适应算法优缺点:
每次分配给文件的都是最适合该文件大小的分区,内存中留下许多难以利用的小空闲区D,最坏适应算法优缺点:
剩下空闲区不太小,产生碎片几率小,对中小型文件分配分区操作有利,存储器中缺乏大空闲区,对大型文件分区分配不利。
五,1,有哪几种I/O控制方式?
各适用于何种场合?
共有四种,1,程序io方式:
早起计算机无中断结构,处理机对io设备的控制采用程序io方式或称忙等的方式。
2,中断驱动方式:
适用于有中断机构的计算机系统中3,直接存储器访问(DMA)io控制方式:
适用于具有DMA控制器的计算机系统中。
4,io通道控制方式:
具有通道程序的计算机系统中。
2,I/O设备分为三类:
共享设备,独占设备,虚拟设备
1.简述磁盘调度算法SCAN。
SCAN比最短寻找时间优先算法SSTF有何优点?
SCAN算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。
SCAN算法要选择的下一个访问的对象是磁头当前移动方向上与当前磁头距离最近的。
当移动方向上不再有请求时磁头立即换向。
SCAN它克服了SSTF某些进程的请求长时间得不到服务,称为饥饿现象。
因为SSTF算法使访问的磁道与磁头当前位置距离最近的新请求先得到服务。
2.请叙述根据设备的固有属性所采用的三种设备分配策略?
三种设备分配策略是独享方式、共享方式和虚拟方式。
(1)独享方式是指一个设备一旦分配给某进程后,便一直由它独占,直至该进程完成或释放该设备为止。
(2)共享方式是将共享设备同时分配给多个进程并发使用。
(3)虚拟方式是通过高速的共享设备,把一台慢速设备改造成若干台虚拟的同类设备,它需要SPOOLing技术的支持。
4,何为设备虚拟?
设备虚拟是指把独占设备经过某种技术处理改造成虚拟设备
5是说明spooling系统的组成及特点?
由输入井和输出井,输入缓冲区和输出缓冲区,输入进程和输出进程三部分组成
特点:
1,提高输入输出速度2,将独占设备改造为共享设备3,实现了虚拟设备的功能
6,磁盘调度:
1,先来先服务(FCFS)2,最短寻道时间优先(SSTF)3,SCAN4,CSCAN
六,1,文件:
由创建者所定义的,具有文件名的一组相关元素的集合,分有结构文件和无结构文件,有结构的文件由若干个相关记录组成,无结构文件则被看作是一个字符流,是文件系统中最大的数据单位,描述了一个对象集,一个文件必须有一个文件名,通常由一串ASCII码或汉子组成
数据项:
分为基本数据项和组合数据项,基本数据项描述一个对象某种属性的字符集,具有数据名,数据类型及数据值三个特征,组合数据项有若干数据项构成。
记录:
是一组相关数据项的集合,用于描述一个对象某方面的属性。
1.多级目录结构有什么优点?
[答]:
不同用户的文件、不同性质的文件可以构成不同的子树,便于管理;
系统或用户可以规定不同层次、不同子树文件有不同的存取权限,以便更好地对文件进行保护。
2.简单描述建立一个文件和删除一个文件的处理过程。
[答]建立一个文件的过程:
按照要建立文件的文件名在相应的目录结构中找它的文件控制块,若不存在为正常;
在目录中找一个空闲的文件控制块填上文件名等初始化信息,并填文件在盘上的开始地址。
删除一个文件的过程:
按照要删除文件的文件名在相应的目录结构中找它的文件控制块,若存在为正常;
释放该文件占有的所有盘空间;
释该文件的文件控制块。
3,文件存储空间的管理方法?
空闲表法和空闲链表法,位示图法,成组链接法
4,文件的三种分类方法?
1,按用途分:
系统文件,用户文件,库文件2,按文件中数据形式分类:
源文件,目标文件,可执行文件,只读文件,读写文件4,按组织形式和处理方法分类:
普通文件,目录文件,特殊文件
5,文件系统管理对象:
文件,目录,磁盘存储空间
6,系统调用“打开”的功能:
系统将致命文件的属性,从外存拷贝到内存打开文件表的一个表目中,并将表目的编号返回给用户
文件系统模型:
对象及其属性,对对象进行操纵和管理的软件集合,文件系统提供给用户接口(从低到高层)
文件系统管理对象:
1.假定某请求页式存储管理系统中,为一进程分配了内存物理块3块,考虑以下的页面引用串:
1,2,3,4,2,1,4,5,2,1,2,3。
问:
(1)若按最近最久未使用(LRU)页面置换算法,请问将发生缺页中断的次数和缺页率(开始3页不算缺页),并画图示意。
(2)若页面大小为1KB,试给出虚地址(12345)8对应的物理地址(仍用8进制表示,假定该虚页对应的内存物理块号为7)。
(1)页面引用串如下:
123421452123
LRU111444444111
M=322222255553
3331112222
缺页:
******
缺页次数F=6次,缺页率f=6/12=50%。
(2)因为页面为1KB,所以页内地址占10位,虚地址对应的物理块号为7
所以虚地址(12345)8=(1010011100101)2=(101)2(0011100101)2
转换(111)2(0011100101)2=(1110011100101)2=(16345)8
1.假定由5个进程{PA、PB、PC、PD、PE}和三种资源A、B、C的数量分别为7、5、10。
在T0时刻若有以下分配情况:
最大需求已分配
ABCABC
PA213012
PB347030
PC314210
PD259203
PE222102
请判断系统当时是否是安全的?
此算法用在何处?
起什么作用?
当时系统是安全状态的,因为找到了一条安全分配序列PA、PC、PB、PD、PE。
该算法被银行家算法调用。
银行家算法中试分配资源后调用该算法分析试分配后的系统是否仍处于安全状态,若安全的则正式分配,否则作废试分配,以防止系统进入不安全状态,从而避免发生死锁。
10,写出一个不会出现死锁的哲学家进餐问题的算法:
Typesemaphore:
record
Varchopsticksarryofsemaphore:
=(1,1,1,1,1)
Varvalue:
integer:
=4
Begin
Repeat
Eat:
Wait(value)
Swait(chopsticks[i])
Swait(chopsticks[(i+1)mod5])
Eatoperation
Think
Signal(value);
Ssignal(chopsticks[i]);
Ssignal(chopsticks[(i+1)mod5])
Thinkoperation
End
2,写出一个利用记录型信号量不会出现死锁的哲学家进餐问题的算法
Varchopstick:
arry[o,…,4]ofsemaphore;
所有信号量均被初始化为1,第i位哲学家的活动可描述为:
Repeat
Wait(chopstick[i]);
Wait(chopstick[(i+1)mod5]);
…
Eat;
Signal(chopstick[i]);
Signal(chopstick[(i+1)mod5])
Think;
Untilfalse;
1.假设有一个计算进程CP和一个打印进程PP,进程CP将计算结果送入由5个缓冲区组成的缓冲池,进程PP从该缓冲区中取出数据并打印。
为实现进程同步,设置信号量SC、SP,送数指针in、取数指针out。
同步算法如下:
structsemaphoreSC,SP=5,0;
messagebuffers[5];
intin,out=0,0;
messagex,y;
cobegin
voidCP()
{while(TRUE){
计算下一个数据到x;
P(SC;
buffers[in]=x;
in=(in+1)%5;
V(SP);
}
voidPP()
P(SP);
y=buffers[out];
out=(out+1)%5;
V(SC);
打印y中的数据;
coend
(1)指出信号量SC、SP初值的物理意义?
(2)要求打印进程打印的数据与计算进程计算的数据个数、次序完全一致,在括号内填入有关的语句,完善程序。
(1)信号量SC的初值为5,意味着系统开始时计算进程CP可向缓冲池送5个数据;
而信号量SP的初值为0,意味着系统开始时打印进程PP在缓冲池中没有可以取的数据。
2.下面是用信号量机制解决生产者——消费者问题需要完善的程序:
structsemaphoremutex,SP,SC=1,n,0;
messagebuffers[n];
intin,out:
=0,0;
messagex,y;
voidP()
生产一个消息送x;
P(SP);
P(mutex);
in=(in+1)modn;
V(mutex);
V(SC);
}
voidC()
{while(TRUE){
p(SC);
p(mutex);
out=(out+1)%n;
V(mutex);
V(SP)
消费y中的消息;
(1)指出信号mutex、SP、SC初值的意义?
(2)在括号内填入有关的语句完善上述程序。
(1)mutex是互斥信号量,初值为1,表示开始时无进程在临界区,对in,out互斥。
SP是同步信号量,初值为N,表示开始时生产者可向缓冲区送n个数据。
SC是同步信号量,初值为0,表示开始时缓冲区中没有消费者取的数据。
3,一把锁,当W=1是表示关锁,当W=0时表示锁已打开。
试写出开锁和关锁的原语,并利用他们实现互斥
整形信号量:
lock(W):
whileW=1dono-op
W:
=1;
Unclock(W):
W:
=0;
记录型信号量:
=W+1;
If(W>
1)thenblock(W,L)
Unclock(W):
=W-1;
0)thenwakeup(W,L)
例子:
varW:
semaphore:
Begin
Lock(W);
Criticalsection
Unclock(w);
Remaindeisection
end