QEMU 机器创建及初始化机制简析 2023年09月24日 jjl9807 306 本文梳理了 QEMU 机器创建及初始化的基本流程,并以 RISC-V 架构的 virt 平台为例,从机器类型选择、机器参数初始化和机器实例初始化三个环节切入,深入分析了 QEMU 机器创建机制的技术细节,打通了 QEMU 中虚拟机创建流程的内在逻辑。 阅读全文 0 评论
QEMU 设备模型简析(三):QOM 设计实现 2023年09月07日 jjl9807 326 QOM 实现了一套较为完备的对象管理系统,包括自动化的对象注册、完善的对象管理以及巧妙的动态类型转换,本文梳理了 QOM 实现中几大关键数据结构之间的联系,详细分析了封装、多态、继承以及析构等面向对象特性在 QOM 中的集体实现,与之前的文章相呼应,打通了 QEMU 设备模型从使用到实现的全过程逻辑链条。 阅读全文 0 评论
QEMU 设备模型简析(二):面向对象的设备管理 2023年08月30日 jjl9807 225 本文聚焦 QEMU 中面向对象的设备管理机制,阐述了引入对象模型的必要性,介绍了 QOM 基本功能和顶层设计,分析了 `Object` 和 `ObjectClass` 的结构与联系,梳理了面向对象的设备管理中设备的层次关系,总结归纳了使用 QOM 接口管理设备的一般方法。在下一篇文章中,我们将继续深入,分析 QOM 面向对象特性的底层实现。 阅读全文 0 评论
QEMU 设备模型简析(一):生命周期 2023年08月22日 jjl9807 463 本文从设备的生命周期这一角度入手,介绍了设备类型注册、设备类型初始化、设备实例化等环节的基本原理和执行流程,打通了从设备类型表创建到设备销毁的逻辑链条,在一个较为抽象的层面对 QEMU 设备模型进行了初步分析。下一篇文章中,我们将专题介绍 QEMU 对象模型以及面向对象的设备管理方法。 阅读全文 0 评论
QEMU 事件循环机制简析(三):下半部机制 2023年08月15日 jjl9807 192 本文在前两篇文章的基础上,进一步分析了 QEMU 下半部机制,下半部利用事件循环机制,向其他模块提供异步调用的接口。文章梳理了下半部机制的主要数据结构以及它们之间的关系,介绍了 QEMU 下半部机制的执行原理,同时还整理了常见下半部操作的接口和用法。 阅读全文 0 评论