在 Virtual Box 中调试来宾操作系统的工具

问题描述 投票:0回答:3

我只是交叉发布了我在 virtualbox.org 上提出的相同问题。 http://forums.virtualbox.org/viewtopic.php?f=9&t=26702&p=119139#p119139

如果不违反任何规则,我很乐意了解更多相关信息,因为 stackoverflow 承诺会更加动态!

“嗨, 我做了一些搜索,但找不到任何工具可以从虚拟盒中的早期启动中调试来宾系统。尽管如此,我遇到了 JCP,一个 java 中的 x86 模拟器,它不是那么强大和漂亮,但有一个调试模式,可以在其中查看物理内存、CPU 寄存器以及其他东西。它还可以逐步执行CPU指令并设置断点、观察点和条件点。 Virtual Box里有这种东西吗?

我认为拥有它并能够在系统运行时检查系统会很棒。用于了解 PC 架构或作为开发内核的工具。

如果你认为这是个好主意(我认为是),它如何实现?我对开发此类东西很感兴趣,并且想知道如果尚未在某处实施的话是否可行。”

EDT:现代 x86 是否能够在一个 cpu 周期后中断其执行,并将执行地址传递给另一个代码来执行此操作?是的,可以设置陷阱标志以使处理器进入逐步执行模式。 x86 将执行一条指令并调用 INT 3。

debugging assembly kernel emulation virtualbox
3个回答
12
投票

与上述相反,VirtualBox 现在包含一个(有限的)调试器。启动虚拟机时在命令行中添加

--dbg
。欲了解更多信息,请咨询:

12.1.3。内置VM调试器



0
投票
在 VirtualBox 中调试来宾操作系统的工具 根据您正在处理的问题类型,可以使用多种工具和技术来调试 VirtualBox 中的来宾操作系统。以下是一些有效的方法:

VirtualBox 调试器 VirtualBox 包含一个可以使用命令行工具启用的集成调试器。启动调试器:

使用 --startvm 和 --dbg 标志从命令行启动 VirtualBox。 使用帮助或信息寄存器等命令来检查虚拟机的状态。 VirtualBox 日志文件 VirtualBox 为每个虚拟机创建详细的日志文件。您可以在 Logs/VBox.log 下的 VM 文件夹中找到这些日志。分析这些文件是否有错误或警告。

GDB(GNU 调试器)集成 您可以将 GDB 连接到 VirtualBox 进程来调试更复杂的问题。通过 VBoxManage debugvm 等命令使用 VirtualBox 的远程调试功能。

用于调试的串行端口

在虚拟机设置中启用虚拟串行端口并将其配置为输出到文件或管道。 使用它进行内核调试或捕获来自来宾操作系统的错误输出。 来宾操作系统工具

在虚拟机中安装 Guest Additions。它提供了增强的调试选项和更好的集成来诊断问题。 使用特定于操作系统的内置调试工具,例如 Linux 上的 dmesg 或 Windows 上的事件查看器。 第三方调试工具

用于网络级调试的 Wireshark 等工具。 用于分析虚拟磁盘损坏的磁盘实用程序。

© www.soinside.com 2019 - 2024. All rights reserved.