LKM
文章平均质量分 82
奔跑的码仔
心有多大,舞台就有多大
展开
-
内核开发基础-如何使用内核延时
从事Linux内核开发特别是驱动开发的小伙伴,肯定需要经常使用到定时器,比如,按键的去抖、LED屏幕显存buffer的刷新等。同时,在控制硬件时,可能会用到十分精确地短延时,这时,定时器的精度就不能满足这种需求了,这时就会使用到高精度定时器和忙等延时。今天就来简要说一下如何正确的使用内核提供的delay和sleep函数。这篇文章面对的读者是从事与驱动程序开发,但是,对于内核delay和sleep实现机制不是很熟悉的开发人员。如何插入delays首先,你需要回答一个问题,“需要使用delay的代码存在于原创 2020-05-31 22:52:20 · 1262 阅读 · 0 评论 -
内核模块-实现一个简单的设备
上一篇文章讲了如何实现基于内核模块的“helloworld”,相信大家通过这个例子对于内核模块有了一个基本的了解。当然,内核模块绝不仅仅只能实现这点功能,其最大的应用就是实现硬件的驱动程序。其实,linux内核中很大一部代码都是硬件处理相关的,比如,设备-总线-驱动框架,USB框架、spi框架、i2c框架等等,对应于各种不同的硬件设备,相应的就会有设备驱动程序,从最简单的按键、LED驱动,到十分复杂的USB子系统驱动,可以好不夸张的说,Linux内核可以适配绝大多数的硬件设备。那这些驱动框架和驱动程序,一原创 2020-05-18 21:43:01 · 678 阅读 · 0 评论 -
内核模块-基本概念
Linux内核模块简介众所周知,Linux系统已经成了应用最为广泛的操作系统。小到日常经常用到的电子设备,比如,智能手机、智能手表等,大到互联网公司的数据中心,都可以见到Linux的身影。Linux之所以如此成功,其中一个比较关键的因素就是她非常优秀的内核设计。这种设计可以使其适应各种场景的需求,加上天生开源的特质,想不火都难。今天,本文所要介绍的就是Linux内核相关开发中一个比较基础的概念...原创 2020-05-03 15:48:03 · 1739 阅读 · 0 评论