页式存储和段页式存储的地址转换过程
来源:互联网 发布:华为麦芒4钢化膜淘宝 编辑:程序博客网 时间:2024/05/17 22:11
一.页式存储-地址转换
访问2次内存,第一次是页表,第二次是真正的物理内存。
二级页表,访问3次内存
两个例子的形式讲解逻辑地址到物理地址的转换:
(1)
页系统页表: 页号: 0 1 2 3 4 5 块号: 3 5 x 4 1 2每页2KB 计算逻辑址1369 物理址
解:
页面大小为=2*1024,所以有:
1369/(2*1024)=0 (取商,算出页号)1369%(2*1024)=1369(取余算出页内地址)3*2*1024+1369=7513
(2)某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
页号
物理块号
0
3
1
7
2
11
3
8
则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。
解题过程:
首先要知道页式存储管理的逻辑地址分为两部分:页号和页内地址。物理地址分为两部分:
关系为:逻辑地址= 页号+页内地址
物理地址= 块号+页内地址;
分析题:已知:用户编程空间共32个页面,2ˆ5 = 32 得知页号部分占5位,由“每页为1KB”,1K=210,可知内页地址占10位。
由“内存为16KB”,2^4=16得知块号占4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:0000101001011100,后十位1001011100是页内地址,
00010为为页号,页号化为十进制是2,在对照表中找到2对应的物理块号是11,11转换二进制是1011,即可求出物理地址为10111001011100,化成十六进制为2E5C;
即则逻辑地址0A5C(H)所对应的物理地址是2E5C;
总结:仔细研究上面的两种方法,其实是一样的。第二种的已经页面大小为1KB,然后就是2的10次方,所以后面10位是偏移地址,前面的是页号。其实用逻辑除页面大小2的10次方,结果是一样的。
一.段页式存储-地址转换
访问3次内存,第一次是段表,第二次是页表,第三次是真正物理内存
1.基本原理:是分页与分段的结合,即先将拥护程序分为若干段,再把每个段分为若干页,并为每个段赋予一个段名。
2.地址结构:
3.地址变换:
4.一个逻辑地址为:基地址x、段号s、页号p和页内地址d,求物理地址
(((x)+s)+p)*2^(11)+d
- 页式存储和段页式存储的地址转换过程
- IP地址存储转换
- 实验二 第一题 模拟分页式存储管理中硬件的地址转换和产生缺页中断
- 存储过程和存储函数的区别
- oracle的存储过程和存储函数
- mysql的存储函数和存储过程
- IP地址在mysql的存储(IP地址和int的转换)
- 存储过程中日期格式的转换
- 临时存储过程和全局的存储过程的创建
- 通用的更新存储过程和删除存储过程
- 无存储过程和有存储过程的区别
- MySQL存储过程的创建和Java调用存储过程
- Mysql存储过程------存储过程的基本概念和基本使用方法
- 存储过程和存储函数
- 存储函数和存储过程
- 存储过程和存储函数
- 存储过程和存储函数
- oracle 存储过程学习地址
- [C语言] 从C++中链接时的C符号的处理
- maven 项目出现 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
- 从这里出发
- dijit.Tree中widget和DOM node之间的切换
- Objective-C中的内存管理
- 页式存储和段页式存储的地址转换过程
- MySQL 查找重复值
- poj-2253 Frogger(最佳路径 Warshall算法)
- win8/8.1 离线安装 .Net3.5
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- USACO Street Race 解题报告
- POCO C++库学习和分析 -- 线程 (三)
- discuz站点迁移或者更换域名后引起的云平台异常解放方法
- 设置布局问题