• 关于triple fault


    工作中遇到一个triple fault 的东西, 一脸懵逼。 这个fault 是 同事修改 ccx env 改出来的, 有关double fault 转载: http://www.lenky.info/archives/2012/04/1479
    triple fault , spec 上一个example,
    Example: A guest raises a #GP during delivery of which a #NP is raised (a scenario that, according to x86 rules, resolves to a #DF), and an intercepted #PF occurs during the attempt to deliver the #DF. Upon intercept of the #PF, EXITINTINFO indicates that the guest was in the process of delivering a #DF when the #PF occurred. The information about the intercepted page fault itself is encoded in the EXITCODE, EXITINFO1 and EXITINFO2 fields. If the VMM decides to repair and dismiss the #PF, it can resume guest execution by re-injecting (see “Event Injection” on page 479) the fault recorded in EXITINTINFO. If the VMM decides that the #PF should be reflected back to the guest, it must combine the event in EXITINTINFO with the intercepted exception according to x86 rules. In this case, a #DF plus a #PF would result in a triple fault or shutdown.
    先记录问题,后续写理解,

    个人初步理解,可能不对
    本例中, 首先在代码执行过程中由于segment limit 产生一个 exception , #GP
    代码进入handle处理这个exception的时候,需要先把当前的状态保存起来,一次需要读一些记录档当前状态的寄存器,在读寄存器的过程中, 又产生了一个#GP, 形成 Double Fault, 在之后的执行中, 又又遇到一个GP, 产生triple fault.

  • 相关阅读:
    python常用函数年初大总结
    Linux系统巡检常用命令
    码率
    视频码率计算问题
    Python快速教程
    MFC消息机制
    MySQL多表查询
    VoIP的话音质量测量方法
    用Py2exe打包Python脚本简单介绍
    在Eclipse中执行Andorid test preject提示The connection to adb is down, and a severe error has occured.解决方法
  • 原文地址:https://www.cnblogs.com/yanli0302/p/11287323.html
Copyright © 2020-2023  润新知