假设内存使用监控程序

Hypothetical Memory Usage Monitoring Program

本文关键字:监控程序 内存 假设      更新时间:2023-10-16

是否有可能(我不关心实用性或有用性)编写一个C或c++程序,以以下非常基本的方式监控内存使用情况?


如果声明一个变量而不给它赋值,会导致它拥有内存位置中已经存在的值,那么可以创建一个大数组(数千或数百万个元素),而不给所有的值赋值。然后,要查看这些元素是否被覆盖,我们只需要重复比较它们的当前值与前一个值。


我非常怀疑这是否像我上面假设的那么简单。假设我的怀疑是有根据的,问题在哪里,更重要的是,我们是否可以用一些创造性的或深奥的代码来规避它?我想,这个问题可能是由于声明的、未初始化的元素不允许其他系统进程写入它们的内存地址。请给我一些指点!(heehee)谢谢。

假设你的程序是用C语言编写的创建一个大数组受限于可用内存的范围和操作系统对您的限制。

假设你创建了一个很大的数组(未初始化)。现在内存给了你的进程(你运行的程序),没有其他进程可以访问它!(这是操作系统的角色,避免这样的事情,虚拟化的基本要求)。

所以没有其他进程可以访问它的值,一旦分配给你,它就不会改变。