🛠️ NuttX调试 & GDB实战 30章

🎯 风格 · 紧凑目录
01 课程导论 为什么需要调试NuttX?调试工具全景概览 02 GDB基础回顾 GDB的启动与退出、断点管理、单步调试 03 NuttX编译与调试环境搭建 工具链选择、OpenOCD配置、JLink/GDB Server 04 NuttX内存布局分析 链接脚本解读、RAM/Flash分区、堆栈地址计算 05 GDB调试NuttX内核 加载符号表、调试内核启动流程、分析任务切换 06 调试NuttX任务与线程 查看任务列表、切换上下文、分析栈回溯 07 调试中断与异常 注册中断向量、断点触发中断、分析异常栈帧 08 调试设备驱动 GPIO、UART、SPI驱动调试实战 09 调试文件系统 挂载点检查、文件操作跟踪、缓冲区分析 10 调试网络协议栈 NuttX TCP/IP栈调试、socket断点、数据包分析 11 调试内存管理 malloc/free跟踪、内存泄漏检测、堆碎片分析 12 调试信号量与互斥锁 死锁检测、优先级反转、信号量状态查看 13 调试消息队列 消息收发跟踪、队列溢出分析 14 调试工作队列 工作项调度、延迟执行、优先级问题 15 调试定时器 系统滴答、软件定时器、超时处理 16 调试动态加载模块 ELF加载器、符号解析、模块断点 17 调试系统调用 系统调用入口、参数检查、返回值跟踪 18 调试电源管理 休眠唤醒流程、时钟门控、功耗分析 19 调试SMP多核 CPU亲和性、核间通信、锁竞争 20 调试MPU/MMU 内存保护、页错误分析、权限检查 21 调试C++异常与RTTI NuttX中的C++支持、异常处理、类型信息 22 调试汇编代码 启动汇编、中断向量表、上下文切换汇编 23 GDB脚本自动化 Python GDB脚本、批量断点、自动化测试 24 GDB与Trace工具结合 systrace、ftrace、perf 25 GDB与Core Dump 生成与分析coredump、事后调试 26 GDB与JTAG/SWD调试 硬件调试器使用、JTAG链配置、SWD时序 27 GDB与QEMU模拟器 QEMU调试NuttX、网络仿真、外设模拟 28 GDB与IDE集成 VS Code、Eclipse、CLion调试配置 29 常见调试问题与解决方案 HardFault分析、栈溢出、野指针 30 综合实战 调试一个完整的NuttX应用(从启动到崩溃分析)