文章目录
- 1.内核调试手段:debugfs.h中api建立目录/sys/kernel/debug
- 2.性能优化:裸磁盘无法使用,一般都刷文件系统。驱动加上要考虑磁盘io,内存占用,cpu使用情况
- 3.Valgrind内存泄漏排查案例:
- 4.cpu瓶颈:
- 5.主频设置
- 6.驱动稳定性
1.内核调试手段:debugfs.h中api建立目录/sys/kernel/debug
内核开发会遇到内核崩溃,如空指针异常,内存访问越界,如下会打印出异常调用栈信息定位。
2.性能优化:裸磁盘无法使用,一般都刷文件系统。驱动加上要考虑磁盘io,内存占用,cpu使用情况
3.Valgrind内存泄漏排查案例:
如下malloc加个死循环就是内存泄漏。
dmesg会显示不全,因为环形buffer会覆盖。
4.cpu瓶颈:
-p pid
5.主频设置
6.驱动稳定性
希望arg有多大
likely一般用在if判断里,cpu会把当前指令后面指令预取出来,等到执行时就去执行,效率提高,但是也要判断后面那条指令大概率执不执行,执行的话取出来,不执行则跳过。