2009-06-16 58 views
2

我正在考慮在Ubuntu 8.04主機上進行編譯時,在vmware虛擬機下進行一些Linux內核和設備驅動程序開發以用於測試(在vmware server 2.0下作爲guest虛擬機使用Ubuntu 9.04)。交叉編譯Linux內核並通過VMware進行調試

我不想在虛擬機下執行編譯的性能。

我知道內核顯然不鏈接到任何外部的本身所以不應該有這方面的任何問題,但

  1. 有沒有什麼特殊的疑難雜症的,我需要注意這樣做時,這個?
  2. 除了內核崩潰之外,還有一臺正在運行的計算機,對此設置是否還有其他好處?
  3. 有沒有使用這種設置的指南?

編輯

我已經看到了在VMware虛擬機遠程調試通過工作站6.0主機上使用GDB多次提到。有誰知道這是否適用於任何免費版本的VMWare,如Server 2.0。

+0

關於調試那裏有許多頁面描述使用gdb來調試,如果你在調試模式下運行kvm。你使用vmware而不是kvm的原因是什麼? – stsquad 2009-06-16 22:08:25

回答

2

我不確定ubuntu的東西。鑑於您沒有進行真正的交叉編譯(即x86-> arm),我會考慮使用make-kpkg軟件包。這應該爲您的系統生成一個可安裝的.deb 內核檔案。這將在Debian上適用於我,它可能適用於您在Ubuntu上的 。

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

  1. 我不知道任何陷阱的。但基本上,這取決於你使用哪種內核部分。您需要的硬件/驅動程序越特殊,虛擬機越不可能爲您工作。

  2. 可能更快的靴子,我最喜歡的是可能採取屏幕截圖(cut'n'paste)的恐慌消息。

  3. 嘗試瀏覽到vmware社區。這個主題看起來非常有前途,但它兼談爲MacOS 話題: http://communities.vmware.com/thread/185781

0

編譯,編輯,編譯是相當快的,無論如何,你不要每次修改驅動程序重新編譯時你整個內核。

在崩潰之前,您可能會遇到死鎖,資源使用不當,導致無法移除的模塊,內存泄漏等......即使機器沒有崩潰也需要重新啓動的所有類型的東西,所以可以一個好主意。

由於您不想將驅動程序安裝在主機中,而是安裝在目標機器上,因此可能會出現安裝步驟和模塊依賴性生成的問題。