有沒有任何有關通過內核可加載模塊向FreeBSD添加系統調用的入門級教程?具體來說,所需的方法形式,從流程中獲取信息等。在FreeBSD中通過KLD創建新的系統調用
5
A
回答
10
我很高興看到你的教授給你這樣的實踐任務。我希望我有這樣的教授。
無論如何,事情是當你在內核域工作,你可以難找到任何資源。在內核領域工作的人不記錄東西或編寫教程。所以,它很難找到任何「入門級」文檔。另外,即使你找到任何這樣的教程,內核中的東西也會不斷變化,文檔也不會被更新。當我開始學習時,我必須通過閱讀內核代碼來學習東西。
另一個重要的事情是Linux比任何UNIX都有更多的文檔記錄。有時你可以閱讀Linux的東西並將這些知識移植到UNIX上。抱怨夠了。現在這裏是可能幫助你的資源。
BSD UNIX:
- Dynamic Kernel Linker (KLD) Facility Programming Tutorial有「KLD系統調用實現框架」
- Designing BSD Rootkits: An Introduction to Kernel Hacking此教您使用另一種方法Runtime kernel patching(一般木馬使用此方法)給系統打補丁呼叫調度員並創建系統調用。
的Linux:
- Adding A System Call to Linux Kernel:一個教程一步一步
- Kernel command using Linux system calls:探索Linux系統調用接口(SCI),學習如何添加新的系統調用(和替代做所以)
相關問題
- 1. FreeBSD從另一個系統調用發出系統調用
- 2. FreeBSD-11.0-RELEASE-amd64中簡單的新系統調用
- 3. 在FreeBSD-11.0-RELEASE-amd64上添加一個新的系統調用
- 4. 在FreeBSD 10.1上添加新的系統調用
- 5. 在Linux中創建系統調用
- 6. 通過wordpress創建登錄系統
- 7. 通過delphi系統創建進程
- 8. Android:通過AOSP源代碼創建新的系統權限。
- 9. freebsd通過編譯內核來添加自定義系統調用?
- 10. 我在Rails中創建通知系統
- 11. POSIX:管道系統調用在FreeBSD的VS的Linux
- 12. 通過的ptrace系統調用
- 13. 如何從源代碼跟蹤FreeBSD中的系統調用?
- 14. 在沒有kldload的情況下向FreeBSD添加系統調用
- 15. 如何在FreeBSD系統中增加MAX_PATH_LENGTH?
- 16. 在Minix中調用系統調用時是否創建新進程?
- 17. 如何通過功能ID不使用系統調用調用新添加的系統調用(__ NR_mysyscall)
- 18. linux系統中使用的for_each_zone在新系統調用中調用
- 19. UFS2文件系統 - freebsd
- 20. Linux:通過ptrace()執行系統調用()
- 21. 通過Windows上的MINGW32在Python中進行系統調用
- 22. 通過系統調用在ruby中嵌套超時的問題
- 23. 向FreeBSD內核添加一個帶參數的系統調用
- 24. 通過賽靈思XPS創建的系統報告系統報告
- 25. 創建%系統
- 26. 使用JSCH在支持SSH的系統中創建新文件
- 27. 創建一個新的Freebsd端口
- 28. 如何在Java中通過Android創建新聯繫人?
- 29. 如何通過瀏覽器在php中執行系統調用?
- 30. 通過名稱調用系統調用的麻煩
我應該注意到,這不是一項家庭作業本身,而是作業的一部分。 :) – dckrooney 2010-10-09 03:53:47
我只是好奇。什麼是完整的任務? – claws 2010-10-09 05:18:29
完成分配涉及創建單獨的進程調度算法。 – dckrooney 2010-10-09 06:12:55