00 QEMU源码中文注释与架构讲解
QEMU源码中文注释与架构讲解
先占坑:等后续完善后再更新此文章
注释作者 | 将狼才鲸 |
---|---|
创建日期 | 2025-05-30 |
更新日期 | NULL |
- CSDN阅读地址:00 QEMU源码中文注释与架构讲解
- Gitee源码仓库地址:才鲸嵌入式/qemu
一、前言
- 参考网址
- QEMU 源码目录简介
- qemu学习笔记:QOM
- QEMU虚拟机关键源代码学习
- QEMU源码分析系列(一)
- qemu基本架构
- NULL
- NULL
- NULL
- 《QEMU/KVM源码分析与应用》读书笔记1 —— 第1章 QEMU与KVM概述
二、整体介绍
1、源码文件夹结构与简述
jim@virtual-pc:~/qemu$ tree -a -L 1
.
├── accel # 加速
├── audio # 音频
├── authz
├── backends
├── BAK_README.rst # 原本仓库的readme文件
├── block
├── block.c
├── blockdev.c
├── blockdev-nbd.c
├── blockjob.c
├── bsd-user
├── chardev
├── common-user
├── configs
├── configure
├── contrib
├── COPYING # 开源信息
├── COPYING.LIB # 开源信息相关
├── cpu-common.c
├── cpu-target.c
├── crypto
├── .dir-locals.el
├── disas
├── docs # 技术文档,英文的,而且对新手没什么用
├── docs_中文 # 字节写的一些中文文档
├── dump
├── ebpf
├── .editorconfig
├── event-loop-base.c
├── .exrc
├── fpu
├── fsdev
├── .gdbinit
├── gdbstub
├── gdb-xml
├── .git # git代码管理仓库
├── .gitattributes # git代码管理对比工具配置
├── .git-blame-ignore-revs # git代码管理相关
├── gitdm.config # git代码管理相关
├── .github # git代码管理服务器相关
├── .gitignore # git代码管理忽略的文件信息配置
├── .gitlab # git代码管理服务器相关
├── .gitlab-ci.d # git代码管理服务器自动测试相关
├── .gitlab-ci.yml # git代码管理服务器自动测试相关
├── .gitmodules # git代码管理相关
├── .gitpublish # git代码管理相关
├── hmp-commands.hx
├── hmp-commands-info.hx
├── host
├── hw # 所有支持的硬件设备
├── include # 公用头文件
├── io
├── iothread.c
├── job.c
├── job-qmp.c
├── Kconfig # 源码配置相关
├── Kconfig.host # 源码配置相关
├── libdecnumber
├── LICENSE # 开源信息相关
├── linux-headers
├── linux-user # linux下的用户模式的代码
├── .mailmap
├── MAINTAINERS
├── Makefile # 编译参数相关
├── memory_ldst.c.inc
├── meson.build
├── meson_options.txt
├── migration
├── module-common.c
├── monitor
├── nbd
├── net
├── os-posix.c
├── os-win32.c
├── page-vary-common.c
├── page-vary-target.c
├── .patchew.yml
├── pc-bios
├── plugins
├── po
├── python
├── pythondeps.toml
├── qapi
├── qemu-bridge-helper.c
├── qemu-edid.c
├── qemu-img.c
├── qemu-img-cmds.hx
├── qemu-io.c
├── qemu-io-cmds.c
├── qemu-keymap.c
├── qemu-nbd.c
├── qemu.nsi
├── qemu-options.hx
├── qemu.sasl
├── qga
├── qobject
├── qom
├── readme.md # 本仓库新增的主页说明文件
├── .readthedocs.yml
├── replay
├── replication.c
├── roms
├── scripts # 源码编译相关
├── scsi
├── semihosting
├── stats
├── storage-daemon
├── stubs
├── subprojects
├── system
├── target # QEMU目前所支持guset端的处理器架构,将该guest架构的指令翻译成TCG OP代码,里面的目录占源码总目的很大一部分
├── tcg # 动态翻译工具tcg的源码部分,主要是将TCG OP转化为host binary的部分;也就是俗称的软件加速,而我们一般装Ubuntu这种大系统时需要选KVM、WHPX等硬件加速
├── tests
├── tools
├── trace
├── trace-events
├── .travis.yml
├── ui
├── util
├── VERSION # 开源信息相关
├── version.rc # 开源信息相关
└── .vscode # 编辑器相关60 directories, 61 files
jim@virtual-pc:~/qemu$
三、本仓库内其它主题文章介绍
- Windows10下使用QEMU安装Ubuntu20.04虚拟机,并启用硬件加速