创建仓库

This commit is contained in:
2025-12-11 07:24:36 +08:00
commit 0d81c1792d
128 changed files with 15104 additions and 0 deletions

View File

@@ -0,0 +1,55 @@
---
tags: []
aliases:
- 1.6.1 异构调试与内存安全 (Heterogeneous Debugging & Memory Safety)
date created: 星期三, 十一月 19日 2025, 8:31:15 晚上
date modified: 星期三, 十一月 19日 2025, 8:31:38 晚上
---
# 1.6.1 异构调试与内存安全 (Heterogeneous Debugging & Memory Safety)
**审计综述**
系统在调试层面具备极高的能力Host 端 GDB 基础稳固Device 端拥有专用调试器。然而ASAN 库的安装路径不标准,需要手动配置系统链接器以启用。
**1. GDB 调试前端 (GDB Debugging Frontend)**
- **关键性****P0**
- **信息解析**
- **版本与支持**GDB 版本为 **9.2** (Kylin 定制版),且 **Python 接口已激活**
- **价值**Python 接口是 VSCode / CLion 等 IDE 实现高级断点、复杂结构体可视化以及 GDB 脚本扩展的必要条件。
- **探测依据**
```bash
gdb --version
GNU gdb (GDB) KylinOS 9.2-3…
gdb -q -ex 'pi print(…)' -ex quit
Python support is active
```
**2. 异构调试工具链 (Heterogeneous Debugger Tools)**
- **关键性****P0**
- **信息解析**
- **专用调试器****ixgdb** (Iluvatar GDB) 存在。这是用于 GPU Kernel 级断点调试的专用工具,等同于 NVIDIA 的 `cuda-gdb`。
- **远程支持**`gdbserver` 存在。可用于在远程开发机器(如 Windows/MacOS上通过 VSCode/SSH 附件到 Kylin 服务器上的进程进行调试。
- **探测依据**
```bash
ls -l /usr/local/corex/bin/*gdb*
/usr/local/corex/bin/ixgdb
/usr/local/corex/bin/gdbserver
```
**3. 内存安全检测工具 (Memory Safety Checkers)**
- **关键性****P1**
- **信息解析**
- **Valgrind****v3.13.0** 已安装,可用于 Host 端代码的内存泄漏和越界访问检测。
- **ASAN (Address Sanitizer)**:库文件 `libasan.so` **已安装**在 GCC 7.3 的私有路径 (`/usr/lib/gcc/…`)。
- **风险与修正**ASAN 库默认对系统链接器不可见。已通过创建 `/etc/ld.so.conf.d/gcc7-asan.conf` 文件并执行 `ldconfig` 解决了此路径问题。
- **探测依据**
```bash
which valgrind && valgrind --version
/usr/bin/valgrind valgrind-3.13.0
```