linux内核
文章平均质量分 52
张飞online
未来属于我们当中那些仍然愿意弄脏双手的少数分子!
展开
-
内核调试之early printk
early printk 解决什么问题那?本质也是打印调试信息,但是不同于printk,printk属于打印的一个框架,既然是框架必然需要一些必备条件,框架的初始化等,在内核启动初期这些框架都没来得及初始化,所以这些函数肯定不能用,eary pritnk实现就比较直接简单,就是直接调用对应芯片的串口寄存器,把数据写到串口控制器寄存器里面,只要你芯片启动了就能输出。各个架构下都实现了earlyprintkKernel hacking ---> arm Debugg...原创 2021-12-20 21:55:10 · 797 阅读 · 0 评论 -
Linux内核模块调试一
在windows 下编程最舒服的就是其面向事件的线程同步互斥机制,在最开始的时候我就考虑一个问题,事件会不会丢失?其实对于会不会丢失要看他的底层实现机制,如果底层是一个队列当然不会丢失,底层要仅仅是一行位图,那写100次1和写1一次1的区别就是你的识别够不够快,你能不能辨别出这个1变化了一百次。...原创 2021-09-30 02:29:35 · 2182 阅读 · 0 评论 -
linux内核启动参数
先看官方文档:https://elixir.bootlin.com/linux/latest/source/Documentation/admin-guide内存相关的启动参数基本分为俩类,驱动模块和系统本身。1.内存相关的启动参数:mem=nn[KMG]其中KMG 是单位对应KB MB 和GB ,这个参数的意思是明确linux可用内存范围,例如mem=1024M表示linux内存可使用1024M,并且是从0开始,mem=size@start_addr这种写法其实内核文档并没有说,可能.原创 2021-09-08 18:02:12 · 829 阅读 · 0 评论 -
V4L2视频框架那些事
V4L2视频框架那些事原创 2020-07-10 19:25:58 · 149 阅读 · 0 评论 -
linux内核启动流程(基于arm)——head.S
源码路径:https://elixir.bootlin.com/linux/latest/source/arch/arm/boot/compressed/head.Sstart: .type start,#function mov r7, r1 @ save architecture ID mov r8, r2 @ save atags pointer#i...原创 2020-02-23 23:57:31 · 459 阅读 · 0 评论 -
Linux 驱动之字符设备驱动分析
字符设备驱动框架应该是我们最常见的一种驱动框架。废话少说,撸源码。涉及到的源码路径:https://elixir.bootlin.com/linux/latest/source/fs/char_dev.chttps://elixir.bootlin.com/linux/latest/source/include/linux/cdev.h主要涉及到的函数是下面这几个,源码也一并贴...原创 2020-02-12 10:35:15 · 251 阅读 · 0 评论 -
Linux中断那些事(一)
https://blog.csdn.net/vito_bin/article/details/52986011原创 2020-01-20 15:25:58 · 157 阅读 · 0 评论 -
linux下的各种c库
一:起源 对于内核kfifo的分析源于工作,去年我配合fpga工程师写一个多路的PCIE的DMA驱动,由于性能要求,需要对DMA回来的数据解析分包,存储到后端存储设备中。我的设计方案是解析后将各个通道打到各个通道的队列中,队列的设计考虑到性能,我想了很久。首先想到了环形队列,环形队列的好处是,我申请一块内存占着,可以反复使用,当然这也是他的缺点,看具体的业务场景了。...原创 2021-06-21 20:31:44 · 605 阅读 · 0 评论 -
LINUX内核专题——内存管理
LINUX内核专题——内存管理原创 2018-05-17 20:34:43 · 531 阅读 · 0 评论 -
Linux的进程,线程以及调度(fork与僵尸,内存泄漏,task结构体,停止状态与作业控制)
1.Linux进程生命周期(就绪、运行、睡眠、停止、僵死)2.僵尸是个什么鬼?3.停止状态与作业控制,cpulimit4.内存泄漏的真实含义5.task_struct以及task_struct之间的关系6.初见fork和僵尸原创 2017-09-13 21:28:30 · 566 阅读 · 0 评论 -
Linux下原子操作(信号量 自旋锁)的实现原理和底层代码分析
zhan keng原创 2017-08-27 00:13:24 · 4329 阅读 · 2 评论