IO指令模拟流程(6)
2013-05-21 19:41
141 查看
hvm_send_assist_req将p->state置为STATE_IOREQ_READY,发送IO请求准备好啦,然后通知事件通道。
cpu_handle_ioreq是qemu中绑定事件通道的一个回调函数,来处理io请求。cpu_get_ioreq用来获取io请求。
cpu_handle_ioreq→cpu_get_ioreq→__cpu_get_ioreq
在__cpu_get_ioreq中将req->state置为STATE_IOREQ_INPROCESS,此处req->state等同于p->state。
bool_t hvm_send_assist_req(struct vcpu *v) { p->state = STATE_IOREQ_READY; notify_via_xen_event_channel(v->domain, v->arch.hvm_vcpu.xen_port); |
cpu_handle_ioreq→cpu_get_ioreq→__cpu_get_ioreq
static void cpu_handle_ioreq(void *opaque) { extern int shutdown_requested; CPUState *env = opaque; ioreq_t *req = cpu_get_ioreq(); |
static ioreq_t *__cpu_get_ioreq(int vcpu) { req->state = STATE_IOREQ_INPROCESS; return req; |
相关文章推荐
- IO指令模拟流程(1)
- IO指令模拟流程(4)
- IO指令模拟流程(5)
- IO指令模拟流程(7)
- IO指令模拟流程(10)
- IO指令模拟流程(9)
- IO指令模拟流程(12)
- IO之流程与buffer概览
- 51单片机IO口模拟串口通讯5
- 模拟SPI实现和调试流程
- [IO系统]05 open流程分析
- linux Kernel module简单模拟ps指令输出
- SpringBoot+LayIM+t-io 实现好友申请通知流程
- 2568. 【NOIP2011模拟9.17】地铁建设 (Standard IO)
- 学习笔记——51通过IO口模拟IIC实现AT24C02的读写
- 笔记四:linux下IO口模拟实现I2C协议
- PHP中break及continue两个流程控制指令解析
- 简单模拟SpringIOC工作机制流程开发
- 51单片机普通IO口模拟IIC总线的程序实现
- 模拟登陆web微信的流程和参数细节