资源描述
1、在段式存储管理中,段的长度可否大于内存的长度?在段页式存储管理中呢?
2、描述页式、段式、段页式存储管理的地址映射过程。
3、静态等长和动态异长分配算法有哪些?
4、操作系统如何实现进程地址空间的保护?通过一个存储管理来说明。
5、谈谈你对虚拟存储的理解。
6、在虚拟存储管理中,为什么有的系统在内存中永远保留一个空闲的页面?
答案:
1、在段式存储管理中,段的长度不能大于内存的长度,因为一个独立的段占用一段连续的内存空间,
内存分配是以段为单位进行的,如果一个段的长度大于内存的长度,那么该段将无法调入内存。
在段页式存储管理中,段的长度可以大于内存的长度,因为内存分配的单位是页,一个段内逻辑上连续的页面,
可以分配到不连续的内存页面中,不要求一个段的所有逻辑页同时都进入内存。
2、
(1) 页式存储管理:
①由指令产生逻辑地址(p,d);
②由逻辑页号p查快表得到页框号f;
如果在快表中找不到
(a)由逻辑页号p与页表长度寄存器中的内容l相比较以判断是否满足0<=p<=l-1。如果不满足则越界,发生越界中断。
(b)由逻辑页号p与页表首地址寄存器中的内容b查页表得到页框号f
(c)Parbegin
由页框号f和页内地址d合并得到物理地址(f,d)
将(p,f)送入快表中。如果此时快表已满,则按置换算法淘汰一个。
Praend
③由页框号f与页内地址d合并得到物理地址(f,d)
(2) 段式存储管理:
①由指令产生逻辑地址(s,d);
②由逻辑页号s查快表得到段首址b'和l';
如果在快表中找不到
(a)由逻辑页号s与段表长度寄存器中的内容l相比较以判断是否满足0<=s<=l-1。如果不满足则越界,发生越界中断。
(b)由逻辑页号s与段表首地址寄存器中的内容b查找内存段表得到段首址和段长
(c)Parbegin
由段首址b'和段内地址d合并得到物理地址b'+d
将(s,b',l')送入快表中。如果此时快表已满,则按置换算法淘汰一个。
Praend
③将段内地址与段长相比较以判断是否满足0<=d<l'-1。如果不满足,则越界,发生越界中断
④由段首址b’和段内地址d相加得到物理地址b’+d
(3) 段页式存储管理:
①由指令产生逻辑地址(s,p,d);
②由段号逻辑页号(s,p)查快表得到页框号f;
如果在快表中找不到
(a)由段号s与段表长度寄存器中的内容l相比较以判断是否满足0<=s<=l-1。如果不满足则越界,发生越界中断。
(b)由段号s与段表首地址寄存器中的内容b查找内存段表得到页表首址与页表长度(b',l')
(c)将逻辑页号与页表长度相比较以判断是否满足0<=p<=l'-1。如果不满足则越界,发生越界中断。
(d)由逻辑页号p与页表首地址b'查页表得到页框号f
(e)Parbegin
由页框号f和页内地址d合并得到物理地址(f,d)
将(s,p,f)送入快表中。如果此时快表已满,则按置换算法淘汰一个。
Praend
③由页框号f与页内地址d合并得到物理地址(f,d)
3、
(1)静态等长分配算法有位示图、空闲页面表、空闲页面链
(2)动态异长分配算法有最先适应算法、最佳适应算法、最坏适应算法
4、在页式存储管理中,分配给某一进程的内存空间是通过页表来找到的,而查找页表需要读取页表首地址寄存器来获得页表首地址,另外
进程控制块中还有页表长度值。在页式存储管理中就是通过首地址和长度来对其进程空间进行保护。如果寻址从首地址开始长度超过页表长度,
即访问了其他进程的地址空间,则会发生越界,从而实现了地址保护。
。
5、虚拟存储是一种借助外存空间,从而允许一个进程在其运行过程中部分地装入内存的技术,它将内存和外存有机地结合在一起,得到一个
容量相当于外存、速度接近于内存的存储体系,有效地解决了内存空间不足的情况。
6、在内存没有空闲页架的情况下,需要按照置换算法淘汰一个内存页架,然后读入所缺页面,缺页进程一般需要等待两次I/O传输。
若内存总保持一个空闲页架,当发生页故障时,所缺页面可以被立即调入内存,缺页进程只需等待一次I/O传输时间。
读入后立即淘汰一个内存页面,此时可能也需执行一次I/O传输,但对缺页进程来说不需等待,因而提高了响应速度。
展开阅读全文