以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 计算机考研交流 』   (http://bbs.xml.org.cn/list.asp?boardid=67)
----  请教几道OS真题得解答!  (http://bbs.xml.org.cn/dispbbs.asp?boardid=67&rootid=&id=53326)


--  作者:shuimu
--  发布时间:10/1/2007 7:11:00 PM

--  请教几道OS真题得解答!
有几道操作系统的真题解答有些疑惑,请达人赐教:

04年问答:
2.在一个32位计算机的虚拟页式存储管理系统中,怎样解决页表非常庞大的问题?请给出具体解决方案(假设页面大小4K, 用户空间2GB,每个内存块号用四个字节表示)

用户空间2GB,页面大小4K,那么用户空间有2^19个页,如果一个页面需要4字节表示其地址,需要512页(2MB大小)表示这些页,页表过于庞大
为了避免把全部页表一直保存在内存中,采用二级页表管理方式:
将整个2GB(31位)的虚拟地址空间划分为9位的PT1域,10位的PT2域和12位的Offset域偏移量12位,所以页面大小4KB,9位PT1域加10位PT2域共19位表示2^19个页面.
页表设计:
(1)顶级页表只占用一页,存放2^9=512个二级页表入口地址,对应于9位的PT1域
(2)二级页表共512个,每个存放2^10=1024个虚拟页面地址,对应于10位的PT2域
工作过程:
当一个虚拟地址被送到MMU时,MMU首先提取PT1域并把该值作为访问顶级页表的索引,在顶级页表中找到对应表项,其中含有二级页表的地址或页帧号,然后以PT2域作为访问选定的二级页表的索引,从而找到该虚拟页面的页帧号.如果该页面不在内存中,页表表项的”在不在”位将是0 ,引发一次页面失效; 如果该页面在内存中,从二级页表得到的页帧号将与偏移量结合构成物理地址,该地址被放到总线上并送到内存.

这个解法是我参考<现代操作系统>做的,我的疑问是:
如果该页面不在内存中,页表表项的”在不在”位将是0 ,引发一次页面失效;
在划分空间的过程中,所有的位都用来存放页/页表的地址,没有空闲出来的位来设置”在不在”位啊??? 是我划分地址的问题?32位全用?但用户空间是2G啊?
还是这个问题不在考虑范围之内?如果是这样,那么参考书错了?
是我理解错了, 还是其他?

2002 简答题
3.(9分)在文件系统中,为什么要实现文件共享?请给出一种实现文件共享的方案.在实现上述方案时应考虑什么问题?怎样解决这些问题?
我只列出相关部分:
实现文件共享有两种方案:
(1)I结点法(又称硬链接hard link)问题:删除文件引起
考虑I结点记录的所有者为A,B连接到共享文件A,只是将共享计数加1. 当A删除文件时导致B有一个目录项指向一个无效的I结点,若该I结点以后被分配给一个新的文件,则B的连接指向一个错误的文件.
解决方案:只允许系统管理员建立一个文件的链接.
这个解决方案是我参考教材后面Linux部分得到的,是否正确呢?

(2)符号链接法
问题:
系统开销大,访问共享文件时必须读取Link文件,获得路径,然后一部分一部分地扫描路径,直到找到I结点,这需要多次额外的磁盘存取.
目录可能形成环状
这两个问题我想不出能怎么解决?因为我觉得这是他实现本身带来得问题! 无法消除!
2000 简答题
1.对某系统进行检测后表明平均每个进程在I/O阻塞之前的运行时间为T ,一次进程切换需要的时间为S ,这里S实际上就是开销,对于采用时间片长度为Q的时间片轮转法,请给出以下各种情况的CPU利用率的计算公式
(1)  Q =∞       T/(S+T)
(2) Q>T       T/(S+T)
(3) S<Q<T     Q/(Q+S)
这个解答是否正确?(1)(2)我不大明白?

1998 请回答以下问题
3.请设计一种检测颠簸的方法.
没有找到相关资料,该如何解答?

Thanks !



W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
918.945ms