IO指令模拟流程(6)
来源:互联网 发布:网络教育报名网站 编辑:程序博客网 时间:2024/06/05 04:33
hvm_send_assist_req将p->state置为STATE_IOREQ_READY,发送IO请求准备好啦,然后通知事件通道。
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是qemu中绑定事件通道的一个回调函数,来处理io请求。cpu_get_ioreq用来获取io请求。
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();
在__cpu_get_ioreq中将req->state置为STATE_IOREQ_INPROCESS,此处req->state等同于p->state。
static ioreq_t *__cpu_get_ioreq(int vcpu)
{
req->state = STATE_IOREQ_INPROCESS;
return req;
- IO指令模拟流程(6)
- IO指令模拟流程(1)
- IO指令模拟流程(2)
- IO指令模拟流程(3)
- IO指令模拟流程(4)
- IO指令模拟流程(5)
- IO指令模拟流程(7)
- IO指令模拟流程(8)
- IO指令模拟流程(9)
- IO指令模拟流程(10)
- IO指令模拟流程(11)
- IO指令模拟流程(12)
- 模拟IO
- ART世界探险(6) - 流程控制指令
- iic驱动(IO口模拟)
- iscsi:IO操作流程(一)
- iscsi:IO操作流程(二)
- iscsi:IO操作流程(三)
- 使用mp4v2将H264+AAC合成mp4文件
- android 进入搜索,将搜索引擎设置为“中国雅虎”,无法搜索到相关网络结果。
- Delphi官方下载地址
- LVM2命令和测试
- ThinkPHP邮件发送函数
- IO指令模拟流程(6)
- 收藏的一系列教程帖子,很适合有一定基础,想要进阶的同学
- Android: 通过Runtime.getRuntime().exec调用底层Linux下的程序或脚本
- ThinkPHP中实现分页(实例)
- Linux守护进程
- 安卓开发 中文课程 (9)--颜色
- 2013腾讯实习 面试记录
- 虚拟机安装Ubuntu的上网设置(有线网络和无线网络)
- 项目四