2

我正在考虑在 vmware VM 下进行一些 Linux 内核和设备驱动程序开发以进行测试(Ubuntu 9.04 作为 vmware server 2.0 下的来宾),同时在 Ubuntu 8.04 主机上进行编译。

我不想承受在 VM 下进行编译的性能损失。

我知道内核显然没有链接到它自身之外的任何东西,所以在这方面不应该有任何问题,但是

  1. 这样做时我需要注意什么特别的问题吗?
  2. 除了在内核崩溃时仍然有一台正在运行的计算机之外,此设置还有其他好处吗?
  3. 是否有使用这种设置的指南?

编辑

我已经看到很多关于在 VMware 中通过 Workstation 6.0 在主机上使用 GDB 进行远程调试的参考资料。有谁知道这是否适用于任何免费版本的 VMWare,例如 Server 2.0。

4

2 回答 2

2

我不确定ubuntu的事情。鉴于您没有进行真正的交叉编译(即 x86->arm),我会考虑使用 make-kpkg 包。这应该会为您的系统生成一个带有内核的可安装 .deb 存档。这在 debian 上对我有用,在 ubuntu 上可能对你有用。

更多关于 make-kpkg: http: //www.debianhelp.co.uk/kernel2.6.htm

  1. 我不知道有任何问题。但基本上这取决于您正在使用哪种内核部分。您需要的硬件/驱动程序越特殊,VM 就越有可能无法为您工作。

  2. 可能是更快的靴子,我最喜欢的是可以截取恐慌信息的屏幕截图(cut'n'paste)。

  3. 尝试浏览到 vmware 社区。这个线程看起来很有希望,虽然它讨论了 MacOS 的主题:http: //communities.vmware.com/thread/185781

于 2009-06-16T13:49:10.673 回答
0

无论如何编译,编辑,编译都很快,每次修改驱动程序时都不会重新编译整个内核。

在崩溃之前,您可能会遇到死锁、资源使用不当导致模块无法删除、内存泄漏等......即使您的机器没有崩溃也需要重新启动的所有类型的事情,所以是的,这可能是一个好主意。

陷阱可以以安装步骤和模块依赖生成的形式出现,因为您不想在主机中安装驱动程序,而是在目标机器中。

于 2009-06-16T13:49:40.500 回答