1、固定分区:动态分区分配策略–首次适配、下次适配、最佳适配
首次适配(最好、最快):从开始扫描内存,选择大小足够的第一个可用块。
下次适配:首次适配的变种,每次分配时从未分配区的上次扫描结束处顺序查找,选择下一个大小足够的可用块。
最佳适配:选择与要求的大小最接近的块。
2、内部碎片,外部碎片
没有内部碎片的内存管理技术是_____B_______。
A. 固定分区 B. 虚拟内存段式 C. 虚拟内存页式 D. 虚拟内存段页式
解:固定分区、简单分页、虚拟分页有内部碎片;动态分区、简单分段、虚存分段有外部碎片;虚拟内存段页式无外部碎片,但有内部碎片。
3、伙伴系统的分配与回收
Linux中的伙伴系统是用于____C____。
A. 文件目录的查找 B. 磁盘空间的管理 C. 内存空间的管理 D. 文件保护
4、重定位(地址映射):将逻辑地址转换为内存物理地址
为什么需要重定位进程的能力?
首先,程序员并不能事先知道在某个程序执行期间会有哪些程序驻留在内存中。其次,为了提高处理器的利用率,允许进程换入或换出内存,当被换出内存的进程下一次被换入时,没必要也很难做到放在换出前的位置。因此,需要重定位技术。
5、存储保护与越界:基址+界限寄存器
保护操作系统不受用户进程所影响,保护用户进程不受其他用户进程所影响。方法:存储键保护、界限寄存器。
例:在“基址B+限长L”内存保护方案中,合法的逻辑地址A应该满足____A_____条件。
A. 0≤A<L B. 0≤A≤L C. B≤A<L D. B≤A≤L
6、分页:基本原理,逻辑地址结构,页和页框,页表,地址转换
页和页框之间有什么区别?
内存被划分成大小固定相等的小块,称为页框,每个进程被分成同样大小的小块,称为页。因此,页是逻辑上的划分,而页框是物理内存的划分,一页匹配一个页框。
页表:给出了这个进程的每一页对应的页框位置。
地址转换:逻辑地址/页大小=页号…页内偏移
物理地址/页框大小=页框号…页内偏移
地址转换例题:
说明:页大小为1024B,页表如图所示
,将逻辑地址1011、2148、3000、4000
、5012转换为相应物理地址
➢ 答案:3059、1124、1976、7072、逻辑地址非法
1011/1024=0…1011 2×1024+1011=3059
2148/1024=2…100 1×1024+100=1124
3000/1024=2…952 1×1024+952=1976
4000/1024=3…928 6×1024+928=7072
5012/1024=4…916 页号4不存在
页表:(页号对应的页框号)
页号 | 页框号 |
---|---|
0 | 2 |
1 | 3 |
2 | 1 |
3 | 6 |
7、分段:基本原理,逻辑地址结构,段表,地址转换
段表:将逻辑地址映射为物理地址
• 段基地址:包含该段在内存中的开始物理地址
• 段界限:指定该段的长度
• 逻辑地址:段号s+段内偏移d
• 逻辑地址到物理地址的转换
- 段号与段表长度进行比较,若段号超过了段表长度
,则越界(非法地址),否则转2。- 根据段表始址和段号计算出该段对应段表项的位置
,从中读出该段在内存的起始地址,检查段内地址
是否超过该段的段长,若超过则越界(非法地址)
,否则转3。
在段式存储管理中,若逻辑地址的段内地址大于段表中该段的段长,则发生**越界中断**。- 将该段的起始地址与段内位移相加,从而得到要访
问的物理地址。
例题:说明:段表如表1所示,将表2所示逻辑地址转换为相应
物理地址
➢答案:见表3