V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
hkitdog
V2EX  ›  问与答

请问影子页表中 p2m 表和哈希表的作用分别是什么?

  •  
  •   hkitdog · 2019-07-28 21:35:38 +08:00 via iPhone · 844 次点击
    这是一个创建于 1705 天前的主题,其中的信息可能已经有所发展或是发生改变。
    查阅了很多资料,源码也看了一些(实在太多了,时间不够)。所以想问一下 p2m 是负责 gfn->mfn,哈希表是 hash(mfn, type) -> smfn,所以
    1. 看资料都说 gfn 与 mfn 的映射是一对一的,而 mfn 与 smfn 之间的映射可能是一对多,mfn 与 smfn 之间的映射由哈希表负责,为什么是一对多呢?那么 gfn 与 mfn 的映射这时由谁负责呢?我看源码直接是 shadow_hash_insert(d, mfn_x(gmfn), shadowtype, smfn);,即 gmfn 直接通过 mfn_x(gmfn)转换成了 mfn,这是个啥操作???
    2. type 是指的该 mfn 在 guest 页表的级数(另,影子页表和 guest 页表结构需要一致吗?)?
    3. 哈希表中这个 mfn 是指的非最低级页表中页表项里的 mfn 吗?
    4.p2m 表负责的是最低级页表所指的 gfn 到 mfn 的转换吗?那就是说 mfn 是不包含 smfn 的吗?
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5870 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 02:20 · PVG 10:20 · LAX 19:20 · JFK 22:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.