社区
.NET Framework
帖子详情
程序的虚拟内存,怎么总是和内存同时增长?
wcl1986_1
2010-06-11 12:13:37
加入我读入300M的数据进入内存,这时,虚拟内存也增加300M。当然也不总这样,也有少数时候,内存20M,虚拟内存300M.
这都是什么情况下,发生的呢?
谁能告诉我虚拟内存的机制。
...全文
69
5
打赏
收藏
程序的虚拟内存,怎么总是和内存同时增长?
加入我读入300M的数据进入内存,这时,虚拟内存也增加300M。当然也不总这样,也有少数时候,内存20M,虚拟内存300M. 这都是什么情况下,发生的呢? 谁能告诉我虚拟内存的机制。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
足球中国
2010-06-11
打赏
举报
回复
关于windows为什么要设置虚拟内存这个功能,我们已经不得而知了,大概可以猜到盖子大叔似乎在给我们省钱?用硬盘来替代内存的使用(毕竟硬盘的价格远低于内存)。
在vista 中由于内存的使用量相当大,所以很多网友把虚拟内存设置得也很大,甚至是物理内存的2倍以上!以为这能提高系统性能,实际上这是在帮倒忙。
我们知道cpu的访问顺序是高速缓存到内存再到硬盘,所以注定硬盘传输的速度比内存延迟,而且由于内部运行机制的不同,内存的内部运行速度远远快于硬盘,这就是为什么我们要不断地加大内存的容量了。但是,内存再大也会用完,如果等到用完的时候系统才来想办法解决,无疑的,我们的电脑马上就会死机。所以系统里面就有备用的虚拟内存。
虚拟内存主要依据以下3个原则进行工作:
1.在正常使用的时候,系统内部的交换(缓存)文件通常保存在虚拟内存中;
2.自动把非活动的系统进程或者程序映射到虚拟空间;
3.当物理内存低于25%左右的时候,则把虚拟内存和物理内存合并,也就是说系统此时会把你的虚拟内存也识别成物理内存。
知道了虚拟内存的工作机制我们就知道如果把虚拟内存设置过大就会导致系统提前使用你的虚拟空间,这会使你感觉的系统的速度下降,同时硬盘负担大大加重。这就是为什么vista的使用者在开机后硬盘总是不停的转,灯不停的闪,同时很多操作都有延迟的现象(尤其是在内存比较小的情况下),这就是系统在大量使用虚拟空间的表现,这个功能这时很能使你的硬盘提前下岗。所以我们首要的前提是增加物理内存,同时我个人建议虚拟空间最多设置为物理内存的1.5倍就行了。当然如果你的内存在1G以上则可以减少到0.5至1倍完全够了。
至于有的网友由于物理很大,则完全把虚拟内存禁用了,这个也是不可取的。因为从上文知道原则2规定了系统一般要使用虚拟空间(而不管你的物理内存多大),若系统在映射的时候找不到虚拟空间它会反复搜索并不停的向系统发请求,待到反映射时又可能认为找不到需要的进程,这时非常容易发生链接文件死锁或者进程不稳定。因此为了稳定,如果你的物理内存实在够大,那就把虚拟内存设置在比较小的范围里。
INGDI
2010-06-11
打赏
举报
回复
mark
好久没接触过虚拟内存这个概念鸟
weskiter54
2010-06-11
打赏
举报
回复
帮 顶
weskiter31
2010-06-11
打赏
举报
回复
帮 顶
weskiter31
2010-06-11
打赏
举报
回复
不懂,up
合理利用计算机
虚拟
内存
,
虚拟
内存
有什么用?
虚拟
内存
怎么设置最好?
虚拟
内存
有什么用?
虚拟
内存
是什么?在小
内存
的XP系统时代,
虚拟
内存
显得非常需要。
内存
主要是用来临时存贮数据 比如电脑中调用的数据,就需要从硬盘读出,发给
内存
,然后
内存
再发给CPU。
虚拟
内存
有什么用ne ?
虚拟
内存
...
java
虚拟
内存
一直涨,具有16GB
虚拟
内存
且不断
增长
的Java
程序
:这是一个问题吗?...
然而,它的
虚拟
内存
大小,如OSX的活动监视器所示,在一天左右后变得非常庞大:现在它已经是16GB并且在不断
增长
.物理
内存
使用率大致稳定在1.1GB左右.我想知道:16GB(并且还在
增长
)是一个问题的迹象,可能会减慢我的
程序
?...
详解操作系统中
虚拟
内存
与物理
内存
的关系
三、
程序
占用的
内存
是
虚拟
内存
还是物理
内存
3.1
内存
管理 3.1.1
内存
管理概念 3.1.2 glibc
内存
管理器 3.1.3
内存
管理器面临的困难 3.1.4 以堆为例讲解
内存
的申请与释放 3.2 代码占用的
内存
3.2.
内存
泄漏、
虚拟
内存
、物理
内存
的联系
虚拟
内存
是您的
程序
处理的内容。它由所有由malloc,new等人返回的地址组成。每个进程都有自己的虚拟地址空间。虚拟地址的使用在理论上受到
程序
地址大小的限制:32位
程序
具有4GB的地址空间; 64位
程序
有更多。实际上,...
物理
内存
和
虚拟
内存
虚拟
内存
和物理
内存
物理
内存
是真正的
内存
,在应用中顾名思义,物理上,真实的插在板子上的
内存
是多大就是多大了。看机器配置的时候,看的就是这个物理
内存
。
虚拟
内存
是为了满足系统对超出物理
内存
容量的需求时...
.NET Framework
17,741
社区成员
24,334
社区内容
发帖
与我相关
我的任务
.NET Framework
.NET技术 .NET Framework
复制链接
扫一扫
分享
社区描述
.NET技术 .NET Framework
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章