内存页是什么

不是内存条,计算机通过内存页是管理内存单元,我不知道内存页的具体管理方法如一个页面管理多大等等问题... 不是内存条,计算机通过内存页 是管理内存单元,我不知道内存页的具体管理方法 如一个页面管理多大等等问题 展开
 我来答
百度网友1298d6e
推荐于2017-10-09 · TA获得超过633个赞
知道小有建树答主
回答量:70
采纳率:100%
帮助的人:97.1万
展开全部
虚拟地址由操作系统维护,由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 动态页式管理。动态页式管理是在静态页式管理的基础上发展起来的。它分为请求页式管理和预调入页式管理。 优点: 没有外碎片,每个内碎片不超过页大小。一个程序不必连续存放。便于改变程序占用空间的大小(主要指随着程序运行而动态生成的数据增多,要求地址空间相应增长,通常由系统调用完成而不是操作系统自动完成)。 缺点:程序全部装入内存。 要求有相应的硬件支持。例如地址变换机构,缺页中断的产生和选择淘汰页面等都要求有相应的硬件支持。这增加了机器成本。增加了系统开销,例如缺页中断处理机,请求调页的算法如选择不当,有可能产生抖动现象。 虽然消除了碎片,但每个作业或进程的最后一页内总有一部分空间得不到利用果页面较大,则这一部分的损失仍然较大。
追问
谢谢  了解了  对于分页的大小有什么标准没
零循环鸭
推荐于2017-09-30 · TA获得超过2.1万个赞
知道大有可为答主
回答量:9655
采纳率:91%
帮助的人:1329万
展开全部
解释如下:
操作系统以内存页为单位管理内存,内存页的大小对系统性能有影响。内存页设得太小,内存页会很多,管理内存页的数组会比较大,耗内存,同时TLB大小是固定的,导致TLB MISS增加。所谓TLB就是把虚拟内存页面与物理内存页面的转换结果存起来,不用每次都用MMU作转换。内存页设大了,因为一个进程拥有的内存是内存页大小的整数倍,会导致碎片,即申请了很多内存,真正用到的只有一点。如果考虑SWAP分区(即把硬盘当内存用,在WINDOWS下应该叫虚拟内存),需要把硬盘数据读入内存,硬盘的读性是,连续读大片数据比分多次读小数据要快,这时候应该把内存页大小设大些
在不同的应用场合,内存页的大小的最优值是不同的。所以一般的系统都支持多种内存页的取值。
就线上服务器来说,一般是只跑少数几个进程,内存大都是被某个进程所用,这时候可以把内存页设得比较大
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蝎XXXXXLLL
高粉答主

2018-04-05 · 醉心答题,欢迎关注
知道大有可为答主
回答量:145
采纳率:100%
帮助的人:5.3万
展开全部

操作系统以内存页为单位管理内存,内存页的大小对系统性能有影响。内存页设得太小,内存页会很多,管理内存页的数组会比较大,耗内存,同时TLB大小是固定的,导致TLB MISS增加。所谓TLB就是把虚拟内存页面与物理内存页面的转换结果存起来,不用每次都用MMU作转换。

内存页设大了,因为一个进程拥有的内存是内存页大小的整数倍,会导致碎片,即申请了很多内存,真正用到的只有一点。如果考虑SWAP分区(即把硬盘当内存用,在WINDOWS下应该叫虚拟内存),需要把硬盘数据读入内存,硬盘的读性是,连续读大片数据比分多次读小数据要快,这时候应该把内存页大小设大些。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式