首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    操作系统存储管理之虚拟存储与分页式虚拟存储系统

    在实际运行过程,把有关作业的全部信息都装入主存储器后,作业执行时实际上不是同时使用全部信息的,有些部分运行一遍便再也不用,甚至有些部分在作业执行的整个过程中都不会被使用到(如错误处理部分)。进程在运行时不用的,或暂时不用的,或某种条件下才用的程序和数据,全部驻留于内存中是对宝贵的主存资源的一种浪费,大大降低了主存利用率。 于是,提出了这样的问题:作业提交时,先全部进入辅助存储器,作业投入运行时,能否不把作业的全部信息同时装入主存储器,而是将其中当前使用部分先装入主存储器,其余暂时不用的部分先存放在作为主存扩充的辅助存储器中,待用到这些信息时,再由系统自动把它们装入到主存储器中,这就是虚拟存储器的基本思路。

    01

    3.2.4页面分配策略

    对于分页式的虚拟内存,在准备执行时,不需要也不可能把一个进程的所有页都读取到内存,因此,操作系统必须决定读取多少页,也就是说,给特定的进程分配多大的内存空间,这需要考虑以下几点: 1)分配给一个进程的存储量越小,在任何时候驻留在主存中的进程数就越多,从而可以提高处理机的时间利用效率。 2)如果一个进程在主存中的页数过少,尽管有局部性原理,页错误率仍然会相对较高。 3)如果页数过多,由于局部性原理,给特定的进程分配更多的主存空间对该进程的错误率没有明显的影响。 基于这些因素,现代操作系统通常采用三种策略: 1)固定分配局部置换 它为每个进程分配一定数目的物理块,在整个运行期间都不改变。若进程在运行中发生缺页,则只能从该进程在内存中的页面中选出一页换出,然后再调入需要的页面。实现这种策略难以确定 为每个进程应分配的物理块数目:太少会频繁出现缺页中断,太多又会使CPU和其他资源利用率下降。 2)可变分配全局替换 这是最易于实现的物理块分配和置换策略,为系统中的每个进程分配一定数目的物理块,操作系统自身也保持一个空闲 物理块队列,当某进程发生缺页时,系统从空间物理块队列中取一个物理块分配给该进程,并将欲调入的页装入其中。 3)可变分配局部替换 它为每个进程分配一定数目的物理块,当某进程发生缺页时,只允许从该进程在内存的页面中选出一页换出,这样就不会影响其他进程的运行。如果进程在运行中频繁地缺页,系统在为该进程分配若干物理块,直至该进程缺页率趋于适当程度;反之,若进程在运行中缺页率特别低,则可适当减少分配给该进程的物理块。

    01
    领券