【问题标题】:What happens if my OS doesn't 0 out a page before I allocate it?如果我的操作系统在分配页面之前没有将页面设为 0,会发生什么情况?
【发布时间】:2021-11-27 09:48:12
【问题描述】:

刚刚进入操作系统,很困惑为什么我们必须一直将页面清零才能将其分配给请求者?

【问题讨论】:

    标签: operating-system virtual-machine paging


    【解决方案1】:

    如果我的操作系统在分配页面之前没有将页面归零,会发生什么情况?

    简单的答案是页面中的数据在被释放之前可以被下一个分配它的进程访问;这意味着您最终可能会在各处泄露机密信息(安全灾难)。

    对于更复杂的答案;这取决于您所说的“分配”是什么意思。对于某些情况(分配物理页面作为从交换空间获取数据的一部分/之前,从内存映射文件加载数据,或执行“写入时复制”),内核不需要用零填充页面,因为它必须填充仍然包含其他数据的页面。

    【讨论】:

      猜你喜欢
      • 2013-11-28
      • 1970-01-01
      • 2021-07-06
      • 1970-01-01
      • 2012-07-29
      • 2014-04-03
      • 1970-01-01
      • 2011-06-21
      • 1970-01-01
      相关资源
      最近更新 更多