最新OS习题课部分答案.docx
- 文档编号:28125295
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:34
- 大小:142.08KB
最新OS习题课部分答案.docx
《最新OS习题课部分答案.docx》由会员分享,可在线阅读,更多相关《最新OS习题课部分答案.docx(34页珍藏版)》请在冰豆网上搜索。
最新OS习题课部分答案
OS习题课部分答案
存储管理
2、某系统采用请求分页式管理,页面淘汰算法为LRU,每个作业占15页,其中一页用来存放程序,每一页存放200个整型变量,考虑如下程序:
inta[20][100],b[20][100],i,j;
for(i=1;i<=20;i++)
for(j=1;j<=100;j++)
a[i][j]=0;
for(i=1;i<=20;i++)
for(j=1;j<=100;j++)
b[i][j]=a[i][j];
设数组ab均按行存储,程序已经调入主存,变量ij放在程序页中,问此程序会产生多少次缺页中断?
最后留在内存中有哪些页面?
解:
数组a,2000个元素,共需占用10个页面,每两行一页
数组b,2000个元素,共需占用10个页面,每两行一页
第一个循环,a[I,j]=0会将a矩阵全部调入内存被赋值0,发生10次缺页中断,还剩4块;
第二个循环,先读a,再写b,剩余的空闲4块内存,可放入b数组的0~7行,此时内存已满,若用A1表示a数组的a[0]和a[1]行占据的页面编号,则a数组的A0~A19和b数组的B0~B3页面(b[0]~b[7]行)均被读入内存,
即b[i][j]=a[i][j];的循环中从b[8]行开始要进行LRU淘汰,根据该循环特点,b[8]行=a[8]行
与b[9]行=a[9]行这两次循环的页面访问是A4B4A4B4,整个循环序列为:
A4B4A4B4,A5B5A5B5,…A13B13A13B13,可化简为A4B4,A5B5,…A13B13
A4
B4
A5
B5
A6
B6
A7
B7
A8
B8
A9
B9
A10
B10
A11
B11
A12
B12
A13
B13
A0
B4
B11
1
B5
B12
2
B6
B13
3
B7
4
A4
A11
5
A5
A12
6
A6
A13
7
A7
8
A8
9
B8
b0
A9
b1
B9
b2
A10
b3
中式饰品风格的饰品绝对不拒绝采用金属,而且珠子的种类也更加多样。
五光十色的水晶珠、仿古雅致的嵌丝珐琅珠、充满贵族气息的景泰蓝珠、粗糙前卫的金属字母珠片的材质也多种多样。
(二)创业优势分析B10
一、消费者分析
1996年“碧芝自制饰品店”在迪美购物中心开张,这里地理位置十分优越,交通四通八达,由于位于市中心,汇集了来自各地的游客和时尚人群,不用担心客流量的问题。
迪美有300多家商铺,不包括柜台,现在这个商铺的位置还是比较合适的,位于中心地带,左边出口的自动扶梯直接通向地面,从正对着的旋转式楼梯阶而上就是人民广场中央,周边4、5条地下通道都交汇于此,从自家店铺门口经过的90%的顾客会因为好奇而进去看一下。
木质、石质、骨质、琉璃、藏银……一颗颗、一粒粒、一片片,都浓缩了自然之美,展现着千种风情、万种诱惑,与中国结艺的朴实形成了鲜明的对比,代表着欧洲贵族风格的饰品成了他们最大的主题。
(1)政策优势
在我们学校大约有4000多名学生,其中女生约占90%以上。
按每十人一件饰品计算,大概需要360多件。
这对于开设饰品市场是很有利的。
女生成为消费人群的主体。
14次缺页中断
+
在上海,随着轨道交通的发展,地铁商铺应运而生,并且在重要的商业圈已经形成一定的气候,投资经营地铁商铺逐渐成为一大热门。
在人民广场地下“的美”购物中心,有一家DIY自制饰品店---“碧芝自制饰品店”。
+
十几年的学校教育让我们大学生掌握了足够的科学文化知识,深韵的文化底子为我们创业奠定了一定的基础。
特别是在大学期间,我们学到的不单单是书本知识,假期的打工经验也帮了大忙。
+
据了解,百分之八十的饰品店都推出“DIY饰品”来吸引顾客,一方面顺应了年轻一代喜欢与众不同、标新立异的心理;另一方面,自制饰品价格相对较低,可以随时更新换代,也满足了年轻人“喜新厌旧”的需要,因而很受欢迎。
+
+
+
+
+
+
+
+
+
+
+
+
总共发生14+15=29次缺页中断,内存中最终页面A7-A13,B7-B13
3.考虑以下程序:
inta[100][150],b[150][200],c[100][200],i,j,k;
For(i=1;i<=100;i++)
for(j=1;j<=200;j++)
for(k=1;k<=150;k++)
c[i][j]=c[i][j]+a[i][k]*b[k][j];
设a、b矩阵已经置好初值,c矩阵初始为0,各矩阵以页为单位连续存放;主存初始为空,请求分页时采用fifo算法。
问:
当作业分配10个页面,每个页面可存储100整数,缺页次数是多少?
留在内存的最后的页面abc矩阵各占多少页?
解:
矩阵a[100][150]共需150页每行占1.5个页面
矩阵b[150][200]共需300页每行占2个页面
矩阵c[100][200]共需200页每行占2个页面
程序的逻辑地址空间中,总共需要650个页面,试编号为:
a占用1-150号页面;b占151-450号;c占451-650号.
c[i][j]=c[i][j]+a[i][k]*b[k][j]→读a,读b,计算a*b,读c,计算c+a*b,写c;而与内存访问有关的操作可简化为:
读a,读b,读c,写c
对于依次访问的a,b,c矩阵,只要不跨页,不会发生缺页中断;比如每次访问a[I,k]和c[I,j]时;但是,在每次访问b[k][j]的时候,由于是按列读取,必然跨页。
采用fifo算法,页面调度过程如下:
循环变量
读写操作
内存页面
i,j,k
1
2
3
4
5
6
7
8
9
10
缺页
1,1,1
读a
1
缺
读b
1
151
缺
读c写c
1
151
451
缺
1,1,2
读a
1
151
451
读b
1
151
451
153
缺
读c写c
1
151
451
153
1,1,3
读a
1
151
451
153
读b
1
151
451
153
155
缺
读c写c
1
151
451
153
155
………每次循环发生1次缺页,且都是为读b而生,从151-165都被载入内存
1,1,8
读a
1
151
451
153
155
157
159
161
163
读b
1
151
451
153
155
157
159
161
163
165
缺
读c写c
1
151
451
153
155
157
159
161
163
165
1,1,9
读a
1
151
451
153
155
157
159
161
163
165
读b
167
151
451
153
155
157
159
161
163
165
缺
读c写c
167
151
451
153
155
157
159
161
163
165
1,1,10
读a
167
1
451
153
155
157
159
161
163
165
缺
读b
167
1
169
153
155
157
159
161
163
165
缺
读c写c
167
1
169
451
155
157
159
161
163
165
缺
1,1,11
读a
167
1
169
451
155
157
159
161
163
165
读b
167
1
169
451
171
157
159
161
163
165
缺
读c写c
167
1
169
451
171
157
159
161
163
165
………每次循环发生1次缺页
1,1,100
读a
1
331
333
335
337
339
341
343
345
347
缺
读b
1
349
333
335
337
339
341
343
345
347
缺
读c写c
1
349
451
335
337
339
341
343
345
347
缺
1,1,101
读a
1
349
451
2
337
339
341
343
345
347
缺
读b
1
349
451
2
351
339
341
343
345
347
缺
读c写c
1
349
451
2
351
452
341
343
345
347
缺
………
100,200,148
读a
150
428
430
432
434
436
438
440
442
444
缺
读b
150
446
430
432
434
436
438
440
442
444
缺
读c写c
150
446
650
432
434
436
438
440
442
444
缺
100,200,149
读a
150
446
650
432
434
436
438
440
442
444
读b
150
446
650
448
434
436
438
440
442
444
缺
读c写c
150
446
650
448
434
436
438
440
442
444
100,200,150
读a
150
446
650
448
434
436
438
440
442
444
读b
150
446
650
448
450
436
438
440
442
444
缺
读c写c
150
446
650
448
450
436
438
440
442
444
规律:
当循环次数为n*9+1或n*100+1时,读a,b,c都会发生缺页;其他情况,只有读b时发生1次缺页;
所以,读b总共发生缺页次数:
100*200*150次,而对于b和c来说:
总共100*200*150=3000000次循环中,n*9+1出现次数为:
3000000/9=333333次
而n*100+1出现的次数为:
3000000/100=29999次;
而n*9+1与n*100+1均出现的次数为3000000/900=3333次,此次数有重复计数,需减去,所以总缺页次数为:
(100*200*150)+(333333+29999-3333)*2次,即3719998次缺页中断。
4、有一个虚拟存储系统采用LRU算法,每个程序占3页内存,其中一页存放程序和变量i,j(不做他用)。
每一页可存放150个变量,程序A和B如下:
A:
intc[150][100],i,j;
for(i=0;i<=150;i++)
for(j=1;j<=100;j++)
c[i][j]=0;
B:
intc[150][100];
for(j=1;j<=100;j++)
for(i=1;i<=150;i++)
c[i][j]=0;
数组C按行存储,试问:
(1)程序A和B执行完后,分别缺页多少次?
(2)最后留在内存中的各是C的哪一部分?
解:
(1)数组C共需占100页,因为按行存储,所以每读入一个页面,会读入c数组的1.5行,如下所示:
页面1页面2
c[1][1]…………..c[2][51]...............
…………c[1][100]...............c[2][150]
c[2][1]…………..c[3][1]..................
…………c[2][50]...............c[3][50]
对于程序A,c按行访问,每循环150次发生1次缺页中断,故总共发生100次缺页中断。
对于程序B,c按列访问,每循环3次就要发生2次调页,c[1][1],c[2][1],c[3][1]…..共发生2*15000/3=10000次缺页。
(2)对于程序A,后300次循环访问的c数组元素,是保存在最后两个页面中的元素
对于程序B,后3次循环访问的c数组元素,是保存在最后两个页面的元素。
1、在南开大学与天津大学之间有一条小路,其中从S到T每次只允许一辆自行车通过,但中间有一个小的安全岛M(同时允许两辆自行车停留),可供两辆自行车在已从两端进入小路情况下错车使用,如下图所示。
试用PV操作设计一个算法使得来往的自行车顺利通过。
(南开97)
天津大学
T
KML
S
南开大学
2、设有8个进程,它们在并发系统中执行时有下图的顺序关系,试用PV操作实现这些进程的同步。
(北大91考研题)
P1P2
P3P5
P4
P6P7
P8
3、有一个仓库,可以存放A、B两种产品,仓库的存储空间足够大,但要求:
(1)每次只能存入一种产品(A或B)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 OS 习题 部分 答案