1.3个地址

  物理地址:内存存储器的索引,cpu通过地址线管脚加上电信号读写内存单元

  虚拟地址(线性地址):win32中系统和应用程序所看到的所有地址

  逻辑地址:段地址+偏移

2.页式内存管理

如果不使用分页则线性地址就是物理地址
分页后线性地址构成:名词:PDE,CR3(PDBR),PTE,  最后绿色的就是物理内存了
2.段式内存管理
分段是必须的:
逻辑地址(32bit有效地址) <->32bit线性地址偏移
16bit选择器 找到64bit段描述符 (32bit线性基地址)
上面2个线性的加和得到线性地址
全局描述符表: 强制存在, 第一项是空的. GDTR寄存器保存GDT的地址,大小是48bit, 其中低16bit决定了GDT的大小,后32bit是GDT首线性地址
段描述符:64bit: 
段选择子(器)(段寄存器的值): 16bit高13bit是GDT索引,故GDT最多有8192个段描述符.第低3bit如果是1则表示索引是LDT的否则是GDT的索引. 低2bit表示请求特权级别即00,01,10,11 对应于ring0-3

转载于:https://www.cnblogs.com/freesec/p/6189206.html

windows内存管理概述相关推荐

  1. Windows 内存详解(三)Windows内存管理

    本文主要内容: 1.基本概念:物理内存.虚拟内存:物理地址.虚拟地址.逻辑地址:页目录,页表 2.Windows内存管理 3.CPU段式内存管理 4.CPU页式内存管理   一.基本概念 1. 两个内 ...

  2. Windows内存管理学习笔记(三)—— 无处不在的缺页异常

    Windows内存管理学习笔记(三)-- 无处不在的缺页异常 缺页异常 实验一:设置虚拟内存 无处不在的缺页 位于页面文件 保留与提交的误区 实验二:理解缺页异常 EXECUTE_WRITECOPY ...

  3. Windows内存管理学习笔记(二)—— 物理内存的管理

    Windows内存管理学习笔记(二)-- 物理内存的管理 物理内存 实验一:理解MmNumberOfPhysicalPages MmPfnDatabase _MMPFN 物理页状态 六个链表 实验二: ...

  4. Windows内存管理学习笔记(一)—— 线性地址的管理

    Windows内存管理学习笔记(一)-- 线性地址的管理 用户空间线性地址的管理 实验一:理解用户空间线性地址管理 Private Memory 实验二:理解Private Memory 堆 实验三: ...

  5. Windows内存管理机密+揭穿内存优化工具的骗局

    原文:The Memory-Optimization Hoax:RAM optimizers make false promises 作者:Mark Russinovich 译者:盆盆   我们在浏览 ...

  6. JVM内存管理------JAVA语言的内存管理概述

    转载自  JVM内存管理------JAVA语言的内存管理概述 引言 内存管理一直是JAVA语言自豪与骄傲的资本,它让JAVA程序员基本上可以彻底忽略与内存管理相关的细节,只专注于业务逻辑.不过世界上 ...

  7. 全面介绍Windows内存管理机制及C++内存分配实例(六):堆栈

    本文背景: 在编程中,很多Windows或C++的内存函数不知道有什么区别,更别谈有效使用:根本的原因是,没有清楚的理解操作系统的内存管理机制,本文企图通过简单的总结描述,结合实例来阐明这个机制. 本 ...

  8. 全面介绍Windows内存管理机制及C++内存分配实例(五):堆

    本文背景: 在编程中,很多Windows或C++的内存函数不知道有什么区别,更别谈有效使用:根本的原因是,没有清楚的理解操作系统的内存管理机制,本文企图通过简单的总结描述,结合实例来阐明这个机制. 本 ...

  9. 全面介绍Windows内存管理机制及C++内存分配实例(四):内存映射文件

    本文背景: 在编程中,很多Windows或C++的内存函数不知道有什么区别,更别谈有效使用:根本的原因是,没有清楚的理解操作系统的内存管理机制,本文企图通过简单的总结描述,结合实例来阐明这个机制. 本 ...

最新文章

  1. 关于Blocking IO, Non-Blocking IO 和 Asynchronous I/O的理解
  2. 10 ping不通widwos7 windwos_弱电老司机总结的10种视频监控系统故障解决方法,学会,事半功倍...
  3. oracle 之 using 使用
  4. SDI, DVI, HDMI, DisplayPort的区别(Z)
  5. Azure 和 Linux
  6. Map四种获取key和value值的方法,以及对map中的元素排序
  7. 用了HTTPS,没想到还是被监控了!
  8. lambda表达式对比
  9. property java用法_Java Properties getProperty(key)用法及代码示例
  10. DNS迭代查询与递归查询的区别
  11. ImportError: No module named MySQLdb
  12. java版b2b2c社交电商spring cloud分布式微服务 (三) 服务消费者(Feign)
  13. shc加密shell脚本
  14. 2022年北京购房攻略一 (常识篇)
  15. 初识云计算————虚拟化背景
  16. MatrixDB v4.5.0 重磅发布,全新推出 MARS2 存储引擎!
  17. 第二部分 自动内存管理
  18. 【企业】读纸牌屋,把握人性
  19. 再先进的在线教学,也要回归这个本质
  20. toLua:简洁的使用说明

热门文章

  1. boxfilter 函数
  2. 【mysql】成绩单表,找到所有成绩都不及格的所有人
  3. Python Setuptools 升级(Upgrade)
  4. QT,C++多项式计算器—version3(厌倦CMD黑框框的走起!)
  5. Ubunt_配置_start
  6. [Luogu] P4198 楼房重建
  7. PotPlayer 所有版本合集
  8. 2017.9.2 校内模拟赛
  9. Java GC如何判断对象是否为垃圾
  10. 基础笔记6(exception)