接前一篇文章:QEMU源码全解析2 —— QEMU参数解析(2)
本文内容参考:
《趣谈Linux操作系统》 —— 刘超,极客时间
《QEMU/KVM》源码解析与应用 —— 李强,机械工业出版社
特此致谢!
上回说到QEMUOptions结构以及全局变量qemu_options,本节继续对其进行深入探究。
为便于理解和会议,在此再贴出QEMUOption结构的代码,在softmmu/vl.c中:
typedef struct QEMUOption {
const char *name;
int flags;
int index;
uint32_t arch_mask;
} QEMUOption;
QEMUOption提供了参数的基本信息情况。实际参数的保存是由3个数据结构完成的。
QEMU将所有参数分成了几个大选项,也可以叫类,如-enable-kvm和-kernel都属于machine相关的,每个大选项使用struct QemuOptsList结构体表示,其定义在include/qemu/option.h中,代码如下:
struct QemuOptsList {
const char *name;