![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
QEMU
跟包叔一起学习
辗转很久,还是写写博客吧。
展开
-
QEMU 源码目录简介
最近在研究QEMU,读了一些QEMU的源码,因为涉及的东西比较多,找到的资料又都比较破碎,不太完整。所以将最近的成果总结一下。相比其他的开源软件来说,QEMU源码下面目录比较多,下面就先把这些目录的内容大致整理一下。docs/ 包含了一些文档,说实话,对初学者来说,读这些文档压根没有头绪hw/ 包含了所有支持的硬件设备include/ 包含了一些头文件linux-user/ 包含了linu原创 2014-01-06 10:16:53 · 3588 阅读 · 0 评论 -
Qemu 中的tracing的实用
QEME是模拟处理器的自由软件,可以实现虚拟机,Android的虚拟机就是使用QEMU实现的。QEMU中有一个trace模块,可以对于一些函数进行跟踪,例如qemu_malloc, qemu_free等,对于QEMU本身的调试很用帮助。下面就介绍一些如何使用。1,在configure的时候加入 --enable-trace-backend=simple 选项,其中trace的方式有几种,这里使用s原创 2014-01-06 10:16:55 · 2296 阅读 · 2 评论 -
使用 QEMU 模拟 ARM
使用 Ubuntu 10.10 首先要編譯執行 ARM 程式的 QEMU,第一步是先設定環境。 sudo apt-get build-dep qemu 取得 QEMU 模擬器原始碼 wget http://wiki.qemu.org/download/qemu-0.13.0.tar.gz 解壓縮 tar zxvf qemu-0.13.0.tar.gz 然後就可以進行編譯了 cd qemu-0.1原创 2014-01-06 10:16:21 · 970 阅读 · 0 评论 -
QEMU内核探秘
最近在研究QEMU 从网上发现有人把QEMU作者的那篇原文翻译过来了,所以我也就贴出来方便大家阅读。本文译自Fabrice Bellard大神的文章《QEMU, a Fast and Portable Dynamic Translator》,如有翻译不当之处,请斧正。摘要在本文中,我们将展示QEMU的内部机制。QEMU是一个快速的机器模拟器,它使用了独创的可移植动态翻译器。QEMU可以在若干种宿主原创 2014-01-06 10:16:00 · 1068 阅读 · 0 评论 -
虚拟机qemu的使用
#qemu-img create windows.img 2G #这个就是创建虚拟机磁盘,2G大小#qemu -hda windows.img -cdrom /dev/acd0 -boot d -m 512 -enable-audio -localtime-hda 是指定硬盘-cdrom 指定使用光驱,这个参数后面必须要跟个文件名,可以是物理光驱/dev/hda,可以使用ISO文件,为文件的路径-原创 2014-01-06 10:15:56 · 1335 阅读 · 0 评论 -
QEMU执行流程
之前读了一些QEMU的源码,跟踪了一下QEMU的执行流程,记录下来了,现在将流程记录如下:main()[vl.c] --> cpu_signal()[cpus.c] --> cpu_exit()[exec.c] -->tb_reset_jump() --> tb_se_jmp_target()[exec-all.h]-->tb_reset_jump_recursive()[exec.c] -->c原创 2014-01-06 10:17:46 · 1519 阅读 · 0 评论 -
利用qemu进行内核源码级调试
概要:看kernel代码的时候,变量多了,就记不清楚了,尤其是读内存部分代码的时候,传来传去,常常不知道改成什么样子了,内存布局到底变成什么了,也许是我记忆力太不行了,利用qemu可以在线调试内核,如同你用gdb调试app一样,断点,打印变量值等等,qemu算是个模拟器吧,说虚拟机也可以,虽然bug很多,但是还不失为一个好工具,如果对qemu陌生,那android的模拟器相信大家都很熟悉了吧原创 2014-01-06 10:16:50 · 778 阅读 · 0 评论 -
Administrating Virtual Machines with QEMU Monitor
Chapter 14. Administrating Virtual Machines with QEMU Monitor?Contents14.1. Accessing Monitor Console14.2. Getting Information about the Guest System14.3. Changing VNC Password14.4. Managing Devices14原创 2014-01-06 10:16:57 · 930 阅读 · 0 评论 -
修改 QEMU 源代码,实现 -title 选项
修改 QEMU 源代码,实现 -title 选项在使用 QEMU 时,每台虚拟机窗口的标题栏都是“QEMU”。假设打开的虚拟机非常多,那么辨别哪个窗口属于哪台虚拟机就会变得很麻烦。如果能给 qemu 添加一个 -title 选项,以它的参数来控制每个窗口的标题栏,会大大节省我们的精力。以当前最新的 qemu-0.8.2 为例,修改其实非常简单。所涉及的只有 vl.c 和 sdl.c 两个文件。其中原创 2014-01-06 10:16:48 · 1955 阅读 · 0 评论 -
为QEMU添加新的QMP命令
QMP命令由结构mon_cmd_t定义,该结构在monitor.c的开头被定义。注意查看它的成员以及该结构上面的注释。为了添加新的QMP命令,需要修改qemu-monitor.hx注意查看最开始的说明:DEFHEADING()用于在helptext和texi中增加标题头处于STEXI和ETEXI之间的内容会被拷贝到texi版本中,但不会出现在C版本中处于SQMP原创 2014-01-06 10:17:07 · 1146 阅读 · 0 评论