《模块名称存储管理》由会员分享,可在线阅读,更多相关《模块名称存储管理(6页珍藏版)》请在金锄头文库上搜索。
1、精选优质文档-倾情为你奉上1 模块名称:存储管理1.1 术语1. 存储器管理(memory manager):在操作系统中存储器层次的结构。2. 存储器层次结构:由少量的非常快速、昂贵、易变的高速缓存(cache),由若干兆字节的中等速度、中等价格、易变的主存储器(RAM)和数百兆或数千兆字节的低速、廉价、不易变的磁盘组成。3. 随机存取存储器(RAM)4. 只读存储器(ROM)5. 基本输入输出系统(BIOS):在IBM PC计算机中,系统位于ROM中的部分。6. 链接:把主程序、用户编写的例程、库例程结合到同一个地址空间中。7. 基本输入输出系统(BIOS,Basic Input Outp
2、ut System):在ROM中的那部分系统。8. 多道程序设计道数(degree of multiprogramming)9. MFT(OS/MFT):具有固定数目任务的多道程序。10. 重定位(relocation)11. 程序状态字(Program Status Word)12. 基址(base)寄存器和界限(limit)寄存器:解决重定位和保护问题时设置的两个专门的寄存器。13. 交换(swapping):存储管理的一种方案。14. 虚拟存储器(virtual memory):存储管理的另一种方案。基本思想是程序、数据和堆栈的大小可能超过可用物理内存的大小,由操作系统把程序当前使用的那
3、些部分保留在主存中,其他部分保留在磁盘上,在需要时调入内存。15. 虚地址空间(virtual address space):虚地址构成的空间。16. 缺页故障:由于虚页的数目大于页框的数目,因此一些虚页无法直接映射到页框中。17. 脏(dirty):当一个页已经被修改过,则它是“脏”的。18. 页面故障率(Page Fault Frequency)19. 空洞(hole):也称为空闲区,是由于交换而在内存中产生的。20. 内存紧缩(memory compaction):通过把所有进程尽可能向下移动,尽可能将这些小的空闲区合并成一个大块的过程。21. 分布共享存储器(distributed s
4、hared memory):允许在网络上的多个进程共享一套页面,这些页面可以,但不是必须,构成一个共享的单一线形地址空间。22. 位图(bitmap):在存储管理的时候使用的一种机制,使用该方法时,内存可能被分成小到几个字或大到几千字节的分配单位,每个分配单位对应位图的一位。23. 首次适配(first fit):存储管理器沿着链表搜索,直到找到一个足够大的空闲区。24. 下次适配(next fit):和首次适配的不同是,每次找到合适的空闲区时都记录的当时的位置。25. 最佳适配(best fit)26. 最差适配(worst fit):总是分配最大的可用空闲区。27. 快速适配(quick
5、fit):它为那些常用大小的空闲区维护单独的链表。28. 覆盖(overlay):当程序太大内存一次容纳不下的时候,把程序分成许多的片断。29. 分页(paging)30. 虚拟地址(virtual address):在没有虚拟存储器的计算机上,系统直接将虚拟地址送到内存总线上,而在使用虚拟存储器的情况下,虚拟地址需要被MMU映射为物理内存地址。31. 内存管理单元(MMU,Memory Management Unit)32. 页面(Page):虚拟地址空间以页面为单位划分。33. 页帧(page frame):页面在物理内存中对应的单位。页面和页帧的大小总是一样的。34. 页面失效(page
6、 default):如果需要的页面不在内存中的时候,就会导致该现象的发生。35. 页表(page table):把虚拟地址映射为页帧。36. 转换检测缓冲区(Translation Lookaside Buffer):有时称为相联存储器(associative memory),该小型的硬件设备将虚拟地址直接映射到物理地址,而不必通过页表。37. 倒排页表(inversed page table):在实际内存中每一个页帧有一个表项,而不是每一个虚拟地址空间里面有一个表项。38. 最近未使用页面置换算法(NRU,Not Recently Used)。39. 先进先出页面置换算法(FIFO,Firs
7、t In First Out)。40. 第二次机会页面置换算法(Second Chance)。41. 时钟页面置换算法(clock)。42. 最近最少使用页面置换算法(LRU,Least Recently Used)。43. 最不常用页面置换算法(NFU,Not Frequently Used)。44. 老化算法(Aging)。45. 请求调页(demanding paging):开始内存中没有页面,因此开始时会经常出现页面失效的情况,一段时间后,进程需要的大部分页面在内存中了,进程开始在较少页面失效的情况下运行。46. 访问的局部性(locality of reference):在程序运行的
8、任何阶段,它都只访问较少的一部分页面。47. 工作集(working set):一个进程当前正在使用的页面的集合。48. 颠簸(thrashing):一个进程每执行几条指令,程序就发生一次页面失效。49. 工作集模型(working set model):不少分页系统都设法跟踪进程的工作集,以确保让进程运行之前,它的工作集已经在内存中了。50. 工作集时钟(WSClock)算法:它是一种改进的算法,它基于时钟算法,并且使用了工作集信息。51. Belady异常(Belady Anomaly):有时候,内存中页帧多的程序的页面失效却比内存中页帧少的程序的页面失效严重的现象。52. 访问字符串(r
9、eference string):每个进程的内存访问都可以用一个页号列表来表示。该有序的页号列表就是访问字符串。53. 栈式算法(stack algorithm)。54. 内部碎片(internel fragmentation):在选择一个正文段、数据段或堆栈段一般不会恰好装满整个页面,而多余的被浪费的空间就是内部碎片。55. 分页守护进程(paging daemon):该进程大多数时候休眠,定期唤醒以检查内存的情况。如果空闲页帧过少,它通过已选好的页面置换算法选择页面换出内存。56. 钉住(pinning)页面:在内存中锁住一个页面。57. 分段(segment)。58. 共享库(share
10、d library)。59. 外部碎片(external fragmentation):也称为棋盘型碎片。在系统运行一段时间后,内存被分成许多块,一些块包含着段,一些则成了空闲区。1.2 知识要点1.2.1 存储管理概要1.2.1.1 存储器的作用1. 存储器的概念;2. 现代操作系统中存储器的种类。1.2.1.2 为什么需要存储管理1. 存储器性能、价格与处理要求之间的平衡;2. 当技术发展到足够提供高速廉价的存储器时,许多现有的存储管理方案都将过时。1.2.2 存储管理方案1.2.2.1 静态存储管理方案静态存储管理方案的思想1.2.2.1.1 没有交换和分页的单道程序1. 最简单的存储器
11、管理方案:同一时刻只运行一道程序,应用程序和操作系统共享存储器。2. 操作系统、设备驱动程序和应用程序的三种内存组织方案。1.2.2.1.2 固定分区的多道程序1. 固定分区的多道程序的思想;2. IBM的OS/360中使用的MFT方案;3. 多道程序设计系统的性能分析4. 重定位和保护1) 实现程序中指令地址的重定位方法;2) 实现不同分区间的越界访问保护(基址寄存器、界限寄存器)。1.2.2.2 动态存储管理方案1. 动态存储管理方案的思想2. 动态存储管理方案的分类1) 基于交换的动态存储管理;2) 基于虚拟存储器思想的动态存储管理。1.2.2.2.1 交换1. 交换技术的思想;2. 使
12、用的技术:1) 内存紧缩技术解决内存空洞问题;2) 在进程被换进或移动时为其分配一点额外的内存解决大部分进程运行时的增长引起的交换和移动带来的开销。3. 该存储管理根据跟踪内存的使用情况分为以下两种。1.2.2.2.1.1 基于位图的内存管理基于位图的内存管理思想1.2.2.2.1.2 基于链表的内存管理1. 基于链表的内存管理思想;2. 搜索空洞的算法:首次适配算法、下次适配算法、最佳适配算法、最差适配算法、快速适配算法。1.2.2.2.2 虚拟存储器虚拟存储器思想1.2.2.2.2.1 分页技术针对一维虚拟存储器1. 内存管理单元的作用;2. 内存管理单元的内部操作;3. 页表的概念;4.
13、 页表管理存在的问题1) 页表项增多;2) 地址映射必须十分迅速。1.2.2.2.2.1.1 解决页表管理的问题方案1. 多级页表;2. TLBs(翻译后援存储器)和软件TLB管理;3. 逆向页表。1.2.2.2.2.1.2 页表替换算法1.2.2.2.2.1.2.1 常用页面替换算法1. 最优页面替换算法;2. 最近未使用(NRU)替换算法;3. 最久未使用(LRU)替换算法;4. 先进先出(FIFO)替换算法;5. 第二次机会页面替换算法;6. 时钟页面替换算法;7. LRU的软件模拟不常使用(NFU)的算法。1.2.2.2.2.1.2.2 页面替换算法模型需要首先了解的一些问题:1. B
14、ealady异常2. 栈式算法3. 距离字符串4. 页面概率失效预测1.2.2.2.2.1.3 分页系统中的设计问题1. 局部分配策略和全局分配策略2. 负载控制3. 页面大小4. 分离的指令空间和数据空间5. 共享页面6. 清除策略7. 虚拟存储器接口1.2.2.2.2.1.4 分页系统中的实现问题1. 页面失效处理2. 指令备份3. 锁定内存中的页面4. 后备存储5. 策略和机制的分离1.2.2.2.2.2 分段技术针对二维虚拟存储器1. 段的概念;2. 段的好处;3. 分段技术与分页技术的区别;4. 纯分段系统的实现;5. 分段与分页技术的结合:1) MULTICS;2) Intel的Pentium。1.3 算法1. 最优页面替换算法;2. 最近未使用(NRU)替换算法;3. 最久未使用(LRU)替换算法;4. 先进先出(FIFO)替换算法;5. 时钟页面替换算法;专心-专注-专业