
段错误
sdsszk
这个作者很懒,什么都没留下…
展开
-
实现应用层的bancktrace函数
很多平台都会进行ulibc库的裁剪,以减小库的大小,但是在程序开发的过程中,难以避免出现段错误,这时候backtrace的功能就显现出来了,可以直接打印出相关的栈调用信息,很方便的解决问题。所以需要我们自己在应用层实现bancktrace函数,代码如下: extern void * __libc_stack_end; struct backtrace_frame_t { void * fp; void * sp; void * lr; void * pc; }; int原创 2020-11-26 15:57:31 · 244 阅读 · 0 评论 -
VAD检测原理及其过程
顾名思义,VAD(Voice Activity Detection)算法的作用是检测是否是人的语音,它的使用 范围极广,降噪,语音识别等领域都需要有vad检测。vad检测有很多方法,这里我们之介绍一 下webrtc里面的vad检测。 webrtc的vad检测原理是根据人声的频谱范围,把输入的频谱分成六个子带 (80Hz250Hz,250Hz500Hz,500Hz1K,1K2K,2K3K,3K4K。) 分别计算这六个子带的、 能量。然后使用高斯模型的概率密度函数做运算,得出一个对数似然比函数。对数似然.原创 2020-11-26 09:43:23 · 4056 阅读 · 2 评论 -
应用层打印PC指针LR指针解决段错误总结
标题1.需求的产生 写程序难免会出现段错误的情况,这时候很想知道,到底在什么地方崩溃了,对于代码很少,或者你很有把握的时候,或许用二分法配合printf就可以搞定了;而对于非常复杂的代码,比如像Xserver这样的程序,可能就不太好定位了; (本文讨论的情况都是针对arm环境,并且gdb不方便使用的情况) 2. 解决思路 思路其实很简单,对于用户态段错误的原因,大约可以分为两种, a) 没有权限访问这个地址; b) 访问的地址没有映射,比如NULL地址; 当出现这两种原创 2020-11-18 10:35:26 · 2960 阅读 · 0 评论