最新华师操作系统汇总文档格式.docx
《最新华师操作系统汇总文档格式.docx》由会员分享,可在线阅读,更多相关《最新华师操作系统汇总文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
8.第8题
如图所示位示图(行号、列号都从0开始编号)来管理空闲盘块。
如果盘块从1开始编号,每个盘块的大小为1KB。
(1)现要为文件分配两个盘块,请说明分配过程。
(2)若要释放第300块,应如何处理
1
2
5
6
7
8
9
11
12
13
14
15
(1)过程如下:
a、顺序检索位示图,从中找到第一个值为0的二进制位,得到其行号i1=2,列号j1=2;
第二个值为0的二进制位的行号i2=3,列号j2=6。
b、计算出找到的两个空闲块的盘块号:
b1=i1*16+j1+1=35b2=i2*16+j2+1=55c、修改位示图,令map[2,2]=map[3,6]=1,并将35,55分配出去。
(2)过程如下:
a、计算出磁盘第300块所对应得二进制位的行号i和列号j:
i=(300-1)/16=18;
j=(300-1)%16=11b、修改位示图,令map[18,11]=0
9.第12题
页的大小为1KB(1024byte)逻辑地址为2601,请计算页号、页内地址。
答:
页号2,页内地址553
10.第13题
在一个请求分页系统,采用最佳页面置换算法时,假如一个作业的页面走向为701203042303212011701,当分配给该作业的页架数为3时,试写出页面调度的过程,并计算缺页次数
LRU:
最近最久未使用置换算法
缺页率12/21
11.第2题
什么叫临界段?
临界段的设计原则是什么?
“进程中访问共享变量的代码段”称为临界段。
进程互斥地使用临界段有以下原则:
1.在共享同一个临界资源的所有进程中,每次只允许有一个进程处于它的临界段之中2.若有多个进程同时要求进入它们的临界段时,应在有限的时间内让其中之一进入临界段,而不应相互阻塞3.进程只应在临界段内逗留有限时间4.不应使要进入临界段的进程无限期地等待在临界段之外5.在临界段之外运行的进程不可以阻止其他的进程进入临界段6.在解决临界段问题时,不要预期和假定进程进展的相对速度以及可用的处理器数目,因为这是不可预期的。
批注:
12.第3题
试述产生死锁的原因和必要条件是什么?
死锁——是指计算机系统和进程所处的一种状态。
常定义为:
在系统中的一组进程由于竞争系统资源或由于彼此通信而永远阻塞我们称这些进程处于死锁状态。
死锁的原因:
在研究资源分配时,我们必须搞清该资源是可以被几个进程同时(宏观上)使用,还是只能为一个进程使用。
资源的不同使用性质正是引起系统死锁的原因。
死锁的必要条件1、互斥条件:
一个资源一次只能被一个进程所使用。
2、不可抢占条件:
一个资源仅能被占有它的进程所释放而不能被别的进程强行抢占。
3、部分分配条件:
一个进程已占有了分给它的资源但仍然要求其他资源。
4、循环等待条件:
在系统中存在一个由若干进程形成的环形请求链其中的每一个进程均占有若干种资源的某一种,同时每一个进程还要求(链上)下一个进程所占有的资源。
13.第4题
当S表示资源时,Wait(S)和Signal(S)操作的直观含义是什么?
wait(s)操作将信号量值增1后,若该值为负,则执行wait操作的进程等待。
signal(s)操作将信号量增1后,若该值为正,这执行signal操作的进程唤醒等待进程。
14.第9题
为什么Signal,Wait操作必须是不可分割的?
wait,signal操作是不可分割的:
信号量本身也成为被这些进程访问的共享变量。
在而每个信号量的同步原语,无论是Wait(S)还是Signal(S)中的代码都是对共享变量――信号量S,进行操作的代码,都是临界段代码。
“信号量上的同步原语应该是原子的操作”,也就是说这些原语应该是一个整体的不可分的操作。
保证进程间互斥地使用同步原语。
整体操作、不可分割,也就是不可打断其执行或者说不可中断。
15.第10题
什么叫重定位?
有哪几种重定位技术?
有何区别?
重定位是把程序中相对地址变换为绝对地址。
对程序进行重定位的技术目前按重定位的时机区分为两种:
静态重定位和动态重定位。
静态重定位是要把程序中所胡与地址有关的项在程序运行前(确切地说是在程序装入主存时)修改好,它是在程序装入主存时由连接装入程序进行重定位动态重定位不是在程序装入过程中进行。
在处理器每次访问主存时,由动态地址变换机构(硬件)自动进行把相对地址转换为绝对地址。
16.第16题
试述简单分页的概念和地址转换过程。
简单分页——把主存分成许多同样大小的存储块,并以这种存储块作为存储分配单位。
地址转换过程:
(1)、首先将逻辑地址左边表示页号部分的页号抽取出来;
(2)、以页号作为索引查找该进程页表,找出该页存放的主存页架号;
(3)、用此页架号(二进制形式)取代逻辑地址的左边部分,并与右边的页内地址合并成相应的物理地址去访问主存。
作
业
1.第1题
逻辑上具有完整意义的信息集合称为“文件”。
2.第7题
是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位。
3.第8题
死锁
一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象称为进程死锁,这一组进程就称为死锁进程。
若死锁发生,会浪费大量系统资源,甚至导致系统崩溃。
4.第10题
相对地址
就是被链接文件相对于当前页面的地址。
相也可当相应、类似相关的地址,如参考地址。
5.第11题
操作系统
是控制和管理计算机系统的硬件和软件资源、合理地组织工作流程以及方便用户的程序集合。
6.第2题
请画出进程的五种基本状态及其转换过程,并作相应解释。
五种基本状态
1)运行状态(Running):
进程占用处理器资源;
处于此状态的进程的数目小于等于处理器的数目。
在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。
2)就绪状态(Ready):
进程已获得除处理器外的所需资源,等待分配处理器资源;
只要分配了处理器进程就可执行。
就绪进程可以按多个优先级来划分队列。
例如,当一个进程由于时间片用完而进入就绪状态时,排人低优先级队列;
当进程由I/O操作完成而进入就绪状态时,排入高优先级队列。
3)阻塞状态(Blocked):
当进程由于等待I/O操作或进程同步等条件而暂停运行时,它处于阻塞状态。
4)创建状态(New):
进程正在创建过程中,还不能运行。
操作系统在创建状态要进行的工作包括分配和建立进程控制块表项、建立资源表格(如打开文件表)并分配资源、加载程序并建立地址空间表等。
5)退出状态(Exit):
进程已结束运行,回收除进程控制块之外的其他资源,并让其他进程从进程控制块中收集有关信息(如记帐和将退出代码传递给父进程)。
转换过程:
五状态进程模型中的状态转换主要包括下列几种。
操作系统中多个进程的并发执行是通过调度与超时两种转换间的循环,或调度、等待事件和事件出现三种转换间的循环来描述的。
1)创建新进程:
创建一个新进程,以运行一个程序。
创建新进程的可能原因包括用户登录、操作系统创建以提供某项服务、批处理作业等。
2)收容(Admit,也称为提交):
收容一个新进程,进入就绪状态。
由于性能、内存等原因,系统会限制并发进程总数。
3)调度运行(Dispatch):
从就绪进程表中选择一个进程,进入运行状态。
4)释放(Release):
由于进程完成或失败而终止进程运行,进入结束状态。
?
7.第3题
解:
T
16
17
18
19
20
21
P
M
F
+
所以缺页次数为9次
8.第4题
55,58,39,18,90,160,150,38,184
调度如下:
被访问的下一个磁道号
移动距离
(磁道数)
150
160
184
38
39
55
58
90
50
24
166
32
9.第9题
分析:
四人之间的关系:
1.父亲、母亲要互斥使用盘子,所以两者之间是互斥关系;
2.父亲放的苹果,女儿吃,所以两者是同步关系;
3.母亲放的桔子,儿子吃,所以两者也是同步关系。
semaphores_emptyplate=1,s_apple=0,s_orange=0;
voidfather()//父亲进程{while
(1){p(s_emptyplate);
往盘子中放入一个苹果;
v(s_apple);
}}voidmother()//母亲进程{while
(1){p(s_emptyplate);
往盘子中放入一个桔子;
v(s_orange);
}}voidson()//儿子进程{while
(1){p(s_orange);
从盘中取出一个桔子;
v(s_emptyplate);
吃桔子;
}}voiddaughter()//女子进程{while
(1){p(s_apple);
从盘中取出一个苹果;
吃苹果;
}}
页的大小为1KB(1024byte)逻辑地址为2500,请计算页号、页内地址。
逻辑地址A
1024
2048
2500
页号p
p=1
p=2
452
所以页号是2,页内地址是452
11.第14题
在一个请求分页系统,采用LRU页面置换算法时,假如一个作业的页面走向为701203042303212011701,当分配给该作业的页架数为3时,试写出页面调度的过程,并计算缺页次数
0.0
12.第16题
根据所给出的参数,请分析操作系统的不同调度算法,计算并填写下表中空白的地方
进程名
A
B
C
D
E
到达时间
服务时间
FCFS
完成时间
周转时间
带权周转时间
SIF
45
33
23
67
46
34
44
56
65
22
43
54
13.第20题
银行家算法中,若出现下面的资源分配情况:
Processyg
(进程)
Allocation
(已分配到的量)
Need
(还需要的量)
Available
(可利用的量)
P0
1122
0021
1652
P1
0100
1250
P2
0354
1356
P3
1032
2652
P4
0103
0256
(1)
该状态是否安全?
请说明理由。
(2)
若此时进程P3提出请求Request(1,4,5,2)后,系统能否将资源分配给它?
⑴该状态是安全的,因为存在一个安全序列<
P0P4P1P2P3>
。
下表为该时刻的安全序列表。
资源情况进程
Work
Work+Allocation
Finish
2774
2877
2977
1121211
2121211
3121513
true
⑵若进程P3提出上述请求,系统不能将资源分配给它,因为分配之后系统将进入不安全状态。
P2请求资源:
P3发出请求向量Request3(1,4,5,2),系统按银行家算法进行检查:
①Request2(1,4,5,2)≤Need2(2,6,5,2);
②Request2(1,4,5,2)≤Available(1,6,5,2);
③系统暂时先假定可为P2分配资源,并修改P2的有关数据,如下表:
2484
1110
0?
200
可用资源Available(0,2,0,0)已不能满足任何进程的需要。
14.第5题
1.在共享同一个临界资源的所有进程中,每次只允许有一个进程处于它的临界段之中2.若有多个进程同时要求进入它们的临界段时,应在有限的时间内让其中之一进入临界段,而不应相互阻塞3.进程只应在临界段内逗留有限时间4.不应使要进入临界段的进程无限期地等待在临界段之外5.在临界段之外运行的进程不可以阻止其他的进程进入临界段6.在解决临界段问题时,不要预期和假定进程进展的相对速度以及可用的处理器数目,因为这是不可预期的。
15.第6题
简单分段——按照程序模块来划分段,并按这些段来分配主存。
地址转换过程:
把逻辑地址左边段号部分提取出来,作为索引,查找进程的段表。
将段内地址与段的长度比较。
如果大于段的长度,则将引起非法访问中断(越界访问)。
如果是合法访问,那么将段的起始地址与段内地址相加,即是所要访问的物理地址。
16.第12题
产生死锁的原因有两点:
一是系统资源不足,二是进程推进顺序不当。
产生死锁的必要条件有四种:
一是互斥条件,即在一段时间内资源为某一进程所独占。
二是请求和保持条件:
进程因请求资源被阻塞时,对已分配给他的资源保持不放。
三是不剥夺条件:
进程所获得的资源在未使用完之前,不能被其他进程独占,而只能由该进程自己释放。
四是环路条件:
在发生死锁时,里程的资源图必将构成一个环路,即一个进程保持着后一个进程所需要的资源。
17.第15题
整体操作、不可分割,
18.第17题
19.第18题
SPOOL系统的结构包括哪几部份,它是如何工作的?
SPOOL系统——通过共享设备来模拟独占型设备的动作,使独占型设备成为共享设备从而提高了设备利用率和系统的效率,这种技术被称为虚拟设备技术,实现这一技术的硬件和软件系统被称为SPOOL系统,或称为假脱机系统;
SPOOL系统又由输入输出两部分组成,假定某系统的全部行式打印机采用了虚拟设备技术(即使用了SPOOL技术),当某进程要求打印输出时,输出SPOOL并不是把某台打印机分配给该进程,而是在某共享设备(磁盘)上的输出SPOOL存储区中,为其分配一块存储空间,同时为该进程的输出数据建立一个文件(文件名可缺省)。
该进程的输出数据实际上并