自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 linux系统驱动中断

与设备树和platform总线类似,负责管理芯片引脚的和。:硬件引脚的"路由器"和"属性设置器":决定一个物理引脚做什么用、用什么电学参数:多功能插座的模式切换开关比如:同一个插座可以是USB充电口、也可以是HDMI接口Pinctrl就是决定这个插座当前是什么功能的开关,负责对进行统一的软件控制。:数字信号线的"标准化操作员":读取/设置高低电平、管理中断、资源分配:电灯的开关操作员无论墙上的开关是什么品牌、什么型号操作员都按照标准方式按开关、看指示灯。

2026-03-31 14:57:01 153

原创 字符设备驱动与杂项设备驱动

2026-03-31 10:00:24 6

原创 Linux设备树操作API与Platform总线API详解

一次性创建平台设备并绑定驱动(主要用于早期设备或测试):通过phandle(设备树中的节点引用句柄)查找节点。:获取并映射平台设备的I/O内存资源(带自动资源管理):这是获取中断的推荐方式,会自动处理中断资源的解析。:获取平台设备的特定类型资源(内存、中断等):可选参数,用于返回属性值的长度(字节数):通过名称获取中断号(当设备有多个中断时):获取设备的平台特定数据(非设备树方式):获取设备地址(解析reg属性):检查设备是否与指定的匹配表匹配。:要获取父节点的设备树节点指针。

2026-03-05 20:06:50 382 1

原创 杂项设备驱动

一点题外话,linux脱胎于单内核的uinx,其精髓就在于内核的模块化,保证低开销的同时又实现了功能的多样化,所以对于一般的驱动,我们都采用模块的加载方式。也是位于include/linux/miscdevice.h,在杂项设备结构体的下面。对于编译进内核,可以查看我上一期Hello_world的讲解,这里给出基本的框架。可以看出日志文件中已经打印出注册成功,设备目录下也已经出现了对应的设备文件。存在于include/linux/miscdevice.h。不知道的话可以先查找工具链。

2025-11-21 10:37:23 375

原创 内核驱动修改详解

如果你明确知道内核源码的路径,那再好不过,如果你下载的是SDK包,那么内核源码一般放在kernel文件夹下,无论如何,请先确定内核源码所在位置,并且已经成功编译。

2025-11-19 14:13:07 1333

原创 linux第一个驱动helloworld

由于我们是为本机编译,因此无需考虑编译的架构,编译工具链一般也由默认指定,因此我们只需要在makefile所在目录下编译即可,如果出现编译链不同的错误提示,下载并指定编译工具链即可。把驱动直接编译到内核,运行内核则会直接加载驱动。由于我囊中羞涩(还没有开发板),并且也没有学会,下次再写哈。首先我们要明确你的驱动想要在哪里执行,我们以在本地linux系统执行为例。把驱动编译城模块,然后加载到内核里面。:linux内核模块的必要声明。:真正实现驱动的实体代码。:linux驱动框架。

2025-11-09 21:31:37 328 1

原创 linux自启动设置

如今我想再喊一次,身边的人肯定不理解,我也没有了当时的心气,以前好像大家都是种子,肆无忌惮,万事皆同,如今已经各有特色了。我的乐观好像变成伪装了,和大家打成一片,却又总是据人之外,不喜欢我自己,却喜欢自己的成长。读研出差,难得老师不在,忙里偷闲想去天台看看超级月亮,上不去,去楼下找妈妈打电话,突然意识到,想妈妈是真,需要人吐槽也是真,原来是自己积攒了好多的话需要找人说,妈妈并没有文凭,对于我说的也一知半懂,但我们还是聊了将近两个小时,也许是真的发泄完了,看到同门下来看月亮,一起走去了湖边。

2025-11-05 22:10:17 511

原创 linux内核的中断机制

当硬件设备想和系统通信的时候,他首先要发出一个异步的中断信号打断cpu的执行,进而打断内核的执行。

2025-10-24 15:01:51 265

原创 应用程序在linux内核中的执行流程

由此我们可以看出,内核的重要性远远大于应用程序,因此内核在运行时独立于应用程序,我们一般称之为系统态(内核态),拥有受保护的内存空间以及访问硬件设备的所有权限。内核会保存当前应用程序(即“进程”)的所有状态信息(比如是谁发起的调用、它的数据在哪等),这个环境就是“进程上下文”,这确保了内核处理完事情后,能把结果准确地返回给。应用程序几乎所有有意义的、需要与外部世界(硬件、网络、文件)交互的工作,最终都必须通过“系统调用”这个唯一的、安全的门户来请求内核完成。操作系统的核心,管理硬件设备,分配系统资源。

2025-10-24 10:52:53 730

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除