阅读:809回复:3
一个内存问题,请大家进来看看
在Win2000系统下,比如我们要看物理内存的某地址是什么值,一般是先作物理地址到线性地址的转换,然后根据地址到线性空间去取值。
小弟有一个疑问,物理内存的某一块内存如果没有被占用,映射到线性空间后是不是该段内存数据全部为零?或者说,我们经常使用malloc和free,这个free使用以后,对应的物理地址是否被操作系统清零?还是保留了一些随机的数字? 所以问题就转到空闲内存释放的问题上来了,很多内存整理工具,能将目前不用的内存或者说小片内存重新整理,它们判断某一块物理内存没被使用的依据是什么,判断MDL结构中的标志变量?还是去读读线性地址如果全为零则没被占用? 多谢各位老大指教。 [编辑 - 5/21/03 by xyyln] |
|
|
沙发#
发布于:2003-05-21 18:16
听说很多的所谓“内存整理工具”,就是申请很大的内存,再释放。根本没有用。
不会清零吧。 |
|
板凳#
发布于:2003-05-21 18:34
用户被禁言,该主题自动屏蔽! |
|
地板#
发布于:2003-05-21 20:24
但也有很多工具,比如memzip,应该是真正释放了未用内存吧,但是这些闲置内存如果其值不是被填充为零,是不是页表结构里有什么引用计数?
|
|
|