zoukankan      html  css  js  c++  java
  • 操作系统-内存换入

    操作系统为了让用户使用,进行分段,但是效率不行,所以引出了分页,后来应该分段也应该分页,所以使用了虚拟内存,分段分页的核心就是虚拟内存,而要实现虚拟内存,就需要进行内存的换入和换出

    1. 段页同时存在

    2. 用户眼中的内存

    3. 用换入、换出实现‘大内存’

    在用户眼中0-4G就是特别大的内存,相当于一个仓库,在仓库里有各种货,而物理内存相当于店面,店面小只能摆一些货,当有人需要货A,就从仓库里取(虚拟内存)放到柜台上(物理内存),有人需要货B,货A放回仓库,在从仓库里取货B放到柜台上,只要速度足够的快,柜台上就一直都有你想要的货

    4. 请求调页

    1. 当程序访问地址,看页表发现缺页,说明一段代码没有在页表中,不能取指执行,所以一缺页程序就不能执行下去,需要调页,此时进行中断,先执行其他的进程
    2. 产生了中断,就要执行中断处理程序,也就是页错误处理程序
    3. 页错误处理程序需要到磁盘中找到这一页程序,使用某个算法
    4. 找到之后需要在物理内存中找一个空闲页,需要把这一页从磁盘上读进来,这就是请求调页,换入,已经从磁盘上换入了
    5. 接下来把这个映射做好,对应的页表中,此时中断处理结束,
    6. 继续执行中断那个时候发生的指令,从用户的角度来看,好像什么事都没有发生过

    例题

    5. 一个实际系统的请求调页


  • 相关阅读:
    call()与apply()的作用与区别
    Tomcat8/9的catalina.out中文乱码问题解决
    怎样查看Jenkins的版本
    每日日报2020.8.18
    528. Random Pick with Weight
    875. Koko Eating Bananas
    721. Accounts Merge
    515. Find Largest Value in Each Tree Row
    286. Walls and Gates (Solution 1)
    408. Valid Word Abbreviation
  • 原文地址:https://www.cnblogs.com/mengd/p/12616137.html
Copyright © 2011-2022 走看看