您当前的位置: 首页 > 

光怪陆离的节日

暂无认证

  • 2浏览

    0关注

    1003博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

42页面分配策略

光怪陆离的节日 发布时间:2021-01-28 14:32:01 ,浏览量:2

页面分配策略: 1、 驻留集大小:对于分页式的虚拟内存,在准备执行时,不需要也不可能把一个进程的所有页都读取到主存,因此,操作系统必须决定读取多少页。也就是说,给特定的进程分配多大的主存空间,需要考虑一下几点: (1) 分配给一个进程的存储量越小,在任何时候驻留在主存中的进程数就越多,从而可以提高处理机的时间利用效率 (2) 如果一个进程在主存中的页数过少,尽管有局部性原理,也错误率仍然会相对较高 (3) 如果页数过多,由于局部性原理,给特定的进程分配更多主存空间对该进程的错误率没有明显影响 基于这些因素,现代操作系统通常采用三个策略 (1) 固定分配局部置换:它为每个进程分配一定数目的物理块,在整个运行期间都不改变。若进程在运行汇总发生缺页,则只能从该进程的内存中的页面换出,然后再调入需要的页面 (2) 可变分配全局置换:为系统中每个进程分配一定数量的物理块,操作系统自身也保持一个空闲物理块队列。当某进程发生缺页时,系统从空闲物理块队列中取出一个物理块分配给该进程,并将欲调入的页装在其中。这种方法比固定分配局部置换更将灵活,可以动态增加进程汇总的物理块,单页存在弊端,盲目给进程增加物理块,将会导致西戎多到程序并发能力下降。 (3) 可变分配局部置换:它为每个进程分配一定数目的物理块,当某进程发生缺页时,只允许该进程在内存中的页面中选出一页换出,这样就不影响其他进程的运行。如果京城在运行中频繁缺页,系统在为该进程分配若干物理块,直至该进程缺页率适当,反之若进程在运行汇总缺页率特别低,可以适当减少分配黑进程中的物理块。比起可变分配全局置换,这种方法不仅可以动态增加进程物理块的数量,还能动态较少进程物理块的数据,在保证进程不会过多地调页同时,也保持了系统的多道程序并发能力。 2、 调入页面的时机:为确定系统将进程运行时所缺的页面调入内存的时机,可采用以下两种调页策略 (1) 预调页策略:根据局部性原理,一次调入若干相邻的页可能比一次调入一页更高效。但一次调入一批页面中大多数都未被访问有时是低效的。所以就采用以预测为基础的预调页策略,将预计在不久之后便会被访问的页面预先调入内存,但目前预调页的成功率仅约50%,故这种策略仅用于进程首次调入时,由程序员指出应该先调入哪些页 (2) 请求调页策略:进程在运行中需要访问的页面不在内存而提出请求,由系统将所需页面调入内存。由这种策略调入的页一定会被访问,且者这种策略比较易于实现,故在目前的虚拟存储器中大多采用此策略,它的缺点在于每次只调入一页,调入调出的页面多时会花费过多的IO开销。 3、 从何处调入页面 请求分页系统中的外存分为两部分:用于存放文件的文件区和用于存放对换页面的对换区。对换区通常是采用连续分配方式,而文件区采用离散分配方式,故对换区的磁盘IO速度比文件区更快。这样从何处调入页面有以下三种情况: (1) 系统拥有足够的对换空间:可以全部从对换区调入所需的页面,以提高调页速度,为此在进程运行前,需将该进程有关的文件从文件区赋值到对换区 (2) 系统缺少足够的对换区空间:凡不会被修改的文件都直接从文件区调入;而当换出这些页面时,由于它们未被修改而不必再将它们换出。但对那些可能被修改的部分,将它们换出时调到对换区,以后需要时再从对换区调入 (3) UNIX方式:与进程有关的文件都挡在文件区,故未运行过的页面都从文件区调入。曾经运行过但又被换出的页面,由于是被放在对换区,因此下次调入时从对换区调入。进程请求的共享页面若被其他进程调入内存,则无需再从对换区调入。

关注
打赏
1665731445
查看更多评论
立即登录/注册

微信扫码登录

0.0373s