首页
›
射频微波与通信硬件
›
033-软件无线电调试排查
›
《GNU Radio自定义模块崩溃与日志定位方法》
VIP20
本课程属于:033-软件无线电调试排查
射频微波与通信硬件 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
📘
GNU Radio自定义模块崩溃与日志定位方法
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导入
学习目标 · 适用人群 · 课程整体框架与学习方法
课程导入
学习目标
02
GNU Radio基础回顾
信号处理流程 · 模块(Block)类型 · 运行时架构与调度机制
GNU
Radio
03
自定义模块开发入门
OOT模块创建流程 · Python与C++模块的基本结构
自定义模块开发入…
OOT
04
崩溃问题概述
常见崩溃类型(段错误 · 空指针 · 内存越界
崩溃问题概述
常见崩溃类型
05
日志系统基础
GNU Radio日志框架(GR_L… · d_logger · d_debug_logger)的使用…
日志系统基础
GNU
06
日志级别与输出控制
DEBUG · INFO · WARN
日志级别
输出控制
07
日志输出目标
控制台 · 文件 · syslog的配置方式与适用场景
日志输出目标
控制台
08
自定义模块中的日志添加
在work()函数 · 构造函数 · 析构函数中正确添加日志
自定义模块
日志添加
09
崩溃前的日志线索
如何通过日志定位崩溃发生的模块 · 函数与输入数据状态
崩溃前的日志线索
如何通过日志定位…
10
使用gdb定位崩溃
编译调试符号 · 启动gdb · 获取backtrace与核心转储
gdb
使用
11
核心转储(core dump)分析
开启core dump · 使用gdb分析core文件 · 提取崩溃现场
core
dump
12
常见崩溃原因分析
空指针解引用 · 缓冲区溢出 · 未初始化变量
常见崩溃原因分析
空指针解引用
13
Python模块崩溃定位
Python异常捕获 · traceback分析 · 与C++交互时的崩溃点
Python
模块崩溃定位
14
C++模块崩溃定位
使用断言 · 异常处理 · RAII与智能指针减少崩溃
C++
模块崩溃定位
15
日志与调试结合
在关键路径添加详细日志 · 配合gdb断点进行逐步定位
日志
调试结合
16
使用Valgrind检测内存问题
内存泄漏 · 非法读写 · 未初始化内存的检测方法
Valgrind
使用
17
使用AddressSanitizer(ASan)
编译选项 · 运行配置 · 错误报告解读
AddressSanit…
ASan
18
多线程与并发崩溃
GNU Radio线程模型 · 数据竞争 · 死锁的日志与调试方法
多线程
并发崩溃
19
流标签与消息传递中的崩溃
标签处理错误 · 消息队列溢出 · 异步回调问题
流标签
消息传递
20
性能与崩溃的关联
高吞吐量下的资源耗尽 · 超时 · 缓冲区管理导致的崩溃
性能
崩溃的关联
21
日志文件轮转与持久化
长时间运行时的日志管理 · 避免日志丢失
日志文件轮转
持久化
22
远程调试与日志收集
在嵌入式或远程设备上收集日志与崩溃信…
远程调试
日志收集
23
案例实战一
一个简单的Python模块崩溃 · 通过日志与traceback定位并修…
案例实战一
Python
24
案例实战二
C++模块段错误 · 使用gdb与core dump定位到…
案例实战二
C++
25
案例实战三
多线程数据竞争导致的随机崩溃 · 使用日志与TSan检测
案例实战三
多线程数据竞争导…
26
案例实战四
内存越界导致的间歇性崩溃 · 使用Valgrind与ASan联合定…
案例实战四
内存越界导致的间…
27
常见问题与解决方案
日志不输出 · 日志级别不生效 · gdb无法附加
常见问题
解决方案
28
最佳实践
日志规范 · 崩溃预防 · 调试工具链配置
最佳实践
日志规范
29
综合项目
设计一个带完整日志系统的自定义模块 · 模拟崩溃场景并完成定位修复
综合项目
设计一个带完整日…
30
课程总结与进阶路径
回顾核心技能 · 推荐深入学习资源与社区支持
课程总结
进阶路径
所属VIP或分类
同VIP:EVM劣化中的功放非线性与DPD调试路线
同VIP:EVM超标从基带到射频的逐级故障隔离
同VIP:GNU-Radio性能优化:多线程调度与向量化处理