请求分页式系统地址转换
来源:互联网 发布:寒冷队长 知乎 编辑:程序博客网 时间:2024/05/24 06:56
基本分页存储管理方式中关于逻辑地址和物理地址的转换
【例1】考虑一个由8个页面,每页有1024个字节组成的逻辑空间,把它装入到有32个物理块的存储器中,问:
(1)逻辑地址需要多少二进制位表示?
(2)物理地址需要多少二进制位表示?
分析在分页存储管理中,逻辑地址结构如下图所示。
它由两个部分组成:前一部分表示该地址所在页面的页号p;后一部分表示页内地址(页内位移)d。页号的地址位数决定了页的多少,假设页号有20位,则地址空间中最多可容纳的页面数为2^20,即1M个页面。页内地址位数确定了每页的大小,若页内地址为12位,则每页大小为2^12,即2KB。
同理,物理地址中块号的地址位数决定了块的数量。由于页式存储管理内存空间块的大小与页面大小相同,所以物理地址中块内地址与逻辑地址中的页内地址位数相同。
解因为页面数为8=2^3,故需要3位二进制数表示。每页有1024个字节,1024=2^10,于是页内地址需要10位二进制数表示。32个物理块,需要5位二进制数表示(32=2^5)。
(1)页的逻辑地址由页号和页内地址组成,所以需要3+10=13位二进制数表示。
(2)页的物理地址由块号和页内地址的拼接,所以需要5+10=15位二进制数表示。
【例2】若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024字节,试将逻辑地址1011,2148,4000,5012转化为相应的物理地址。
页号
0
1
2
3
块号
2
3
1
6
分析页式存储管理的地址结构是一维的,即逻辑地址(或物理地址)只用一个数值即可表示。若给定逻辑地址A,页面的大小为L,则页号p和页内地址d可按照下式求得:
p=int [A/L]d=A mod L
其中,int是取整函数(取数值的整数部分),mod是取余函数(取数值的余数部分)。
下图显示了页式管理系统的地址转换机构。
页表的作用是实现从页号到物理块号的地址映射。以逻辑地址的页号检索页表,得到该页的物理块号;同时将页内地址d直接送入物理地址寄存器的块内地址字段中。这样物理块号和块内地址拼接成了实际访问内存的地址,从而完成了从逻辑地址到物理地址的转换。
所以物理地址的计算公式为:
物理地址=块的大小(即页的大小L)′块号f+页内地址d
解本题中,为了描述方便,设页号为p,页内位移为d,则:
(1)对于逻辑地址1011,p=int(1011/1024)=0,d=1011 mod 1024=1011。查页表第0页在第2块,所以物理地址为1024′2+1011=3059。
(2)对于逻辑地址2148,p=int(2148/1024)=2,d=2148 mod 1024=100。查页表第2页在第1块,所以物理地址为1024+100=1124。
(3)对于逻辑地址4000,p=int(4000/1024)=3,d=4000 mod 1024=928。查页表第3页在第6块,所以物理地址为1024′6+928=7072。
(4)对于逻辑地址5012,p=int(5012/1024)=4,d=5012 mod 1024=916。因页号超过页表长度,该逻辑地址非法。
【例3】某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:
页号
0
5
1
0
物理块号
2
4
3
7
则逻辑地址0A5C(H)所对应的物理地址是什么?
分析页式存储管理的逻辑地址分为两部分:页号和页内地址。
由已知条件“用户编程空间共32个页面”,可知页号部分占5位;由“每页为1KB”,1K=2^10,可知内页地址占10位。由“内存为16KB”,可知有16块,块号为4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:000 1010 0101 1100,根据上面的分析,下划线部分为页内地址,编码“000 10”为页号,表示该逻辑地址对应的页号为2。查页表,得到物理块号是4(十进制),即物理块地址为:01 00 ,拼接块内地址10 0101 1100,得01 0010 0101 1100,即125C(H)。
解逻辑地址0A5C(H)所对应的物理地址是125C(H)。
- 请求分页式系统地址转换
- 详述在设有快表的请求分页存储管理系统中,一个虚地址转换成物理内存地址的过程。
- 特殊请求地址编码转换
- 请求分页系统工作机制
- 分页系统的地址变换
- struts2 filter过滤器转换请求地址
- 分页系统的地址变换机构
- ecshop修改分页或搜索的请求地址
- 分页式存储管理及地址转换(网易笔试题)
- 页目录和页表重合与分页地址转换
- Linux的分段分页及地址转换机制
- 分页管理机制(线性地址转换到物理地址)
- 页目录和页表重合与分页地址转换
- Linux_分页管理机制(线性地址转换到物理地址)
- 分页管理机制(线性地址转换到物理地址)
- 程序模拟分页系统的地址变换过程
- 实验二 第一题 模拟分页式存储管理中硬件的地址转换和产生缺页中断
- 内存管理笔记(分页,分段,逻辑地址,物理地址与地址转换方式)
- [HGE]-源码分析-11 sound
- win7 64位下 使用DOSBOX 进行汇编程序的编写调试
- 关于vim的一些使用以及Dos文件到Linux、Mac下问题
- HTML5 编码规范
- 1/3-3/5+5/7-7/9...+19/21的运算
- 请求分页式系统地址转换
- OCP 042全真试题讲解-视频分享
- c++模版类学习
- Java IO--打印流PrintStream
- GDI绘图之指针时钟
- Php与Android socket通信
- 如何更改eclipse SDK的workspace的位置
- httpd的loadbalance在linux上的设置
- 猴子吃桃--------两个猴子吃桃问题解决的详细描述