1
我正在爲ARM寫gdbstub,我有一個問題。我試圖爲我的存根實現觀察點。 GDB爲不同類型的觀察點(讀,寫,訪問)提供了特殊的數據包,但每次我設置一個觀察點時,我都會執行GDB - 單步執行代碼並比較每個步驟的值。它是在GDB文檔中指定的,但爲什麼你需要一個特殊的數據包來編寫觀察點?GDB觀察點實現
顯然,GDB本地實現速度很慢。這個數據包可能需要重新定義實現。例如,當我在addr上設置wp,而不是值時,Z2包真的被髮送。但我不明白GDB應該如何理解「S05」(停止包)是因爲觀察點而發送的。
在斷點處,決定在當前的bp_address
與程序計數器值之間進行比較。
它與觀察點有什麼關係?