自 2025 年 3 月 27 日起,我们建议您使用 android-latest-release
而非 aosp-main
构建 AOSP 并为其做出贡献。如需了解详情,请参阅 AOSP 的变更。
调试功能
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
Linux 内核提供了许多诊断问题的机制,包括跟踪、BPF 和性能分析。其中的大多数技术在通用内核映像 (GKI) 二进制内核中都有提供。在开发产品时,开发或集成流程中集成了更多的工具,其中一些工具需要用到 GKI 中没有的内核功能。与大多数 GKI 功能一样,我们建议您与上游维护者合作来将这些功能添加到 Linux 中。
供应商模块中的下游调试功能
调试功能的作用范围与其他类型的功能类似,并且必须遵循 Android 专用补丁中所述的相同流程。
下游调试功能带来的干扰
一些有用的调试功能需要一些特殊的配置选项,而这些选项在 GKI 中已停用,因此需要特殊的内核 build。这些选项可能是因为影响性能或不适合在生产环境中使用而被停用,但对于调试特定类型的问题却必不可少。此类工具的示例包括排错程序(KASAN、UBSAN)、debugfs
和其他合作伙伴专用功能和工具。
如何管理影响内核模块接口 (KMI) 的启用调试功能的特殊内核由您自己决定。常见做法是创建一个内部调试 build,并将生成的工件提供给内部客户或下游开发合作伙伴。我们建议继续将此类功能隔离在模块中,因为不能将合作伙伴专用调试功能纳入到 GKI 内核中,这不符合 Android 专用补丁中所述的准则。
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-03-26。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-03-26。"],[],[]]