IO指令模拟流程(12)
2013-05-22 08:53
120 查看
1 关于eip
x86_emulate中做指令模拟的具体动作,若模拟成功返回X86EMUL_OKAY,若需要重试模拟同一条指令返回X86EMUL_RETRY,若遇到无法处理的状况返回X86EMUL_UNHANDLEABLE,若遇到异常返回X86EMUL_EXCEPTION。
若返回X86EMUL_OKAY,则表示可以执行下一条指令,会走回写流程,将改变后的eip值写回寄存器,否则直接返回,则寄存器中eip值不变,下次进入还执行当前指令。
int
x86_emulate(
struct x86_emulate_ctxt *ctxt,
const struct x86_emulate_ops *ops)
{
writeback:
/* Commit shadow register state. */
_regs.eflags &= ~EFLG_RF;
*ctxt->regs = _regs;
done:
return rc;
x86_emulate中做指令模拟的具体动作,若模拟成功返回X86EMUL_OKAY,若需要重试模拟同一条指令返回X86EMUL_RETRY,若遇到无法处理的状况返回X86EMUL_UNHANDLEABLE,若遇到异常返回X86EMUL_EXCEPTION。
若返回X86EMUL_OKAY,则表示可以执行下一条指令,会走回写流程,将改变后的eip值写回寄存器,否则直接返回,则寄存器中eip值不变,下次进入还执行当前指令。
int
x86_emulate(
struct x86_emulate_ctxt *ctxt,
const struct x86_emulate_ops *ops)
{
writeback:
/* Commit shadow register state. */
_regs.eflags &= ~EFLG_RF;
*ctxt->regs = _regs;
done:
return rc;
相关文章推荐
- IO指令模拟流程(1)
- IO指令模拟流程(10)
- IO指令模拟流程(9)
- IO指令模拟流程(4)
- IO指令模拟流程(5)
- IO指令模拟流程(6)
- IO指令模拟流程(7)
- 12-7 脚本流程协助类, 自己记录,以后再重构。
- 2557. 【NOIP2011模拟9.9】单词分类 (Standard IO)
- Java IO学习【9】模拟一个Buffer-MyBufferedReader
- ZigBee 用IO口模拟SPI驱动程序
- 一条指令在cpu中的执行流程
- 标准IO的简单应用,动静态库,读取系统时间并打印,模拟ls -l功能
- 二、spring mvc模拟用户增删改查以及登录和上传文件的相关流程
- HTTP请求流程(二)----Telnet模拟HTTP请求
- 12:预处理指令、宏定义、条件编译、多文件编程
- [Java 12 IO] InputStream inputStream = System.in; 的读操作 read() != -1
- 关于IO口模拟SPI
- FPGA设计之时序约束---常用指令与流程
- 抓取网页,分析网页内容,模拟登陆网站的逻辑/流程和注意事项