[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] the mechanism of memory manpping of qemu
From: |
yuanzhu86 |
Subject: |
[Qemu-devel] the mechanism of memory manpping of qemu |
Date: |
Thu, 24 Sep 2009 16:33:54 +0800 (CST) |
Recently,I attempt to analyze the source code of qemu to learn the virtualization mechanism , and from begining as fuction of main() of vl.c ,
firstly ,I try to understand how dose the Dynamic Binary Translation of qemu work ,and also how dose the qemu manage the memory used to map the virtual adress to the real ?
this is my train of thought :
int main(int argc, char **argv, char **envp)
{
--------
-------
/* init the dynamic translator */
cpu_exec_init_all(tb_size * 1024 * 1024);
---------
main_loop();// and than I look for this fuction
------
}
static int main_loop(void)
{
------
CPUState *env;
ret = cpu_exec(env);
-----
}
as we can see, I pick out two fuction :
cpu_exec_init_all and cpu_exec ,
the first one come from exec.c and the second one comes from
cpu-exec.c ,
and exec.c used to memory mapping ? do the other files used for it ?
and there is a file named mmap.c , shall i need to analysis it meantimely?
than the cpu-exec.c used to implement of the already translated basic block binary ,so now that, may i need to analysis these two files at first?
it is so difficult for me to do this work ,I want to understand the
Dynamic Binary Translation and the Memory virtual of qemu ,but until now ,I still have no good thought ,
hope somebody give a hand ,or share some good experience ,and very pleasure if there has good reference material to share.
thanks very much .
"中国制造",讲述中国60年往事
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] the mechanism of memory manpping of qemu,
yuanzhu86 <=