2013-05-10 45 views
0

我想在Windows上使用Visual Studio檢查Linux內核源代碼。但我不知道該怎麼做。我是否需要虛擬機來運行或調試內核,或者有什麼特別的方法可以讓我做到這一點?Windows中的Linux內核檢查

+0

@Niels:你爲什麼刪除海報的名字?對於原始海報:請編輯您的個人資料以顯示您的姓名等(如網頁)。 – 2013-05-10 10:42:54

+0

@BasileStarynkevitch看到[關於感謝,標語和問候政策](http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be-removed-from-posts) – 2013-05-10 10:47:54

回答

1

「核心考試」對您意味着什麼?

爲什麼不能更簡單地學習Linux內核的源代碼?

這是free software,你不能從kernel.org

獲取其源代碼,這是極有可能的是你的Linux供應商公佈了兩種Linux內核的變種的源代碼,或對香草內核源代碼補丁。 Linux內核的GPLv2許可證幾乎需要這樣的行爲。

而且Linux系統爲您提供了很多工具(objdump,....)來研究ELF可執行映像(如Linux內核主要就是....)

你可能不會能夠用Visual Studio編譯Linux內核。你需要GCC(或者一個非常兼容的編譯器)。 Linux源代碼使用許多GCC擴展。

我的建議是在你的開發機器上安裝一個Linux系統(如果你想保持Windows的遊戲,你可以進行雙啓動......)並學習它並使用Linux工具(包括emacsgrepetags等....)研究Linux的源代碼。請記住,Linux是構建在Linux內核的首選平臺...(如果您的分佈的Debian或Ubuntu或類似的,瞭解make-kpkg

也瞭解Advanced Linux Programming以及有關Linux內核的一些好書(有很多)。

順便說一句,你甚至可以定製你的GCC編譯器,例如使用插件或MELT擴展來測量,搜索甚至重構內核的源代碼。另請參閱cocinelle

+0

我絕對推薦爲內核開發設置一個Linux安裝(或至少一些* nix的變體)。你會發現在Windows上的內核開發是一個主要的難題。 – tangrs 2013-05-10 11:12:58