之前开始接触Android驱动,做个简单的小结。
于是简单补充了一下C/C++语法基础
http://www.runoob.com/cplusplus/cpp-tutorial.html
众所周知,Android的基础是Linux,所以Android的学习需要从Linux驱动开始。
百度了一下,买了一本《LINUX设备驱动程序》开始学习之路。
以下开始总结学习过程中的得失。
简单认识驱动与模块
https://blog.csdn.net/weixin_39821531/article/details/86545124
主设备号与次设备号
https://blog.csdn.net/weixin_39821531/article/details/86573210
file_operations
https://blog.csdn.net/weixin_39821531/article/details/86582838
file结构
https://blog.csdn.net/weixin_39821531/article/details/86609094
inode结构
https://blog.csdn.net/weixin_39821531/article/details/86622696
字符设备驱动
https://blog.csdn.net/weixin_39821531/article/details/86710628
简单的读和写
https://blog.csdn.net/weixin_39821531/article/details/86747109
简单的GPIO读写
https://blog.csdn.net/weixin_39821531/article/details/86985102
竟态-semaphore
https://blog.csdn.net/weixin_39821531/article/details/87003429
竟态-rw_semaphore[转]
https://blog.csdn.net/weixin_39821531/article/details/87077259
竟态-completion
https://blog.csdn.net/weixin_39821531/article/details/87085159
竟态-自旋锁spinlock
https://blog.csdn.net/weixin_39821531/article/details/87106793
分配内存-kmalloc
https://blog.csdn.net/weixin_39821531/article/details/87180068
后备高速缓存-kmem_cache
https://blog.csdn.net/weixin_39821531/article/details/87201178
内存池-mempool
https://blog.csdn.net/weixin_39821531/article/details/87277523
分配内存-get_free_page
https://blog.csdn.net/weixin_39821531/article/details/87289788
分配内存-vmalloc
https://blog.csdn.net/weixin_39821531/article/details/87345600
container_of
https://blog.csdn.net/weixin_39821531/article/details/87929393
HZ和jiffies
https://blog.csdn.net/weixin_39821531/article/details/88026234
长延时-1
https://blog.csdn.net/weixin_39821531/article/details/88037407
长延时-2
https://blog.csdn.net/weixin_39821531/article/details/88043822
短延时
https://blog.csdn.net/weixin_39821531/article/details/88049948
等待队列
https://blog.csdn.net/weixin_39821531/article/details/88061432
内核线程
https://blog.csdn.net/weixin_39821531/article/details/88051133
双向链表 list_head
https://blog.csdn.net/weixin_39821531/article/details/88066981
散列链表hlist
https://blog.csdn.net/weixin_39821531/article/details/88076306
工作队列 workqueue
https://blog.csdn.net/weixin_39821531/article/details/88101158
IS_ERR、PTR_ERR、ERR_PTR
https://blog.csdn.net/weixin_39821531/article/details/88119189
通知链
https://blog.csdn.net/weixin_39821531/article/details/88123184
初识中断
https://blog.csdn.net/weixin_39821531/article/details/88179392
中断上下文
https://blog.csdn.net/weixin_39821531/article/details/88183033
中断处理例程
https://blog.csdn.net/weixin_39821531/article/details/88251096
tasklet
https://blog.csdn.net/weixin_39821531/article/details/88285509
softirq、tasklet和工作队列的对比
https://blog.csdn.net/weixin_39821531/article/details/88288523
udev
https://blog.csdn.net/weixin_39821531/article/details/88342953
kobject
https://blog.csdn.net/weixin_39821531/article/details/88390537
kset
https://blog.csdn.net/weixin_39821531/article/details/88423016
platform总线的简单使用
https://blog.csdn.net/weixin_39821531/article/details/88526628
类的简单使用
https://blog.csdn.net/weixin_39821531/article/details/88552057
proc文件系统的简单使用
https://blog.csdn.net/weixin_39821531/article/details/88555322
另一种简单的读写-simple_read_from_buffer
https://blog.csdn.net/weixin_39821531/article/details/88556480
字节序
https://blog.csdn.net/weixin_39821531/article/details/88557477
I2C总线初探
https://blog.csdn.net/weixin_39821531/article/details/88567680