华师在线操作系统作业Word下载.docx
《华师在线操作系统作业Word下载.docx》由会员分享,可在线阅读,更多相关《华师在线操作系统作业Word下载.docx(12页珍藏版)》请在冰点文库上搜索。
答:
五种基本状态
1)运行状态(Running):
进程占用处理器资源;
处于此状态的进程的数目小于等于处理器的数目。
在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。
2)就绪状态(Ready):
进程已获得除处理器外的所需资源,等待分配处理器资源;
只要分配了处理器进程就可执行。
就绪进程可以按多个优先级来划分队列。
例如,当一个进程由于时间片用完而进入就绪状态时,排人低优先级队列;
当进程由I/O操作完成而进入就绪状态时,排入高优先级队列。
3)阻塞状态(Blocked):
当进程由于等待I/O操作或进程同步等条件而暂停运行时,它处于阻塞状态。
4)创建状态(New):
进程正在创建过程中,还不能运行。
操作系统在创建状态要进行的工作包括分配和建立进程控制块表项、建立资源表格(如打开文件表)并分配资源、加载程序并建立地址空间表等。
5)退出状态(Exit):
进程已结束运行,回收除进程控制块之外的其他资源,并让其他进程从进程控制块中收集有关信息(如记帐和将退出代码传递给父进程)。
转换过程:
五状态进程模型中的状态转换主要包括下列几种。
操作系统中多个进程的并发执行是通过调度与超时两种转换间的循环,或调度、等待事件和事件出现三种转换间的循环来描述的。
1)创建新进程:
创建一个新进程,以运行一个程序。
创建新进程的可能原因包括用户登录、操作系统创建以提供某项服务、批处理作业等。
2)收容(Admit,也称为提交):
收容一个新进程,进入就绪状态。
由于性能、内存等原因,系统会限制并发进程总数。
3)调度运行(Dispatch):
从就绪进程表中选择一个进程,进入运行状态。
4)释放(Release):
由于进程完成或失败而终止进程运行,进入结束状态。
?
4
7.第3题
在一个请求分页系统,采用最佳页面置换算法时,假如一个作业的页面走向为701203042303212011701,当分配给该作业的页架数为3时,试写出页面调度的过程,并计算缺页次数
解:
T
1
2
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
P
M
F
+
所以缺页次数为9次
8.第4题
有如下的一个磁盘请求序列,其磁道号为:
55,58,39,18,90,160,150,38,184
开始时,读写头位于100号磁道向磁道号增加的方向运动,现采用循环扫描策略CSCAN,请画出磁盘调度的过程
调度如下:
被访问的下一个磁道号
移动距离
(磁道数)
150
160
184
38
39
55
58
90
50
24
166
32
9.第9题
有一只盘子,每次放入一个水果,父亲总是放苹果到盘中,母亲向盘中放桔子,一个儿子专等吃盘中的桔子,一个女儿专等吃盘中的苹果。
试用P-V操作定出他们能同步、互斥的相关语句。
分析:
四人之间的关系:
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);
从盘中取出一个苹果;
吃苹果;
}}
10.第13题
页的大小为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题
为什么Signal,Wait操作必须是不可分割的?
wait,signal操作是不可分割的:
信号量本身也成为被这些进程访问的共享变量。
在而每个信号量的同步原语,无论是Wait(S)还是Signal(S)中的代码都是对共享变量――信号量S,进行操作的代码,都是临界段代码。
“信号量上的同步原语应该是原子的操作”,也就是说这些原语应该是一个整体的不可分的操作。
保证进程间互斥地使用同步原语。
整体操作、不可分割,
18.第17题
当S表示资源时,Wait(S)和Signal(S)操作的直观含义是什么?
wait(s)操作将信号量值增1后,若该值为负,则执行wait操作的进程等待。
signal(s)操作将信号量增1后,若该值为正,这执行signal操作的进程唤醒等待进程。
19.第18题
SPOOL系统的结构包括哪几部份,它是如何工作的?
SPOOL系统——通过共享设备来模拟独占型设备的动作,使独占型设备成为共享设备从而提高了设备利用率和系统的效率,这种技术被称为虚拟设备技术,实现这一技术的硬件和软件系统被称为SPOOL系统,或称为假脱机系统;
SPOOL系统又由输入输出两部分组成,假定某系统的全部行式打印机采用了虚拟设备技术(即使用了SPOOL技术),当某进程要求打印输出时,输出SPOOL并不是把某台打印机分配给该进程,而是在某共享设备(磁盘)上的输出SPOOL存储区中,为其分配一块存储空间,同时为该进程的输出数据建立一个文件(文件名可缺省)。
该进程的输出数据实际上并未从打印机上输出,而只是以文件形式输出,并暂时存放在输出SPOOL存储中。
这个输出文件实际上相当于虚拟的行式打印机。
各进程的输出都以文件形式暂存放在输出SPOOL存储区中并形成了一个输出队列,由输出SPOOL控制打印机进程,依次将输出队列中的各进程的输出文件最后实际地打印输出。
输入SPOOL与输出SPOOL工作原理基本相同。
20.第19题
什么叫重定位?
有哪几种重定位技术?
有何区别?
重定位是把程序中相对地址变换为绝对地址。
对程序进行重定位的技术目前按重定位的时机区分为两种:
静态重定位和动态重定位。
静态重定位是要把程序中所胡与地址有关的项在程序运行前(确切地说是在程序装入主存时)修改好,它是在程序装入主存时由连接装入程序进行重定位动态重定位不是在程序装入过程中进行。
在处理器每次访问主存时,由动态地址变换机构(硬件)自动进行把相对地址转换为绝对地址。
作业总得分:
86
作业总批注: