在请求分页存储管理系统中,逻辑地址长度为16位,每页的大小为2kB,部分页表如下:页号 物理地址 0 4 1 10 2 6 3 2 则逻辑地址位0EC5H所对应的物理地址为( )H。
时间: 2024-05-22 13:11:42 浏览: 80
首先,将16位的逻辑地址拆分为页号和页内偏移量。其中,2kB 的页大小可以存储 $2^{11}$ 个字节,也就是说偏移量需要 11 位二进制数来表示。因此,可以将逻辑地址的前 5 位作为页号,后 11 位作为页内偏移量。
将逻辑地址 0xEC5H 转换为二进制数为:1110 1100 0101。其中,前 5 位为页号,后 11 位为页内偏移量。页号为 11101B,转换为十进制为 29,即在页表中查找页号为 29 的物理地址。根据部分页表可以得知,页号为 29 的物理地址为 4,因此该逻辑地址对应的物理地址为 $4 \times 2^{11} + 0xEC5 \text{(十六进制)} = 0x9015$。因此,答案为 9015H。
相关问题
32位linux系统采用分页存储管理方式,其中页的大小设为16kb,则逻辑地址0x0008c31e
32位Linux系统采用分页存储管理方式,其中页的大小设为16KB。逻辑地址0x0008c31e可以被划分为两部分,即高12位和低20位。
由于页的大小为16KB,即2^14字节,所以低20位可以表示页内偏移量,即0x1e。而高12位表示页号。
对于逻辑地址0x0008c31e,该地址的高12位为0x000,即页号为0。而低20位为0x8c31e的低20位,则表示页内偏移量为0x1e。
因此,逻辑地址0x0008c31e对应的物理地址为:页号为0的物理页面起始地址+0x1e。
需要注意的是,由于采用分页存储管理方式,逻辑地址需要经过页表映射才能得到物理地址。页表将逻辑地址的高12位作为索引,查找对应的页表项。页表项中保存着物理页面的起始地址。
总结来说,逻辑地址0x0008c31e对应的物理地址是通过页表查找得到的,通过将逻辑地址的高12位作为索引,在页表中找到对应的页表项,再加上低20位作为页内偏移量,得到最终的物理地址。
在一个分页存储管理系统中,逻辑地址长度为16位,页面大小是4KB,某进程页表页号为0,1,2,3分别对应的物理块号是8,2,7,1,则: (1)将逻辑地址31C1H(H表示十六进制)转换成物理地址。 (2)将逻辑地址2500(十进制)转换成物理地址。
对于该分页存储管理系统,每个页面的大小为4KB,即2^12字节,每个页表项占用4字节(1个页号+3个页表标志位),所以一个页表最多能够映射2^16 / 2^12 = 2^4 = 16个页面。
(1)将逻辑地址31C1H转换成物理地址:
首先将逻辑地址31C1H转换为二进制数,得到:0011 0001 1100 0001
16位逻辑地址中,前12位为页内偏移量,后4位为页号。因为每个页面大小为4KB,即2^12字节,所以逻辑地址的前12位偏移量可以直接映射到物理地址的前12位,物理地址的后12位与逻辑地址的后12位相同。
对于逻辑地址的页号,将其转化为十进制数,得到49,即逻辑地址所对应的页号为49。
根据题目中的页表,该进程的第49个页表项中存储的物理块号为8,因此逻辑地址31C1H所对应的物理地址为:1000 0001 1100 0001,即81C1H。
(2)将逻辑地址2500转换成物理地址:
首先将逻辑地址2500转换为二进制数,得到:0010 0101 0000 0000
同样地,逻辑地址的前12位偏移量可以直接映射到物理地址的前12位,物理地址的后12位与逻辑地址的后12位相同。
对于逻辑地址的页号,将其转化为二进制数,得到:0010 0101 0000,即逻辑地址所对应的页号为37。
根据题目中的页表,该进程的第37个页表项中存储的物理块号为未定义,因此逻辑地址2500所对应的物理地址无法确定。