首页
›
Linux内核与驱动
›
117-Android内核驱动
›
《Android内核驱动之字符设备驱动开发与ioctl实战》
VIP10
本课程属于:117-Android内核驱动
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Android内核驱动之字符设备驱动开发与ioctl实战
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
课程导论与Android内核架构
Android系统软件栈概述 · Linux内核与Android内核的… · 内核空间与用户空间
Android
课程导论
02
开发环境搭建
交叉编译工具链配置 · Android内核源码下载与编译 · 模拟器与真机调试环境搭建
开发环境搭建
交叉编译工具链配…
03
字符设备驱动基础概念
设备文件 · 主设备号与次设备号 · file_operations结构体
字符设备驱动基础…
设备文件
04
第一个字符设备驱动
Hello World驱动编写 · 模块初始化与退出函数 · module_init/module…
第一个字符设备驱…
Hello
05
设备号注册与注销
动态分配设备号(alloc_chrd… · 静态指定设备号 · register_chrdev_re…
设备号注册
注销
06
cdev结构体详解
cdev_init · cdev_add · cdev_del
cdev
结构体详解
07
file_operations之open与release
open函数实现 · release函数实现 · 驱动中的计数逻辑
file
operations
08
file_operations之read与write
用户空间与内核空间数据拷贝(copy… · read/write函数实现 · 阻塞与非阻塞概念引入
file
operations
09
驱动中的并发与竞态控制
并发问题场景 · 原子操作 · 自旋锁(spinlock)使用
驱动
并发
10
ioctl系统调用原理
ioctl的作用 · 用户态ioctl函数原型 · 内核态unlocked_ioctl接…
ioctl
系统调用原理
11
ioctl命令码定义实战
使用宏定义自定义命令码 · 命令码解码 · 方向与大小参数
ioctl
命令码定义实战
12
ioctl驱动端实现
switch-case结构处理命令 · 参数传递与校验 · 访问用户态指针的安全性
ioctl
驱动端实现
13
用户态ioctl调用编程
打开设备文件 · 构造ioctl请求 · 传递结构体参数
ioctl
用户态
14
ioctl实战
GPIO控制驱动:GPIO子系统简介 · 在驱动中申请与控制GPIO · 通过ioctl实现GPIO输出高低电…
ioctl
GPIO
15
ioctl实战
虚拟字符设备数据交换 · 通过ioctl读写配置 · 通过read/write传输数据流
ioctl
虚拟字符设备数据…
16
驱动中的内存管理
kmalloc/kfree · vmalloc · 内存分配标志(GFP_KERNEL/…
驱动
内存管理
17
驱动中的等待队列
等待队列头与等待队列项 · wait_event_interru… · wake_up_interrupti…
驱动
等待队列
18
驱动中的poll机制
poll函数实现 · poll_wait使用 · 用户态select/poll/epo…
poll
驱动
19
驱动中的定时器与内核线程
timer_list使用 · setup_timer/mod_ti… · kthread_run/kthrea…
驱动
定时器
20
驱动调试技巧
printk日志级别 · 动态调试(dynamic debug… · 使用ftrace跟踪驱动函数
驱动调试技巧
printk
21
设备树与平台驱动基础
设备树(.dts)概念 · compatible属性 · platform_driver注册
设备树
平台驱动基础
22
将字符驱动与设备树匹配
在设备树中添加自定义节点 · 驱动中解析设备树属性(of_prop… · 自动探测设备
将字符驱动
设备树匹配
23
驱动中的中断处理
request_irq/free_i… · 中断处理函数上下文 · 顶半部与底半部(tasklet/wo…
驱动
断处理
24
ioctl实战
中断状态查询驱动 · 读取中断计数 · 结合等待队列通知用户态
ioctl
断状态查询驱动
25
用户态与内核态数据交互优化
减少拷贝次数 · mmap映射简介 · ioctl传递大数据时的策略
用户态
内核态数据交互优…
26
驱动安全性考量
权限检查( capable() ) · 用户态指针校验(access_ok) · 避免内核崩溃
驱动安全性考量
capable
27
驱动模块参数与导出符号
module_param/modul… · EXPORT_SYMBOL · 多文件驱动模块编译
驱动模块参数
导出符号
28
综合实战
多功能字符驱动框架 · 数据回显 · 中断统计
综合实战
多功能字符驱动框…
29
驱动测试与性能分析
编写自动化测试脚本(Shell/C) · 使用perf分析驱动性能 · 压力测试与稳定性
驱动测试
性能分析
30
课程总结与Android驱动开发进阶
回顾字符驱动核心知识点 · HAL层与JNI简介 · 内核主线开发流程
Android
课程总结
所属VIP或分类
同VIP:Android-I2C从设备驱动开发与中断响应调试
同VIP:Android内核设备驱动开发与HAL接口集成
同VIP:Android内核驱动调试技巧printk与动态调试实战