如果我通过执行软重启来重新启动计算机而不切断电源,但随后进入 BIOS 并在启动屏幕上启动另一个操作系统,例如从 Windows 转到 Linux Live CD,内存中的一些数据是否会一直保留在那里,直到新操作系统需要空间,还是会立即消失?
答案1
在较旧的计算机中, POST 阶段BIOS 通常会执行“内存测试”,这需要写入并重新读取整个物理 RAM。但是,此过程可能需要很长时间,而且如今的 RAM 更大,而且此过程在检测坏内存方面相当糟糕,因此许多现代计算机默认禁用此过程。
软重启时内存不会被清除。剩余数据量取决于 RAM 技术、新启动前的断电时间和温度。
这个事实并不是什么安全问题,因为大多数现代操作系统都会在将分配的 RAM 页面交给应用程序之前将其清零,从而防止 RAM 剩余。
因此,虽然物理 RAM 内容可能包含过去数据的有趣残余,但只有内核代码使用特殊 API 调用才能访问,而用户模式代码只能看到零。