问题标签 [qemu]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
security - 白皮书以外的 Virt-ICE 文档
我正在尝试查找有关 Virt-ICE 的信息,这是一种在最近的Black Hat 会议上展示的恶意软件调试器/分析工具。我已阅读白皮书Virt-ICE:用于恶意软件分析的下一代调试器,现在正在寻找更多内容。这听起来很迷人,我很想深入挖掘。
这是我发现的:
c - 下面的宏有什么作用?
在 qemu 源代码中,我有以下名为offsetof
. 谁能告诉我它是做什么的?
它以这种方式使用:
其中 CPUState 是一个结构。
我认为它给出了结构内成员的偏移量,但我不确定。
编辑:是的,我发现了发生了什么。CPUState 的定义里面有一个宏,我错过了,其中包括变量 icount_decr。
arm - 任何适合与 C 链接的开源 ARM7 仿真器?
我有一个开源 Atari 2600 仿真器 (Z26),我想添加对包含嵌入式 ARM 处理器(NXP 21xx 系列)的墨盒的支持。这个想法是模拟 6507,直到它尝试读取或写入一个字节的内存(它将每 841ns 执行一次)。如果 6507 执行写操作,将地址和数据放在 ARM 的一些 I/O 端口上,让 ARM 代码运行 20 个周期,确认 ARM 正在浮动其数据总线,让 ARM 再运行 38 个周期。如果 6507 执行读取,将地址放在 ARM 的 I/O 端口上,让 ARM 运行 38 个周期,从 ARM 的 I/O 端口获取数据(希望 ARM 软件将它放在那里),然后让ARM 再运行 20 个周期。
ARM7 似乎很容易实现。我不需要模拟很多硬件功能。有什么想法吗?
编辑 我想到的是一个例程,它将一个保存机器状态的结构和指向内存访问例程的指针作为参数。当被调用时,该例程将模拟 ARM 的指令引擎,生成适当的读取、写入和代码提取。然后我可以编写内存访问例程,将适当的区域视为闪存(具有大致近似的等待状态)、RAM、I/O 端口和定时器寄存器。其他一些区域将被标记为不关心,并且对任何其他区域的访问将标记错误并停止模拟器。
也许 QEMU 在内部使用了这样的东西。由于 ARM 仿真将被集成到一个已经存在的仿真引擎中(我没有编写也没有完全理解——我修补的 Z26 的唯一部分是内存读/写逻辑)我需要占地面积相当小的东西。
知道 QEMU 内部是如何工作的吗?如果我只在 QEMU 中使用 2% 的代码,是否知道 GPL 许可证需要什么——我是否必须为整个东西捆绑代码,或者只是我使用的部分,还是什么?
android - Android 模拟器声音 - ubuntu
使用 Ubuntu 10.04 64 位进行 Android 开发,一切顺利,除了声音。
我使用了 -audio 选项和 -audio-out 选项,其中 alsa 作为后端参数,但没有运气。
任何想法?
performance - 模拟处理器的(有限)资源,包括时钟速度
我想要一个软件环境,我可以在其中测试我的软件在具有特定资源的硬件上的速度。例如,当我的主机硬件是具有 12GB RAM 的 3GHz 四核 amd64 时,该程序在具有 24Mb RAM 的 800MHz x86 上运行的速度有多快?诸如 qemu 之类的仿真器非常注重与底层硬件“几乎一样快”地运行;我想让它运行得更慢。有没有办法做到这一点?
virtual-machine - 找不到 qemu-kvm 命令
我已经在我的计算机上安装了 kvm,使用:
但是当我尝试运行命令时:
要从 cdrom 引导 ISO 映像,它会给出错误说明“找不到 qemu-kvm 命令”。我错过了安装任何必需的软件包吗?如果没有,缺少什么?
android - 是否可以在 Android 模拟器上获得 root 权限和/或安装 BusyBox?
最好在我的模拟器上安装 BusyBox 的“瑞士军刀”。拥有完全的root访问权限也很好。有没有人有这样做的经验?我不熟悉qemu;这甚至可能吗?
更新:模拟器默认具有 root 权限(通过adb shell
命令访问)。有谁知道我在哪里可以轻松获得预先构建的busybox二进制文件?
android - 为 Android 模拟器创建我自己的磁盘
我需要研究 android 的内部结构,尤其是创建和测试新的内核模块、本机库和本机应用程序。因此,我需要创建自己的 android 磁盘映像以在 android 模拟器上使用。我正在寻找此操作的源代码,其中包含所有工具和构建程序,以便拥有所有标准应用程序的完整映像。有谁知道我在哪里可以找到这个(大多数源代码分发都没有构建文件,或者专用于一个平台)?
networking - QEMU 的来宾操作系统中的网络是如何工作的?
我在理解来宾操作系统(Ubuntu)中的 Qemu 和网络如何工作方面遇到了问题。我已经阅读了本手册和其他内容。如果我理解的话,如果你想在来宾操作系统中连接互联网,你需要在主机操作系统中创建点击接口。然后链接eth0和tap0接口:
- 通过使用 NAT 路由
- 通过使用网桥(链接tap0和eth0-host)
现在我在主机中有这些接口(ppp0 - 3G-modem - Internet,lo):
在阵风操作系统(eth0,lo)中:
互联网在阵风操作系统工作!如果我在真正的 ppp0 和来宾界面之间没有链接,那么来宾操作系统中的工作网络如何以及为什么?我什至没有任何人在主机中为来宾操作系统提供接口。
如果我理解那是因为来宾通过默认主机接口转发数据。但为什么?
Qemu 选项:
主机路由表:
访客路由表: