coursera 《现代操作系统》 -- 第十三周 期末考试

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了coursera 《现代操作系统》 -- 第十三周 期末考试相关的知识,希望对你有一定的参考价值。

一些概念在书上不好找,可以通过谷歌搜索,比如搜索中断向量,
site:coursera.org 中断向量
 
3  下列关于中断和异常的叙述中,哪一个是错误的?

x86系列处理器提供的4个处理器特权级别中R0的特权级别最高

中断向量(中断描述符)保存了程序状态字和中断入口程序地址

Page Fault属于I/O中断

启动I/O指令只能在内核态下运行

解析:

1. “中断向量(中断描述符)保存了程序状态字和中断入口程序地址” 是对的 见 https://www.coursera.org/learn/os-pku/lecture/0OkrM/zhong-duan-yu-yi-chang-ji-zhi-gong-zuo-yuan-li

2. Page Fault属于I/O中断 

中断与异常机制介绍

Page Fault 属于缺页异常--保护性异常

3. 启动I/O指令只能在内核态下运行

特权指令和非特权指令

对。

 

 

7. 下列关于进程调度算法的叙述中,哪一个是错误的?

抢占式最高优先级调度算法会导致优先级反转问题

多级反馈队列(Feedback)调度算法会使CPU型进程产生“饥饿”现象

先来先服务(FCFS)调度算法对长进程后的短进程不利

最高相应比优先(HRRN)调度算法实现开销小

解析:

https://www.coursera.org/learn/os-pku/lecture/RLlnW/duo-ji-fan-kui-dui-lie-diao-du-suan-fa-ge-chong-diao-du-suan-fa-xiao-jie-deng

最高相应比优先(HRRN)调度算法实现开销可能很大。1+等待时间/总的处理时间

 

8  (有疑惑)某计算机系统中有5个进程,它们的就绪时间和需要运行时间如下表所示。

若采用时间片轮转算法(时间片长度为1),则P5第一次上CPU的时间为

8

9

10

7

解析:

后来的进程加入链表的顺序。比如某时刻,链表为 B->C,这时 D 加入,那么 D 是在链表头部还是尾部?

第一秒结束,P1 被换下时间片,剩余2秒,但此时没有其他就绪进程,P1继续运行;。

第二秒结束,P1 被换下时间片,剩余1秒,P2 就绪,P2上CPU ,链表结构为 P2->P1;

第三秒结束,P2被换下,剩余 5 秒,此时 P3 进入就绪态,链表结构为 P2->P1->P3,P1上 CPU;

第四秒结束,P1被换下,P1运行完成,链表结构为 P3->P2,P3上 CPU;

第五秒结束,P3 被换下,剩余3秒,P4加入,链表结构为 P3->P2->P4,P2上CPU;

第六秒结束,P2被换下,剩余5秒,链表结构为 P4->P3;

第七秒结束,P4被换下,剩余4秒,P5加入,链表结构为 P4->P3->P5,P3上CPU;

第八秒结束,P3被换下,剩余2秒,P5上CPU,所以P5在第九秒上CPU

但是答案是10秒

 

16 下列关于设备管理的叙述中,哪些是正确的?[多选]

缓冲技术可以提高I/O性能

操作系统对用户屏蔽了实现具体设备I/O操作的细节

SPOOLing技术是一种用磁盘空间换取时间的技术

设备驱动程序属于设备无关软件层

I/O独立编址模式下设备驱动程序可以用C语言编写

解析:

I/O独立编址 

18 在解决死锁问题上,假设系统S1采用的是死锁避免方法,S2采用的是死锁检测与解除方法。下列叙述中,哪些是正确的?[多选]

S1需要进程给出对资源总量的需求数量,而S2不需要

若分配资源后系统进入不安全状态,S1不会进行分配资源,而S2会

S1会限制进程申请资源的顺序

针对哲学家就餐问题,当桌子上只剩下最后一只筷子时,S1要求分配这只筷子必须使得至少有一个哲学家手里已有一支筷子,而S2不会

针对哲学家就餐问题,S2允许每个哲学家同时拿起他右边的筷子,而S1不会

解析:全选。

“针对哲学家就餐问题,当桌子上只剩下最后一只筷子时,S1要求分配这只筷子必须使得至少有一个哲学家手里已有一支筷子,而S2不会”

应该是使至少一个人保持有两双筷子,分配后属于安全状态

 
23 某UNIX文件系统中,磁盘被格式化为C、D、E三个分区。D盘R目录下有50个普通文件或子目录,总大小为6G;D盘S目录下只有一个6G大小的普通文件。

若某用户执行了如下操作:

① 拷贝R目录到D盘(复制);

② 拷贝S目录到E盘;

下列结论中,哪一个是正确的?

①操作花费的时间比②长,且有明显差异

①操作花费的时间比②长,差异不明显

②操作花费的时间比①长,且有明显差异

②操作花费的时间比①长,差异不明显

解析:复制是复制 i 节点及其信息,文件数多,则 i 节点就多,所以要花费更长时间

 

24  假设某文件系统的文件控制块(FCB)中包含了一个512字节的索引表,该索引表由两部分组成:前504字节用于直接索引结构,一个索引项占6字节;最后8个字节采用<起始块号,总块数>的格式,表示分配给一个文件的连续磁盘空间,其中起始块号占6字节,块数占2字节。

采用这种结构可支持的单个文件的最大长度有多少块?____________[填空][计算出整数]

解析:直接索引结构,索引项与块数为一一对应的关系,所以能表示 504/6 =  84 (块)

连续磁盘空间能够表示的块数与块数所占字节有关,2个字节,为 2*8=16 位,能够表示 2^16=65536 (块)。
所以一共能表示 84 + 65536 = 65620 (块)

 

25 有一个Unix文件系统,磁盘块大小为1KB,用4字节表示磁盘地址,i节点包含了12个直接盘块表项,1个一次间接盘块表项和1个二次间接盘块表项。那么该文件系统支持的单个文件的最大大小是多少?

16MB + 40KB

64MB + 268KB

32MB + 68KB

128MB + 536KB

解析:

1块可以表示的地址个数是 1 KB/4字节 = 256 个

可以表示的索引项:12 + 256 * 1 + 256 * 256 = 64MB + 268KB

 

26 (不会做)继续上一题的问题,假设已经建立了一个拥有最大大小的文件,它的i节点还没有在内存中,当需要访问整个文件的时候,至少需要多少次磁盘读取操作。(假设整个块可以被一次读取,且读取已经读取到内存中的内容不再需要新的磁盘访问。)

14+2*2^8+2^16

15+2*2^8+2^16

16+4*2^8+2*2^16

13+4*2^8+2*2^16

解析:

磁盘读取次数。

答案是  15+2*2^8+2^16 

 

27  题干同26题,假设磁盘块大小是4KB,且在i节点中再增加1个三次间接盘块表项,那么该文件系统支持的单个文件的最大大小是多少?

16KB+1MB+1GB+1TB

48KB+4MB+4GB+4TB

64KB+4MB+4GB+4TB

24KB+1MB+1GB+1TB

解析:

1块可以表示的地址个数是 4 KB/4字节 = 1024 个

可以表示的索引项:12 * 4 + 1024 * 4 + 1024 * 1024 * 4 + 1024 * 1024  1024 * 4 = 48KB+4MB+4GB+4TB

 

28  在以上这种情况下,系统是否进入了死锁状态?____________ (是或否)

解析:不知道说明意思。答案为 "是"

 

29 有下列两组术语:

第一组:①Peterson算法;②最短作业优先调度算法;③资源有序分配算法。

第二组:Ⅰ死锁;Ⅱ饥饿;Ⅲ活锁。

下列术语关联性配对中,哪些是正确的?

③Ⅱ

②Ⅱ

②Ⅲ

①Ⅰ

③Ⅰ

①Ⅲ

解析:

1. 根据处理器调度,最短时间优先会造成饥饿现象。最短时间是选择进程上 CPU 时,是找出所有就绪进程中所需完成时间最短的。

2. 资源有序分配,属于死锁预防

3. Peterson 进程的同步机制,在死锁中提到了

死锁

进程互相等待

活锁

 

我的选择是:

 

 

22 系统为某进程分配了4个页框,该进程已经完成了下列页号序列的访问:

3,1,3,10,4,5,3,8,3,4,9,5,6

假设该进程要访问的下一个页号是8,根据最近最少(LRU)页面置换算法,应该被淘汰的页的页号是

9

5

3

4

书 P116。
使用软件实现:维护一个链表,最近最多使用的放在表头,最少使用的放在表尾。
3
1->3
3->1
10->3->1

4->10->3->1

5->4->10->3

3->5->4->10

8->3->5->4

3->8->5->4

4->3->8->5

9->4->3->8

5->9->4->3

6->5->9->4
29 有下列两组术语:

第一组:①Peterson算法;②最短作业优先调度算法;③资源有序分配算法。

第二组:Ⅰ死锁;Ⅱ饥饿;Ⅲ活锁。

下列术语关联性配对中,哪些是正确的?

②Ⅲ

①Ⅰ

③Ⅰ

①Ⅲ

②Ⅱ

③Ⅱ

解析:
题目的意思是什么?
 
页表、页表的级别、页表大小
19。

有一台32位的计算机,每个页面的大小是4KB,如果一个进程在它的虚拟内存中实际使用了1024个页面。(可以认为每个页表项占据4个字节)

假设使用一级页表,那么该进程的页表大小是多少?

4KB

4MB

32KB

32MB

 解析:
4 字节 *  1024 = 4KB
 
20。(不会做)

题干同19题。如果采用二级页表,且一级页表的大小和二级页表的大小相同(假设一级页表大小是1KB,则一个二级页表的大小也是1KB;假设一级页表大小是2KB,则一个二级页表的大小也是2KB),那么该进程的两级页表加起来,至少占据____KB?

 
21。(不会做)

题干同19题。如果采用二级页表,且一级页表的大小是二级页表大小的四倍(假设一级页表大小是4KB,则一个二级页表的大小是1KB;假设一级页表大小是8KB,则一个二级页表的大小是2KB),那么该进程的两级页表加起来,至少占据____KB?

 

22。
如果需要置换其中一个页面,若采用最近未使用(NRU)页面置换算法,将会置换哪一个页面?

0


3


1


2

解析:

 NRU  书P117。不知道题目意思,直接选 0

以上是关于coursera 《现代操作系统》 -- 第十三周 期末考试的主要内容,如果未能解决你的问题,请参考以下文章

2017-2018-1 20155302 第十三周作业

coursera 《现代操作系统》 -- 第九周 文件系统

Coursera-AndrewNg(吴恩达)机器学习笔记——第三周

20175306《信息安全系统设计基础》第十三周学习总结

20145311 《信息安全系统设计基础》第十三周学习总结

20155304 《信息安全系统设计基础》第十三周学习总结