
Linux内核编程
文章平均质量分 85
主要内容:Linux系统移植,ARM架构,汇编学习,Linux驱动开发,Linux内核知识
迅~
记录学习过程。不懂欢迎私信或者评论,能解决的尽力解决,解决不了的我们一起想办法解决
展开
-
Linux·踩内存问题定位利器
2、指定的回调函数的调用时机:对X86,如果监视的是数据地址,则是在访问该数据的指令执行完成后,通过exception触发回调,如果监视的是指令地址,则是在该指令被执行前通过exception触发回调。在新的内核版本中引入了一个新工具hardware breakpoint,其能够监视对指定的地址的特定类型(读/写)的数据访问,有利于该类问题的定位;所以对于随机的内存踩踏(频繁的申请、使用、释放)是很难处理的,比较适合固定的地址踩踏。1、获取per_cpu变量的地址。原创 2025-03-18 14:58:53 · 342 阅读 · 0 评论 -
Linux·IP报文重组
其中rhashtable为分片队列(inet_frag_queue)所在的hash表,IP分片包在内核中根据IP报头的4个字段计算得到一个hash值(key值),每个hash值对应一个分片队列,在实现分片包重组功能时,IP层需要先缓存收到的所有分片包,等待同一个IP报文的所有分片包都到达后,把它们重组成一个大包再提交给L4(TCP/UDP... ...)协议。同时,处理与分片包相关的数据结构,譬如更新当前分片包占用的内存(frag_mem_limit),停止与分片包相关的定时器等。原创 2025-02-22 15:11:49 · 508 阅读 · 0 评论 -
Linux·spin_lock的使用
在使用spin_lock_irq和spin_unlock_irq的情况下,完全可以用spin_lock_irqsave和spin_unlock_irqrestore取代,那具体应该使用哪一个也需要依情况而定,如果可以确信在对共享资源访问前中断是使能的,那么使用spin_lock_irq更好一些。喔,我们在normal级别下获得了一个spinlock,正当我们想做什么的时候,我们被interrupt打断了,CPU转而执行interrupt level的代码,它也想获得这个lock,于是“死锁”发生了!原创 2025-02-21 17:36:15 · 1068 阅读 · 0 评论 -
Linux·SPI驱动分析和实例
SPI驱动分析和实例原创 2022-10-15 15:02:50 · 4046 阅读 · 0 评论 -
Linux·usb驱动架构和具体实例
usb驱动架构和具体实例原创 2022-10-13 13:55:56 · 2133 阅读 · 3 评论 -
Linux·VFS虚拟文件系统
VFS 虚拟文件系统原创 2022-10-13 09:17:45 · 677 阅读 · 0 评论 -
Linux·usb协议
usb协议分析原创 2022-10-11 15:06:08 · 1108 阅读 · 0 评论 -
Linux·触摸屏驱动实例
触摸屏驱动知识原创 2022-09-27 22:23:41 · 2458 阅读 · 0 评论 -
Linux·触摸板库tslib的编译和配置
触摸板库tslib的编译和配置原创 2022-09-26 23:09:11 · 488 阅读 · 0 评论 -
Linux·i2c驱动示例
i2c驱动示例原创 2022-09-23 12:15:19 · 1112 阅读 · 0 评论 -
Linux·主流嵌入式操作系统(RTOS)
Linux·主流嵌入式操作系统(RTOS)原创 2022-09-20 20:21:40 · 3823 阅读 · 0 评论 -
Linux·Uboot-kernel-根文件·下载地址
Linux·Uboot-kernel-根文件·下载地址原创 2022-09-12 10:22:04 · 323 阅读 · 0 评论 -
Linux·vscode好用的插件
Linux·vscode原创 2022-08-31 18:21:04 · 333 阅读 · 0 评论 -
Linux·设备文件devfs
设备文件devfs原创 2022-08-31 13:56:59 · 652 阅读 · 0 评论 -
Linux·i2c驱动架构
Linux·i2c驱动架构原创 2022-08-31 13:45:04 · 1609 阅读 · 0 评论 -
Linux·字符设备驱动实例-基于通用摸版
字符设备驱动实例原创 2022-08-29 22:26:36 · 650 阅读 · 0 评论 -
Linux·字符设备再分析
字符设备再分析原创 2022-08-26 16:31:53 · 292 阅读 · 0 评论 -
Linux·字符设备和杂项设备
字符设备和杂项设备原创 2022-08-26 15:34:44 · 831 阅读 · 0 评论 -
Linux·IO调度机制
IO调度机制浅析原创 2022-08-25 11:04:35 · 488 阅读 · 0 评论 -
Linux·进程权限控制
进程权限和文件权限原创 2022-08-25 10:54:42 · 1379 阅读 · 3 评论 -
Linux·串口编程
串口编程简单实践原创 2022-08-25 10:49:38 · 2729 阅读 · 0 评论 -
Linux·内核线程
Linux·内核线程原创 2022-08-25 10:41:16 · 682 阅读 · 0 评论 -
Linux·工作队列
Linux·工作队列原创 2022-08-24 18:09:43 · 2689 阅读 · 0 评论 -
Linux·软中断&tasklet
Linux·软中断原创 2022-08-24 17:09:37 · 761 阅读 · 0 评论 -
Linux·内核-硬中断
Linux·内核-硬中断原创 2022-08-24 16:51:05 · 597 阅读 · 0 评论 -
Linux·驱动中的异步
驱动中的异步原创 2022-08-24 16:21:43 · 370 阅读 · 0 评论 -
Linux·驱动中的中断
驱动中的中断原创 2022-08-24 16:04:12 · 1607 阅读 · 0 评论 -
Linux·驱动中的并发
驱动中的并发原创 2022-08-24 15:42:30 · 471 阅读 · 0 评论 -
Linux·设备驱动
Linux·设备驱动原创 2022-08-23 18:06:25 · 608 阅读 · 2 评论 -
Linux·C语言高级编程·可变参数宏
C语言高级编程·可变参数宏原创 2022-08-23 10:22:49 · 685 阅读 · 0 评论 -
Linux·C语言高级编程·内建函数
C语言高级编程·内建函数原创 2022-08-22 17:37:42 · 384 阅读 · 0 评论 -
Linux·C语言高级编程·变参函数
Linux·C语言高级编程·变参函数原创 2022-08-22 17:14:04 · 858 阅读 · 0 评论 -
Linux·C语言高级编程·字节对齐
Linux·C语言高级编程·字节对齐原创 2022-08-22 16:56:58 · 697 阅读 · 0 评论 -
Linux·C语言高级编程·attribute和section详解
Linux·C语言高级编程·attribute和section详解原创 2022-08-21 22:24:49 · 3416 阅读 · 0 评论 -
Linux·C语言高级编程·长度为零的数组
Linux·C语言高级编程·长度为零的数组原创 2022-08-21 22:19:23 · 365 阅读 · 0 评论 -
Linux·C语言高级编程·语句表达式
Linux·C语言高级编程·语句表达式原创 2022-08-21 22:13:36 · 336 阅读 · 0 评论 -
Linux·C语言高级编程·volatile关键字解析
Linux·C语言高级编程·volatile关键字解析原创 2022-08-21 22:05:00 · 624 阅读 · 0 评论 -
Linux·C语言高级编程·程序调试和宏使用的技巧
Linux·C语言高级编程·程序调试和宏使用的技巧原创 2022-08-21 21:52:43 · 444 阅读 · 0 评论 -
Linux·platform基于源码分析
Linux·platform基于源码分析原创 2022-08-21 18:36:13 · 278 阅读 · 0 评论 -
Linux·驱动
Linux驱动原创 2022-08-21 16:07:24 · 705 阅读 · 0 评论