zoukankan      html  css  js  c++  java
  • 内存管理2

     可能产生外部碎片的是段式和可变分区 可能参数内部碎片的是页式段页式 固定分区

    在虚拟存储方案中 常用的页面调入策略有两种请求调页和预调页

    移动技术可以解决外部碎片不能解决内部碎片

    页面置换策略中先进先出页面置换算法(FIFO)总是选择最先换入的页面调出 最近不常用页面置换算法(LFU)是根据页面的被调用次数来选择的 这种方法总数选择被访问次数最少的页面调出 理想页面置换算法(OPT)总数选用以后不再需要或最长时间以后才会用到的页面调出 最近最少使用页面置换算法(LRU)总是选用最长时间内来访问过的页面调出

    页式存储管理方案中 将内存逻辑地址分为页号和地址两个部分 一个字节八位 三个字节24位所以地址长度为24位由于页面地址占10位所以页号占用14位 2^14=16384即进程最多有16384个页面

    在某页式存储管理方案中 页面大小2kb=2^11 进程地址空间2^29=512MB 页号就占29-11=18  2^18个

    固定分配局部地区置换的分配方案是基于进程的类型 为每一进程分配固定的页数的内存空间 在整个运行期间 都不再改变  采用该策略时 如果进程在运行中出现缺页 则只能从该进程的N个页面选择一个换出 然后再进入一页 以保证分配给该进程的内存空间不变

    可变分区进程运行中 其内存页面可以动态增长或者减少 为每一个进程分配一定数目的内存页面

    全部置换是运行的过程当其页面不够时  可以从系统中的热任何进程处置换

    虚位地址的地址长度为20其中0~10位是内地址 每页大小为4kb 12~20为页号  地址空间最多允许有2^8页 则允许一个进程最大 有2^8*2^12=2^20个字节

    当某个进程发生页面中断且选中一个页面进行淘汰时 该页面对应的页表项中 哪些参数和标志位不需要更改:内存块号访问位修改位保护位

    内存分配表的组织方式:位示图表,空闲页面表,空闲快表

    新进程的调度运行:内存块号  驻留位 访问位需要改

    当一个程序在内存中移动时  需要读出该内存中的所有代码和数据进行内存重定位  将读出的代码和数据写入目标内存中 修改内存已分配区表  修改空闲表

    使用虚拟页式存储管理时 需要在页表中增加 页号 有效位 页框号  访问位 修改位  保护位 禁止缓存等 其中一进程的一个页面内容被修改后,对页表中的访问位和修改位必须修改

    实现虚拟页式存储管理需要以下的硬件支持:1.系统容量有足够大的外存  2.系统有一定容量的内存 3.硬件提供实现虚拟地址映射机制  4.缺页中断处理机制

    磁盘中一个页面调入内存需要修改内存块号 驻留位 访问位

  • 相关阅读:
    【Docker】04 部署MySQL
    【Docker】03 基础操作
    【Nexus】Linux上的Maven私服搭建
    【Mybatis-Plus】01 快速上手
    【Java】IDEA普通JavaEE项目实现SSM整合
    【Vue】03 Slot 插槽 & 自定义事件
    【Vue】02 Component 组件 & Axios
    【Vue】01 基础语法
    【Vue】Vue-Cli 安装
    【Project】JS的Map对象前后交互问题
  • 原文地址:https://www.cnblogs.com/liugangjiayou/p/11491490.html
Copyright © 2011-2022 走看看