码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 第三章 内存管理 十二、请求分页管理方式


    目录

    一、页表机制

    1、页表结构

    二、缺页中断机制

    1、有如下例子

    2、根据要访问的逻辑地址的页号2,找到该页的状态是没有放入内存,所以会产生缺页中断,将缺页进程堵塞,放入堵塞队列,调页完成后再将其唤醒,放回就绪序列。

    3、如果内存中有空闲块,则为进程分配一个空闲块,将所缺页面装入该块,并修改页表中相应的页表项。(此时内存块A空闲)

    4、将内存块A分配给页号0

    5、如果内存中没有空闲块,则由页面置换算法选择一个页面淘汰,若该页面在内存期间被修改过,则要将其写回外存。未修改过的页面不用写回外存。(这里内存块C的内容被修改过)

    6、将C的数据写回外存

    7、这样就可以空出C号内存块,然后让页号0的进程去使用,然后它将外存写入内存C

    三、中断的分类

    四、地址变换机制

    1、区别

    2、流程

    3、考点

    五、总结


    一、页表机制

    1、页表结构

    二、缺页中断机制

    1、有如下例子

    2、根据要访问的逻辑地址的页号2,找到该页的状态是没有放入内存,所以会产生缺页中断,将缺页进程堵塞,放入堵塞队列,调页完成后再将其唤醒,放回就绪序列。

    3、如果内存中有空闲块,则为进程分配一个空闲块,将所缺页面装入该块,并修改页表中相应的页表项。(此时内存块A空闲)

    4、将内存块A分配给页号0

    5、如果内存中没有空闲块,则由页面置换算法选择一个页面淘汰,若该页面在内存期间被修改过,则要将其写回外存。未修改过的页面不用写回外存。(这里内存块C的内容被修改过)

    6、将C的数据写回外存

    7、这样就可以空出C号内存块,然后让页号0的进程去使用,然后它将外存写入内存C

    三、中断的分类

    四、地址变换机制

    1、区别

    2、流程

    3、考点

    • ①只有“写指令”才需要修改“修改位”。并且,一般来说只需修改快表中的数据,只有要将快表项删除时才需要写回内存中的慢表。这样可以减少访存次数。
    • ②和普通的中断处理一样,缺页中断处理依然需要保留CPU现场。
    • ③需要用某种“页面置换算法”来决定一个换出页面
    • ④换入/换出页面都需要启动慢速的I/O操作,可见,如果换入/换出太频繁,会有很大的开销。
    • ⑤页面调入内存后,需要修改慢表,同时也需要将表项复制到快表中。
       

    五、总结

  • 相关阅读:
    Jackson分析:侧向流动免疫分析在床旁检测中的优势
    常用vim命令
    Numpy入门[11]——生成数组的函数
    详解使用可道云Kodbox快速在云服务器上搭建云盘
    JS高级:js是单线程的原因
    【已解决】使用xshell来ssh到vmware的虚拟机,请求超时的问题
    MySQL系列---Online DDL
    刷题日记【第十二篇】-笔试必刷题【洗牌+MP3光标位置+年终奖+迷宫问题】
    (脑肿瘤分割笔记:六十二)缺失模态下的对抗性联合训练脑肿瘤分割网络
    从0到1完成UI自动化测试框架搭建之Pytest
  • 原文地址:https://blog.csdn.net/icbbm/article/details/133936295
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号