Linux驱动学习
Linux驱动学习
xy_L
这个作者很懒,什么都没留下…
展开
-
1.5 驱动设备类文件创建
(3)在加载模块的时候,用户空间中的udev会自动响应device_create(…)函数,去/sys下寻找对应的类从而创建设备节点。(1)内核通过class_create(…)函数,创建一个类,这个类存放于/sys中。(2)device_create(…)函数来在/dev目录下创建相应的设备节点。原创 2024-04-20 15:09:57 · 220 阅读 · 0 评论 -
1.4 简单的LED驱动
静态映射:内核移植时直接使用编码的方式,如果需要修改地址映射则要修改内核源代码,还要重新编译内核。驱动操作硬件时需要用到硬件物理地址在内核虚拟地址空间相对应的虚拟地址。动态映射:驱动根据需要动态建立映射。原创 2024-04-14 12:15:42 · 204 阅读 · 0 评论 -
1.3 字符设备驱动
向内核注册字符设备,也就是在内核中登记,让内核中分配一个设备号,标识该驱动。mknod /dev/xxx c 主设备号 次设备号。原创 2024-04-13 13:08:44 · 196 阅读 · 0 评论 -
1.2 简单的驱动源码分析
2、printk打印级别。原创 2024-04-11 20:57:55 · 74 阅读 · 1 评论 -
1 .1 Linux驱动初了解
:又称单内核,就是将各个模块整合在一起,例如:进程管理、线程管理、内存管理等等都运行在内核态,并同时运行在一个单独的地址空间。(1)网络设备面向数据包的发送而设计,它并不对应于文件系统的节点。(1)应用程序与驱动程序之间的数据交互是以块(固定大小的字节)为单位的,主要针对的是存储设备,如:硬盘、U盘、eMMC、SD卡等。(1)应用程序与驱动程序之间的数据交互是以字符(字节)为单位的,如:LCD、串口、LED。):操作系统模块化,只有一个核心模块(微内核)运行在内核态,其它模块作为普通进程运行。原创 2023-07-22 11:52:18 · 137 阅读 · 0 评论