主题:[原创]发现之旅(4):VB实现内存整理
上一篇文章:[url=http://www.programfan.com/club/showbbs.asp?id=181590]VB实现逻辑盘隐藏分区[/url]
注:不要把内存整理认为是很难的事,请理解一点:实现内存整理并不等于就实现了内存管理。本文并不会涉及物理、虚拟、核心、扩展、上位内存等之类关于内存管理的东西,毕竟要实现内存管理是非常困难的事,不是一两个人能凭点点猜想就容易实现的。
[color=008080]本文纯为个人猜想而作,无任何参考资料,若有错,敬请指出[/color]
假设:如果你的物理内存是256M,系统允许应用虚拟内存(默认状态),经过启动到windows系统和运行其他程序还剩下100M,那么现在做一个程序疯狂的用内存(比如声明一些很长的数组变量),占用内存200M,会出现什么事[em19][em18][em10]
进一步:现在关闭该程序,并释放那些内存空间,又会发生什么事?[em18]
现在用内存察看软件检查你剩下的可用物理内存吧![em14]
(以上已在window98\2000,VB6.0实现)
要想理解上面实现的原因,不用看那些太高深的书,看下关于虚拟内存的东西就可以了,此不详述。
附:曾经有个微软的工程师写了篇文章说内存整理意义不大,的确是这样
下一篇文章:[url=http://www.programfan.com/club/showbbs.asp?id=181602]VB实现windows录音机[/url]
Copy Right guoyong_cy(2006)
注:不要把内存整理认为是很难的事,请理解一点:实现内存整理并不等于就实现了内存管理。本文并不会涉及物理、虚拟、核心、扩展、上位内存等之类关于内存管理的东西,毕竟要实现内存管理是非常困难的事,不是一两个人能凭点点猜想就容易实现的。
[color=008080]本文纯为个人猜想而作,无任何参考资料,若有错,敬请指出[/color]
假设:如果你的物理内存是256M,系统允许应用虚拟内存(默认状态),经过启动到windows系统和运行其他程序还剩下100M,那么现在做一个程序疯狂的用内存(比如声明一些很长的数组变量),占用内存200M,会出现什么事[em19][em18][em10]
进一步:现在关闭该程序,并释放那些内存空间,又会发生什么事?[em18]
现在用内存察看软件检查你剩下的可用物理内存吧![em14]
(以上已在window98\2000,VB6.0实现)
要想理解上面实现的原因,不用看那些太高深的书,看下关于虚拟内存的东西就可以了,此不详述。
附:曾经有个微软的工程师写了篇文章说内存整理意义不大,的确是这样
下一篇文章:[url=http://www.programfan.com/club/showbbs.asp?id=181602]VB实现windows录音机[/url]
Copy Right guoyong_cy(2006)