我想在Windows上使用Visual Studio檢查Linux內核源代碼。但我不知道該怎麼做。我是否需要虛擬機來運行或調試內核,或者有什麼特別的方法可以讓我做到這一點?Windows中的Linux內核檢查
回答
「核心考試」對您意味着什麼?
爲什麼不能更簡單地學習Linux內核的源代碼?
這是free software,你不能從kernel.org
獲取其源代碼,這是極有可能的是你的Linux供應商公佈了兩種Linux內核的變種的源代碼,或對香草內核源代碼補丁。 Linux內核的GPLv2許可證幾乎需要這樣的行爲。
而且Linux系統爲您提供了很多工具(objdump
,....)來研究ELF可執行映像(如Linux內核主要就是....)
你可能不會能夠用Visual Studio編譯Linux內核。你需要GCC(或者一個非常兼容的編譯器)。 Linux源代碼使用許多GCC擴展。
我的建議是在你的開發機器上安裝一個Linux系統(如果你想保持Windows的遊戲,你可以進行雙啓動......)並學習它並使用Linux工具(包括emacs
,grep
,etags
等....)研究Linux的源代碼。請記住,Linux是構建在Linux內核的首選平臺...(如果您的分佈的Debian或Ubuntu或類似的,瞭解make-kpkg
)
也瞭解Advanced Linux Programming以及有關Linux內核的一些好書(有很多)。
順便說一句,你甚至可以定製你的GCC編譯器,例如使用插件或MELT擴展來測量,搜索甚至重構內核的源代碼。另請參閱cocinelle。
我絕對推薦爲內核開發設置一個Linux安裝(或至少一些* nix的變體)。你會發現在Windows上的內核開發是一個主要的難題。 – tangrs 2013-05-10 11:12:58
- 1. 在linux內核中檢查user = root?
- 2. linux內核模塊內存檢查器
- 3. 從Linux調試Windows內核
- 4. Linux makefile檢查所需的最小Linux內核版本
- 5. 查找linux內核中CPU的數量
- 6. Linux內核udp查找
- 7. Linux內核模塊檢查內存的完整性
- 8. 如何檢查Linux內核中的目錄是否爲空?
- 9. 在linux內核(內核空間)中檢索會話Id
- 10. Linux內核 - 中斷
- 11. 在Linux內核中
- 12. 檢查Linux內核中斷在暫停後恢復系統
- 13. linux內核的中斷
- 14. 剝離Linux中的內核?
- 15. linux內核的config.h
- 16. Linux內核的list.h
- 17. Linux內核add_timer
- 18. Linux內核和我的內核模塊
- 19. Linux內核多核問題
- 20. Linux內核中的內存損壞
- 21. Linux內核中的堆棧內存
- 22. Linux內核中的內存保護
- 23. linux內核如何檢查sticky位是否設置
- 24. linux內核檢查,如果進程仍在運行
- 25. 我該如何檢查Linux內核編譯器優化級別
- 26. 檢查Linux內核模塊是否正在運行
- 27. Linux內核 - 檢查是否有文件描述符
- 28. 如何檢查內核是否爲android或linux?
- 29. linux內核中斷劫持
- 30. 在Linux內核中搶佔
@Niels:你爲什麼刪除海報的名字?對於原始海報:請編輯您的個人資料以顯示您的姓名等(如網頁)。 – 2013-05-10 10:42:54
@BasileStarynkevitch看到[關於感謝,標語和問候政策](http://meta.stackexchange.com/questions/2950/should-hi-thanks-taglines-and-salutations-be-removed-from-posts) – 2013-05-10 10:47:54