此儲存庫包含安全偵錯管理器 (SDM) 的 API 定義。
SDM 是實現安全調試協定的主機端元件。安全調試的抽象系統架構如下圖所示。
調試客戶端是請求調試存取鎖定目標的進程。通常,這將是開發人員或技術人員使用的 IDE 或獨立偵錯器,但它可以是需要對目標進行偵錯存取的任何類型的工具。調試客戶端使用 SDM 來安全地解鎖調試存取。
SDM API的要求如下:
SDM API 使工具能夠使用單一 API 支援各種安全偵錯實作。鼓勵工具供應商使用此 API 來減輕晶片和軟體提供者及其自身的支援負擔,並為其用戶提供簡單易用的安全調試整合。
目標是讓晶片或軟體供應商以共享庫的形式提供 API 的實現,該實現包含在工具中作為設備支援的一部分。
SDM API 設計為與偵錯架構無關,因此它可以用於 Arm ADI 以外的偵錯架構。但是,API 的給定實作僅支援為其編寫的偵錯架構。此外,目前僅指定了 Arm ADI 的 API。
SDM API 支援任何安全調試協定。為 PSA 驗證調試存取控制 (ADAC) 協定提供了參考實作。作為此參考實作的一部分,還規劃了其他較低層級的 API。這些將定義諸如憑證提供者和調試郵箱介面之類的層。
主要的secure_debug_manager.h
頭檔位於include/
目錄中。
doxygen 設定檔可用於產生 API 文件。
XML 清單檔案將包含在 SDM 共用庫中。包含的xml/example-manifest.xml
檔案是用於實驗目的的範例清單。
清單有幾個目的:
最終將為清單建立一個架構。
API 的整體結構已明確定義,一些細節正在完善中。感謝所有回饋。
PSA ADAC 相關的低階 API 尚未定義。
這些文件受 BSD 3-Clause 許可證的保護。
版權所有 © 2020-2022 Arm 有限公司