进程运行时,简单分页的所有页必须都在内存中,除非使用了覆盖技术,虚存分页并非所有页都须在内存页框中,仅在需要时才读入页,把一页读入内存可能需要把另一页写出到磁盘。 8.2什么是抖动?
lc滤波器当操作系统读取一块内存时,它必须把另一块换出。如果一块正好在将要用到之前换出,操作系统就不得不很快地把它取回。这类操作通常会导致一种称为系统抖动(thrashing)的情况。这样会使处理器的大部分时间都用于交换块而非执行指令。 8.3为何在使用虚拟内存时,局部性原理至关重要?
其他与其它的区别
局部性原理描述了一个进程中程序和数据引用的集簇倾向。因此,假设在很短的时间内仅需要进程的一部分块是合理的。同时,还可以对将来可能会访问的块进行猜测,从而避免系统抖动。局部性原理表明虚拟内存方案是可行的。 8.4哪些元素是页表项中能到的典型元素?简单定义每个元素。
页号:虚拟地址的页号部分。
进程标志符:使用该页的进程。页号和进程标志符共同标志-个特定进程的虚拟地址空间的一页。
回医学控制位:该域包含一些标记,比如有效、访问和修改,以及保护和锁定信息。
链指针:若某项没有链项,则该域为空(或用一个单独的位来表示)。否则,该域包含链中下一项的索引值(0~2^m-1之间的数字)。设备维修管理系统
8.5转换检测缓冲区的目的是什么?
原则上,每次虚存访问都可能会引起两次物理内存访问:一次取相应的页表项,另一次取需要的数据。因此,简单的虚拟内存方案会导致内存访问时间加倍。为克服这个问题,大多数虚拟内存方案都为页表项使用了一个特殊的高速缓存,通常称为转换检测缓冲区(TranslationLookaside Buffer,TLB)。
8.6简单定义两种可供选择的页面读取策略。
请求分页,只有当访问到某页中的一个单元时才将该页取入内存。若内存管理的其他策略比较合适,将发生下述情况:当一个进程首次启动时,会在一段时间出现大量的缺页中断:取入越来越多的页后,局部性原理表明大多数将来访问的页都是最近读取的页。因此,在一段时间后错误会逐渐减少,缺页中断的数量会降到很低。氯化钠晶体
预先分页,读取的页并不是缺页中断请求的页。预先分页利用了大多数辅存设备(如磁盘)的特性,这些设备有寻道时间和合理的延迟。若一个进程的页连续存储在辅存中,则一次读取许多连续的页要比隔一段时间读取一页有效。当然,若大多数额外读取的页未引用到,则这个策略是低效的。
3.0文明