操作系统试题分享和答案解释|S4

2021年3月26日14:07:19 发表评论 566 次浏览

GATE CS考试中提出了以下问题。

1.在固定块大小的文件系统中使用更大的块大小会导致(GATE CS 2003)

a)磁盘吞吐量更高, 但磁盘空间利用率更差

b)更好的磁盘吞吐量和更好的磁盘空间利用率

c)磁盘吞吐量较差, 但磁盘空间利用率更高

d)较差的磁盘吞吐量和较差的磁盘空间利用率

答案(a)

如果块大小很大, 则查找时间会更少(要查找的块更少), 并且磁盘性能会得到改善, 但是请记住, 较大的块大小也会造成磁盘空间的浪费。

2.考虑以下有关用户级线程和内核支持的线程的语句

i. 使用内核支持的线程, 上下文切换更快

ii. 对于用户级线程, 系统调用可以阻止整个过程

iii. 内核支持的线程可以独立调度

iv. 用户级线程对内核是透明的

以上哪个陈述是正确的? (GATE CS 2004)

a)仅(ii), (iii)和(iv)

b)仅(ii)和(iii)

c)仅(i)和(iii)

d)仅(i)和(ii)

答案(a)

http://en.wikipedia.org/wiki/Thread_%28computer_science%29

3.由(GATE CS 2004)确定必须分配给虚拟内存环境中正在运行的进程的页面框架的最小数量。

a)指令集架构

b)页面大小

c)物理内存大小

d)内存中的进程数

答案(a)

每个进程都需要基于指令集体系结构的最少页面数。示例IBM 370:处理MVC(存储到存储移动)指令的6页

指令为6个字节, 可能跨越2页。

2页处理。

2页要处理。

4.在具有32位虚拟地址和1 KB页面大小的系统中, 由于(GATE CS 2003), 使用一级页表进行虚拟到物理地址的转换是不切实际的

a)大量内部碎片

b)大量外部碎片

c)维护页表时的大量内存开销

d)翻译过程中的大量计算开销

答案(c)

由于页面大小太小, 将使页表的大小变大。

Size of page table =
  (total number of page table entries) *(size of a page table entry)

让我们看看页表中有多少个条目

Number of entries in page table =
                    (virtual address space size)/(page size)
                    = (2^32)/(2^10) 
                    = 2^22

现在, 让我们看看每个条目有多大。

如果物理内存的大小为512 MB, 则寻址512 MB中的字节所需的位数为29。因此, 在其中, 将有(512MB)/(1KB)=(2 ^ 29)/(2 ^ 10)页帧物理内存。要寻址页帧, 需要19位。因此, 页表中的每个条目都必须具有19位。

Note that page table entry also holds auxiliary information about the page such 
as a present bit, a dirty or modified bit, address space or process ID information, amongst others. So size of page table 
    > (total number of page table entries) *(size of a page table entry)
    > (2^22 *19) bytes
    > 9.5 MB

每个进程都需要这么多的内存, 因为每个进程都维护自己的页表。此外, 对于大于512MB的物理内存, 页表的大小将更大。因此, 建议在这种情况下使用多级页表。

参考文献:

http://barbara.stattenfield.org/ta/cs162/section-notes/sec8.txt

http://en.wikipedia.org/wiki/Page_table

如果你发现任何答案/解释不正确, 或者你想分享有关上述主题的更多信息, 请写评论。

木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: