考虑一个简单的分页系统,其参数如下:2的32次方 物理内存字节数;页面大小为2的10次方字节;2.的16次方逻辑地址空间的页面。 a.逻辑地址中有多少位? b.一帧中有多少字节? c.物理地址中有多少位指定帧? d.页面表中有多少条目? e.每个页面表条目中有多少位?假设每个页面表条目都包含一个 有效/无效位。
时间: 2023-06-11 10:06:09 浏览: 186
a. 逻辑地址中有32位,因为物理内存大小为2的32次方字节。
b. 一帧中有2的10次方字节,即1024字节。
c. 物理地址中需要指定哪一个帧,因为物理内存大小为2的32次方字节,需要用32位表示,而每个页面大小为2的10次方字节,需要用10位表示,所以物理地址中需要用32-10=22位指定帧。
d. 页面表需要存储每个逻辑页对应的物理页帧号,而逻辑页数为2的16次方,因此页面表中需要有2的16次方个条目。
e. 每个页面表条目需要存储对应逻辑页的物理页帧号以及一位有效/无效位,因此每个页面表条目需要23位(22位用于存储物理页帧号,1位用于存储有效/无效位)。
相关问题
考虑一个简单的分页系统,其参数如下:2的32次方 物理内存字节数;页面大小为2的10次方字节;2的16次方逻辑地址空间的页面。 a.逻辑地址中有多少位? b.一帧中有多少字节? c.物理地址中有多少位指定帧? d.页面表中有多少条目? e.每个页面表条目中有多少位?假设每个页面表条目都包含一个 有效/无效位。
a. 逻辑地址中有32位,因为物理内存字节数为2的32次方。
b. 一帧中有2的10次方字节,即1024字节。
c. 物理地址中需要指定帧,因为物理内存中包含了多个帧。由于每个页面的大小为2的10次方字节,因此物理内存中的帧数为2的32次方/2的10次方=2的22次方。因此,需要22位来指定一个帧。
d. 页面表中有2的16次方个条目,因为逻辑地址空间中的页面数为2的16次方。
e. 每个页面表条目包含一个有效/无效位和一个帧号。由于需要22位来指定一个帧,因此每个页面表条目中需要包含23位。另外,还需要一个有效/无效位,因此每个页面表条目中需要包含24位。
[10%] 一个分页存储管理系统中,页号长度为22比特,页内偏移为12比特。物理地址空间中,每个地址有32位。页表中,每个页表项的长度为32比特的整数倍。 (1)该系统中,进程的逻辑地址空间最大是多少?进程的每个页面有多少字节?页框号的长度是多少比特?(4分) (2)采用一级页表,每个进程的页表大小为多少字节?该系统是否需要启用二级页表,为什么?(4分) (3)该系统中,逻辑地址空间大于物理地址空间,这类系统正常运行需要采取什么措施?(2分)
(1) 由于页号长度为22比特,所以进程的逻辑地址空间大小为2的22次方,即4M字节。每个页面的大小为2的12次方,即4K字节。页框号长度为32-12=20比特。
(2) 采用一级页表时,每个进程的页表大小为2的22次方/每个页面大小(4K)* 每个页表项大小(32比特)= 2的22次方/2的12次方 * 4 = 4K * 4 = 16K字节。由于一级页表的大小已经足够满足系统需求,因此不需要启用二级页表。
(3) 当逻辑地址空间大于物理地址空间时,操作系统采用虚拟内存技术,将内存中的部分内容保存到磁盘上,以便在需要时再将其读取到内存中。当访问到磁盘中的页面时,会发生缺页异常,操作系统会将该页面从磁盘中读取到内存中,然后再重新执行该指令。这样就可以实现进程的正常运行。
阅读全文