QEMU理论知识学习1

1、QEMU软件虚拟化实现的思路是采用二进制指令翻译技术,只要是提取guest(target)代码,然后将其翻译成TCG中间大妈,最后将中间代码翻译成HOST指定架构的代码。从宏观上看,源码结构主要包含以下几部分:

/vl.c 最主要的模拟循环,虚拟机环境初始化和CPU的执行

/target-arch/tranlate.c:将guest代码翻译成不通架构的TCG操作码

/tcg/tcg.c:主要的TCG代码

/tcg/arch/tcg-target.c:将TCG代码转化为主机代码。

/cpu-exec.c:主要寻找下一个二进制翻译代码块,如果没有找到就请求得到下一个代码块,并且操作生成的代码块。

 2、dtb文件:

Linux内核不再包含对硬件的描述,对硬件的描述以二进制的形式单独存储。bootloader需要加载两个二进制文件:内核镜像和DTB。内核镜像就是uImage或zImage。dtb文件在arch/arm/boot/dts中,每个开发板都会对应一个dtb文件。

3、bootloader通过r2寄存器来传递DTB地址,通过修改DTB可以修改内存信息,kernel command line等其他信息。

u-boot的内核启动命令为 bootm -

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值