GDB觀察點如何工作?是否可以實現類似的功能來在指定位置利用字節級訪問?硬件觀察點 - 它們是如何工作的?
4
A
回答
3
我相信gdb使用MMU,以便包含監視地址範圍的內存頁面被標記爲受保護 - 那麼當發生寫入受保護頁面的異常時,gdb處理異常,檢查是否寫入地址對應於特定的觀察點,然後相應地恢復或下降到gdb命令提示符。
您可以使用mprotect來實現類似於您自己的調試代碼或測試工具的東西,但如果您想做更復雜的事情而不是錯過寫入失敗,則需要實現異常處理程序。
7
This解釋瞭如何在Linux中實現硬件斷點,並給出了有關使用哪些處理器特定功能的詳細信息。
相關問題
- 1. GDB M/I禁用硬件觀察點
- 2. 如何在dbx中設置硬件觀察點?
- 3. 如何讓ReactiveCommands觀察他們自己的IsExecuting可觀察的
- 4. 無法讓Eclipse觀察點工作
- 5. 窗鉤 - 它們是如何工作的?
- 6. Index Buffers,它們是如何工作的?
- 7. Rails的觀察不工作
- 8. 瞭解可觀察性如何工作
- 9. 刪除Linux內核3.0.0中的所有硬件觀察點
- 10. HttpRoutes - 它們是如何工作的?
- 11. OS硬件中斷 - 它是如何工作的?
- 12. 可點擊的下拉菜單 - 它們是如何工作的?
- 13. 節點觀察EPERM何時刪除了觀察文件夾
- 14. 硬件觀察點僅適用於某些內存地址嗎?
- 15. 原型事件觀察者不工作
- 16. Magento 1.6.2事件觀察者不工作
- 17. Firebase,如何觀察作品?
- 18. 什麼是Windows套件,它們是如何工作的?
- 19. 如何觀察性能和清除它們在重裝
- 20. gdb的觀察點
- 21. parallaxscroll觀點是不工作
- 22. 我們如何解除我們不再使用它的觀點?
- 23. 加入不同的節點,立即觀察它們與火力點
- 24. 如果觀點是孩子,它不能正常工作
- 25. Xcode 5.0觀察點「發送gdb觀察點包失敗」錯誤
- 26. C++/CLI預編譯頭文件:它們是如何工作的?
- 27. 觀察點共享對象
- 28. 對觀察員的觀察員觀察員是否會發生任何變化?
- 29. 什麼是Wicket中的ResourceReferences,它們是如何工作的?
- 30. 如何獲取日曆更改事件?日曆觀察員是否工作?
感謝您的信息。有沒有可用的硬件支持。我知道那只是在黑暗中拍攝而已。 – Kapil
MMU(內存管理單元)*是硬件 - 通過將頁面標記爲受保護,您可以在寫入該頁面時獲得異常 - 這就是硬件輔助觀察點的工作原理。如果沒有MMU,您必須在每條指令後暫停並檢查所有觀察點地址範圍 - 這就是軟件觀察點通常在沒有MMU(例如小型嵌入式系統)的系統上工作的方式,而且速度非常慢。 –