linux driver

hello module 写一个简单的内核module

char_driver是简单的字符设备驱动

char_driver1.c 实现简单的创建字符设备、打开、关闭、读、写。文档

char_driver2.c 增加insmod模块参数、动态分配主设备号、支持多个子设备。文档

char_driver3.c 增加ioctl功能。文档

char_driver4.c 增加lseek功能、增加mutex锁, 文档

char_driver5.c 增加spin_lock、semaphore、completion、atomic。文档

char_driver6.c 在char_driver4.c的基础上增加wait_event。文档

char_driver7.c 在char_driver6.c的基础上增加poll机制。文档

char_driver8.c 在char_driver7.c的基础上增加信号机制。文档

char_driver9.c 在char_driver7.c的基础上增加mmap接口。文档

proc.c proc文件系统。文档

sys.c sys文件系统。文档

debugfs.c debugfs文件系统。文档

timer.c timer定时器。文档

work_queue.c 工作队列。文档

tasklet.c tasklet软中断。文档

kthread.c 内核线程。文档

platform.c 虚拟设备总线。文档

misc.c misc 设备驱动。文档

block_driver 是简单的块驱动

blk_driver1.c 使用系统默认IO调度器实现一个简单的内存设备文件。 文档

blk_driver2.c 增加getgeo 函数,增加分区数,使用vmalloc申请内存 。文档

blk_driver3.c 丢弃系统IO调度, 使用自己的“制造请求”函数。文档

simplefs.c 实现简单的文件系统基本功能。文档