我使用两个虚拟机(A和B)在服务器2003上运行ESX。
假设"A“使用一块物理内存。当我关闭虚拟机"A“之后,服务器的RAM中的"A”数据会发生什么变化?
我知道操作系统将该空间标记为“可用使用”,但我担心的是,"B“中的进程将请求一些内存空间,获取由"A”释放的块,并能够读取"A“留下的数据("A”左保密数据)。
我的担心有道理吗?
你建议如何处理这个问题?
发布于 2013-06-11 22:35:52
根据理解VMWare ESX服务器中的内存资源管理的说法,我引用-
为了避免虚拟机之间的信息泄漏,虚拟机管理程序在将其分配给虚拟机之前总是将零写入主机物理内存。
发布于 2013-06-10 20:48:10
我不建议做任何事,因为这不是ESX的问题。
ESX像所有现代操作系统一样实现它的内存管理器,因为每个进程都有一个虚拟内存空间,根据需要将物理页面映射到该空间。当进程结束时,与该进程关联的页面将返回给空闲池。当一个进程需要另一个页面时,它将从空闲池中提取并写入。试图读取未分配页面的进程只会获得零或崩溃(我不确定ESX如何处理这个问题,但无论是哪种方式,您都不会得到随机的物理页面)。
注意,这都是在ESX层面。所有机器B看到的都是ESX级VMM分配给它的页面,它根本看不到机器A中的任何内容。
https://serverfault.com/questions/514772
复制相似问题