当前位置:首页 » 存储配置 » 一个虚拟存储器有64个页面

一个虚拟存储器有64个页面

发布时间: 2024-10-27 01:16:02

1. 某虚拟存储器的用户空间共有32个页面,每页 1KB,主存 16KB.试问:

这题考的是地址映射,所以基本知识你可以看书上存储管理地址映射部分内容。用户空间也就是指的虚拟空间页面大小和数量的乘积便是逻辑地址空间大小,32KB对应2^15所以有效位数15位。同理主存就是物理空间。
第三问题目说的相当于就是页表,逻辑地址的二级制数从右往左10位为页内地址即偏移量offset,因为逻辑空间一共能容纳15位,所以后5位决定页号。根据页表找到物理块号,注意因为物理空间14位所以物理页号即页帧号用四位表示,加上偏移量即为物理地址。

2. 某虚拟存储器的用户空间共32个页面,每页1KB,主存16KB.逻辑地址和物理地址各需要

假定都是字节地址的话 ,
逻辑地址需要(5+10)=15bit,
物理地址需要(4+10)=14bit,
转换后的物理地址分别为 127CH、116CH

3. 内存页是什么

虚拟地址由操作系统维护,由MMU可以进行转换,扩大了内存空间分页管理。大多数使用虚拟存储器的系统都使用一种称为分页(paging)机制。虚拟地址空间划分成称为页(page)的单位,而相应的物理地址空间也被进行划分,单位是页帧(frame),一个在磁盘,一个在内存,页和页桢的大小必须相同。在32位地址的机器,它的虚拟地址范围从0~0xFFFFFFFF(4G),而这台机器只有256M的物理地址,因此他可以运行4G的程序,但该程序不能一次性调入内存运行。这台机器必须有一个达到可以存放4G程序的外部存储器(例如磁盘或是FLASH),以保证程序片段在需要时可以被调用。在这个例子中,页的大小为4K,页桢大小与页相同——这点是必须保证的,因为内存和外围存储器之间的传输总是以页为单位的。对应4G的虚拟地址和256M的物理存储器,他们分别包含了1M个页和64K个页帧。
页表就像一个函数,输入是页号,输出是页桢,实现从页号到物理地址的映射。操作系统给每一个进程维护一个页表。所以不同进程的虚拟地址可能一样。页表给出了进程中每一页所对应的页帧的位置。
页面置换:把一个页面从内存调换到磁盘的对换区中
抖动:在具有虚存的计算机中,由于频繁的调页活动使访问磁盘的次数过多而引起的系统效率降低的一种现象.
在地址映射过程中,若在页面中发现所要访问的页面不再内存中,则产生缺页中断。当发生缺页中断时操作系统必须在内存选择一个页面将其移出内存,以便为即将调入的页面让出空间。而用来选择淘汰哪一页的规则叫做页面置换算法
常用的页面置换算法:
先进先出法FIFO(置换次数比较多) ;最佳置换法OPT:选择将来不再使用或在最远的将来才被访问的页调换出去(不便于实现);最近最久未使用LRU:选择在最近一段时间里最久没有使用过的页面予以淘汰 ;Clock置换算法(LRU算法的近似实现); 最少使用(LFU)置换算法;页面缓冲置换算。
页式可以分为:
1 静态页式管理。静态分页管理的第一步是为要求内存的作业或进程分配足够的页面。系统通过存储页面表、请求表以及页表来完成内存的分配工作。静态页式管理解决了分区管理时的碎片问题。但是,由于静态页式管理要求进程或作业在执行前全部装入内存,如果可用页面数小于用户要求时,该作业或进程只好等待。而且作业和进程的大小仍受内存可用页面数的限制。
2 动态页式管理。动态页式管理是在静态页式管理的基础上发展起来的。它分为请求页式管理和预调入页式管理。 优点: 没有外碎片,每个内碎片不超过页大小。一个程序不必连续存放。便于改变程序占用空间的大小(主要指随着程序运行而动态生成的数据增多,要求地址空间相应增长,通常由系统调用完成而不是操作系统自动完成)。 缺点:程序全部装入内存。 要求有相应的硬件支持。例如地址变换机构,缺页中断的产生和选择淘汰页面等都要求有相应的硬件支持。这增加了机器成本。增加了系统开销,例如缺页中断处理机,请求调页的算法如选择不当,有可能产生抖动现象。 虽然消除了碎片,但每个作业或进程的最后一页内总有一部分空间得不到利用果页面较大,则这一部分的损失仍然较大。

4. 操作系统页面调度

某虚拟存储器共8个页面,每页1024个字,实际主存为4096个字,采用页表法进行地址映象。映象表的内容如下表1所示。实页号 装入位
3 1
1 1
2 0
3 0
2 1
1 0
0 1
0 0
表1 虚页号 实页号 装入位
0 3 1
1 1 1
2 2 0
3 3 0
4 2 1
5 1 0
6 0 1
7 0 0
表2 (1)列出会发生页面失效的全部虚页号;
解:根据页表法列出表2,当装入位为0时,即为页面失效,再找出相对应的虚页号即可。
会发生页面失效的全部虚页号为:2,3,5,7
(2)按以下虚地址计算主存实地址:0,3728,1023,1024,2055,7800,4096,6800。
解:虚页号=│_虚地址/页面大小_│
实地址=(实页号*页面大小)+(虚地址-虚页号*页面大小) 虚地址 0 3728 1023 1024 2055 7800 4096 6800
虚页号 0 3 0 1 2 7 4 6
实页号 3 3 3 1 2 0 2 0
装入位 1 0 1 1 0 0 1 1
实地址 3072 3728 4095 1024 2055 632 2048 656

5. 页面虚拟存储器与段式虚拟存储器的区别

页面虚拟存储器与段式虚拟存储器区别:
1、页面虚拟存储器
页式虚拟存储系统中,虚拟空间分成页,称为逻辑页;主存空间也分成同样大小的页,称为物理页。页表中每一个虚存逻辑页号有一个表目,表目内容包含该逻辑页所在的主存页面地址(物理页号),用它作为实存地址的高字段,与虚存地址的页内行地址字段相拼接,产生完整的实主存地址,据此来访问主存。
2、段式虚拟存储器
段式虚拟存储器是按程序的逻辑结构划分地址空间,段的长度是随意的,并且允许伸长,它的优点是消除了内存零头,易于实现存储保护,便于程序动态装配;缺点是调入操作复杂。将这两种方法结合起来便构成段页式调度。在段页式调度中把物理空间分成页,程序按模块分段,每个段再分成与物理空间页同样小的页面。

热点内容
浙江服务器dns地址云空间 发布:2024-10-27 03:31:19 浏览:676
编译器的读音 发布:2024-10-27 03:31:11 浏览:473
逆水寒和魔兽哪个配置高 发布:2024-10-27 03:30:35 浏览:907
java可变长度数组 发布:2024-10-27 03:30:35 浏览:400
linux查询命令的版本 发布:2024-10-27 03:24:38 浏览:976
编程3次方 发布:2024-10-27 03:19:48 浏览:19
如何提取手机缓存视频 发布:2024-10-27 02:55:26 浏览:370
php二维数组求和 发布:2024-10-27 02:53:56 浏览:734
c语言如何被编译器编成可执行 发布:2024-10-27 02:33:27 浏览:555
解压蜂巢 发布:2024-10-27 02:32:45 浏览:184