标签:随机 产生 执行顺序 地址空间 map ++ 优先 output 题意
课后练习P294页第5、7题。
画出示意图并给出结果。
像考试一样写答题方式。
第5题:
解:如题可知,使得磁盘的旋转圈数最少的调度顺序为:5、3、2、1、4。
第7题:
解:(1)FCFS:(143-86)+(147-86)+(147-91)+(177-91)+(177-94)+(150-94)+(150-102)+(175-102)+(175-130)=565
答:先来先服务算法存取臂移动的总量为565;移动顺序为:86、147、91、177、94、150、102、175、130。
(2)SSTF:(147-143)+(150-147)+(150-130)+(130-102)+(102-94)+(94-91)+(91-86)+(175-86)+(177-175)=162
答:最短查找时间算法存取臂移动的总量为162;移动顺序为:147、150、130、102、94、91、86、175、177。
(3)SCAN:(147-143)+(150-147)+(175-150)+(177-175)+(199-177)+(199-130)+(130-102)+(102-94)+(94-91)+(91-86)=169
答:扫描算法存取臂移动的总量为169;移动顺序为:147、150、175、177、130、102、94、91、86。
(4)电梯调度算法:(147-143)+(150-147)+(175-150)+(177-175)+(177-130)+(130-102)+(102-94)+(94-91)+(91-86)=125
答:电梯调度算法存取臂移动的总量为125;移动顺序为:147、150、175、177、130、102、94、91、86。
P251,习题20
解: 1KB=210B,所以页内地址有10位,0AC5H二进制等于1010 1100 0101,高位10是虚页,转化为十进制是2,虚页2对应的页框是8,8转化为二进制等于1000,所以0AC5H对应的物理地址是10001011000101;
1AC5H二进制等于1 1010 1100 0101,高位110是虚页,转化为十进制是6,依题意虚页号和物理页号对照关系中没有虚页号6,所以会产生页失效错误。
P252,习题31
1.采用相联存储器后地址转换过程,用图表示出来
2.详述分段管理和分页管理的区别。
分页管理:
分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号,从0开始,如第0页、第1页等。相应地,也把内存空间分成与页面相同大小的若干个存储块,称为(物理)块或页框(frame),也同样为它们加以编号,如0#块、1#块等等。在为进程分配内存时,以块为单位将进程中的若干个页分别装入到多个可以不相邻接的物理块中。由于进程的最后一页经常装不满一块而形成了不可利用的碎片,称之为“页内碎片”
分段管理:
在分段存储管理方式中,作业的地址空间被划分为若干个段,每个段定义了一组逻辑信息。例如,有主程序段MAIN、子程序段X、数据段D及栈段S等。每个段都有自己的名字。为了实现简单起见,通常可用一个段号来代替段名,每个段都从0开始编址,并采用一段连续的地址空间。段的长度由相应的逻辑信息组的长度决定,因而各段长度不等。整个作业的地址空间由于是分成多个段,因而是二维的,亦即,其逻辑地址由段号(段名)和段内地址所组成。
区别:
(1)页是信息的物理(存储)单位,分页是为实现离散分配方式,以消减内存的零头,提高内存的利用率。或者说,分页仅仅是由于系统管理的需要而不是用户的需要。
段则是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好地满足用户的需要。
(2)页的大小固定且由系统决定,由系统把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而在系统中只能有一种大小的页面;而段的长度却不固定,决定于用户所编写的程序的逻辑,通常由编译程序在对源程序进行编译时,根据信息的性质来划分。
3.P249 习题11。
答:(1)649
(2)1727
(3)2301
(4)140
(5)1956
P187-43
Cemaphore
empty=1;橘子精=0;糖=0;水=0;
Process product(){
While(true){
P(empty);
产生一个随机数s;
If(s==0) V(橘子精);
If(s==1) V(水);
If(s==2) V(糖);
}
}
Process P1(){ | Process P2(){ | Process P3(){
While(true){ While(true){ While(true){
P(橘子精); P(糖); P(水);
取走橘子精; 取走糖; 取走水;
V(empty); V(empty); V(empty);
} } }
} } }
Coend
2.IPO问题:有多个输入进程、多个处理进程和多个输出进程。输入进程把数据逐步输入到一个有M个单位缓冲区B1上,经处理进程处理之后放到有N个单位的缓冲区B2上,由输出进程进行输出。
a.这个问题有哪些进程?进程之间有什么样的制约关系?
b.用信号量及PV操作写出这些进程之间的同步算法
解:
a:有输入进程、处理进程、输出进程,进程之间有同步关系。
b: semaphore B1;B1=M; /*B1可用的空缓存区*/
semaphore B2;B2=N; /*B2可用的空缓存区*/
semaphore mutex;mutex=1; /*同步信号*/
cobegin
process input(){
while(true){
p(mutex);
输入;
B1--;
v(mutex);
}
}
process chuli(){
while(true){
p(mutex);
处理;
B1++;
B2--;
v(mutex);
}
}
process output(){
while(true){
p(mutex);
输出;
B2++;
v(mutex);
}
}
coend
1.P116页,练习7
(1)采用FCFS,SJF,非抢占优先权调度算法,各作业的执行顺序。
(2)计算每种情况下作业的平均周转时间和平均带权周转时间。
写计算过程和结果。
2.P116页,练习8
(1)采用高优先权,SRTF调度算法,各作业的执行顺序。
(2)计算每种情况下作业的平均周转时间和平均带权周转时间。
8、 (1)
0 60 70 100 150
Job1 | Job4 | Job3 |
Job2 |
(2)
平均周转时间:T=((60-0)+(150-30)+(100-40)+(70-50))/4=65min
平均带权周转时间:W=((60-0)/60+(150-30)/50+(100-40)/30+(70-50)/10)/4=0.55
标签:随机 产生 执行顺序 地址空间 map ++ 优先 output 题意
原文地址:https://www.cnblogs.com/tao888/p/11004885.html