我 在x86 Windows XP Professional机器上有一个2.67 GHz Celeron处理器和1.21 GB RAM .
我的理解是Android模拟器应该在这样的机器上相当快地启动,但对我来说,它不会.我已经按照设置IDE,SDK,JDK等的所有说明进行操作,并且在快速启动模拟器方面取得了一些成功,但这种情况非常罕见.如果可能的话,我怎样才能解决这个问题?
即使它启动并加载主屏幕,它也非常缓慢.我在3.5版(Galileo)和3.4版(Ganymede)中尝试过Eclipse IDE.
我有一些平面文件格式的旧Linux文件系统的旧图像.它们可以被Bochs使用,但我需要使用Virtual Box运行它们.Virtual Box无法使用此格式的图像,因此我需要将这些图像从平面文件转换为.vmdk文件格式.有没有办法做到这一点?
我知道Xen使用QEMU,而KVM是QEMU的分支.
那么,KVM包括Xen增加到QEMU?是什么名字 ?
谢谢
最近,我发现有QEMU项目.我之前使用过VirtualBox,而且我了解Xen和VMWare.
QEMU和VirtualBox有什么区别?我应该坚持使用VirtualBox吗?
在哪些情况下QEMU更好?
在Android开源qemu代码中,我遇到了这行代码:
machine->max_cpus = machine->max_cpus ?: 1; /* Default to UP */
Run Code Online (Sandbox Code Playgroud)
这只是一种令人困惑的说法:
if (machine->max_cpus) {
; //do nothing
} else {
machine->max_cpus = 1;
}
Run Code Online (Sandbox Code Playgroud)
如果是这样,那就不会更清楚了:
if (machine->max_cpus == 0) machine->max_cpus = 1;
Run Code Online (Sandbox Code Playgroud)
有趣的是,这可以编译并与gcc一起使用,但不能在http://www.comeaucomputing.com/tryitout/上编译.
我是内核开发的新手,我想知道如何使用QEMU和gdb运行/调试linux内核.我实际上正在阅读Robert Love的书,但遗憾的是它无法帮助读者如何安装适当的工具来运行或调试内核......所以我所做的就是按照本教程http://opensourceforu.efytimes.com/2011/02/kernel-development-debugging-using-eclipse /.我正在使用eclipse作为IDE在内核上开发,但我想首先让它在QEMU/gdb下运行.所以我到目前为止所做的是:
1)用以下代码编译内核:
make defconfig (then setting the CONFIG_DEBUG_INFO=y in the .config)
make -j4
Run Code Online (Sandbox Code Playgroud)
2)编译完成后,我使用以下命令运行Qemu:
qemu-system-x86_64 -s -S /dev/zero -kernel /arch/x86/boot/bzImage
Run Code Online (Sandbox Code Playgroud)
它以"停止"状态启动内核
3)因此我必须使用gdb,我尝试以下命令:
gdb ./vmlinux
Run Code Online (Sandbox Code Playgroud)
正确运行但是...现在我不知道该怎么办...我知道我必须在端口1234(Qemu使用的默认端口)上使用远程调试,使用vmlinux作为符号表文件调试.
所以我的问题是:我应该怎样做才能在Qemu上运行内核,将调试器附加到它上面,从而使它们协同工作,使内核开发更轻松.
将"-curses"选项传递给qemu时,qemu会将模拟窗口显示为默认值.那么,如何从仿真窗口切换到监视器控制台?如果使用图形界面,可以通过"ctrl + alt +(1或2)"实现仿真窗口和监视器控制台之间的切换.我只是不确定如何在非图形化的情况下这样做.
我阅读了许多其他主题,Android模拟器启动的速度非常慢.实际上,开始需要+15分钟.但是,即使在那之后,我的机器也很慢.
"手机"响应延迟3-4秒,一切都有很大的延迟.
是否有任何方法可以改善我的笔记本电脑(华硕1201N)的性能对于Android模拟器来说太生疏了?
PS:尝试不同的模拟器分辨率,结果是一样的
编辑:我的笔记本电脑有2个内核和HyperThreading.它在设备管理器中显示为4个CPU.但是,使用模拟器时,其中一个图形为100%.我可以做些什么让它工作多核吗?
对于自动化测试(使用Hudson),我有一个脚本,可以为Android OS版本,屏幕分辨率,屏幕密度和语言的许多组合生成一堆模拟器.
这种方法很好,除了语言部分.
我需要找到一种自动更改Android系统区域设置的方法.以下是我能想到的一些方法,按优先顺序排列:
是否可以通过上述方法或其他方式完成任何想法?
您知道系统持久存储/读取区域设置的位置吗?
解决方案:
感谢dtmilano关于相关属性的信息,以及我的一些进一步调查,我提出了一个比上述所有想法更好更简单的解决方案!
我已经在下面更新了他的答案和详细信息.
我正在为Cortex-M3 cpu编写代码,我正在使用qemu-arm二进制执行单元测试.现在一切正常.但我想知道如果我能够测试整个系统使用qemu-system-arm?我的意思是,我想为qemu编写自定义"机器",我将在其中定义所需的内存映射,最后一些软件模仿所需的外设,是否有这样的模块的一些例子?我发现这方面的信息很少.我已经hw在qemu源代码树的目录中读了一些源代码,但它几乎都没有注释,我仍然不确定我是否理解如何将新机器添加到qemu以及如何将外围设备附加到地址空间?
qemu ×10
android ×3
xen ×2
arm ×1
c ×1
cortex-m ×1
gcc ×1
gdb ×1
genymotion ×1
image ×1
kvm ×1
linux ×1
linux-kernel ×1
performance ×1
virtualbox ×1
vmware ×1
windows ×1