Linux驱动开发
学习linux驱动开发
hairuiJY
在不归路上愈走愈远!
展开
-
linux驱动开发-platform_get_resource函数实现细节
先暂存:http://blog.sina.com.cn/s/blog_636a55070101mced.htmlhttps://www.cnblogs.com/sky-heaven/p/4800848.html原创 2022-01-12 15:06:55 · 646 阅读 · 0 评论 -
Linux学习---atomic_inc 原子操作
atomic_inc(&v)对变量v用锁定总线的单指令进行不可分解的"原子"级增量操作,避免v的值由于中断或多处理器同时操作造成不确定状态。原子操作 所谓原子操作,就是该操作绝不会在执行完毕前被任何其他任务或事件打断,也就说,它的最小的执行单位,不可能有比它更小的执行单位,因此这里的原子实际是使用了物理学里的物质微粒的概念。 原子操作需要硬件的支持,因此是架构相关的,其API和原子类型的定义都定义在内核源码树的include/asm/atomic.h文件中,它们都使用汇编语言实现,因为C语原创 2021-11-29 21:00:45 · 2960 阅读 · 0 评论 -
linux ioctl函数介绍
1. 概念ioctl 是设备驱动程序中设备控制接口函数,一个字符设备驱动通常会实现设备打开、关闭、读、写等功能,在一些需要细分的情境下,如果需要扩展新的功能,通常以增设 ioctl() 命令的方式实现。在文件 I/O 中,ioctl 扮演着重要角色,本文将以驱动开发为侧重点,从用户空间到内核空间纵向分析 ioctl 函数。2. 用户空间 ioctl#include <sys/ioctl.h> int ioctl(int fd, int cmd, ...) ;参数描述原创 2021-10-27 21:54:56 · 5516 阅读 · 1 评论