Objective:
(the summary has been basically finished, this time I will be new typesetting and revision.) mistakes always have, hope can correct! )
The previous period of time to learn the embedded driver, while not beginning to find work, this time I will take time to review every day.
My summary is based on the study notes (李杨), the third edition of Linux kernel design and implementation, the third edition of Linux device drivers, and the first edition of Linux device driver development detailed. The article involves some of their own ideas, and does not guarantee that the said must be correct. I am also a Linux beginner, here to send Bo also want to share technology with you, but also hope that others can correct mistakes.
I put some knowledge points to tell, the article will be written longer, and the chapters involved in the knowledge will not be many, but this is my thinking when reviewing.
Because I am studying arm-linux, except for the first chapter, the other code is run by cross-compiling on ARM9, I use the kernel version is the 2.6.29 kernel that I use when I study.
If there is infringement of the following articles, please contact me immediately, I must immediately delete.
·Linux Device driver Summary (i): core-related basic concepts
|
|---------1.1, the role of Linux device drivers
| 1.2. Introduction to Kernel code tree
| 1.3. Kernel Patches
| 1.4. Makefile in the kernel
| 1.5. Makefile and Kconfig under sub-directories
| 1.6, Kernel and module compilation
Linux Device driver Summary (ii): Related basic concepts of modules
|
|---------2.1, explore the Linux kernel module--hello world!
| 2.2, PRINTK in the kernel
| 2.3, module parameters--module_param
| 2.4, calls between kernel functions--exprort_stmbol
Linux Device Driver Induction summary (iii): Equipment for 1-character devices request
Linux Device driver Summary (c): 2open.close.read.write · Linux Device Driver induction summary (iii): 3 object-oriented thinking and Lseek
· Linux Device driver Summary (iii): implementation of 4.ioctl · Linux Device driver Summary (iii): 5. Blocking IO implementations
· Linux Device Driver induction summary (iii): 6.poll and Sellct · Linux Device Driver Induction summary (iii): 7. Asynchronous notification Fasync
· Linux Device Driver induction summary (iv): 1. Related concepts of process management · Linux Device driver Summary (iv): 2. Related concepts of process scheduling
· Linux Device Driver induction summary (iv): 3. Preemption and Context switching ·Linux Device driver Summary (iv): 4. Single-CPU race and concurrency
·Linux Device Driver induction summary (iv): 5. Race and concurrency under SMP
·Linux Device driver Summary (v): 1. Allocating memory in kernel space
·Linux Device Driver induction summary (v): 2. Operating Hardware--io memory
·Linux Device Driver induction summary (v): 3. Io static mapping
·Linux Device driver Summary (v): 4. Write a simple LED driver
·Linux Device Driver induction summary (vi): 1. Implementation of interrupts
·Linux Device Driver induction summary (vi): 2. Share the interrupt number
·Linux Device Driver induction summary (vi): 3. Interruption of the lower half of the Tasklet
·Linux Device Driver induction summary (vi): 3. Interrupt the next half of the work queue
·Linux Device Driver induction summary (vii): 1. Time management and kernel delay
·Linux Device Driver induction summary (vii): 2. Kernel timer
·Linux Device driver induction summary (eight): 1. Bus, device and driver
Linux Device Driver Induction summary (eight): 2.match.probe.remove
· linux device driver Summary (eight) 3 hierarchical and object-oriented of device models
Linux Device Driver Induction summary (eight): 4. Bus hot-swappable
linux device driver Summary (ix): 1.platform device driver
linux device driver Induction Summary (10): 1.udev&misc
linux device driver Summary (11): Simple watchdog driver
Linux Device driver Summary (12): Simple digital Photo frame
· Linux Device Driver induction summary (13): 1. Touch screen and ADC clock
Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2011.2.19 revision of the Linux device driver Summary (i): core-related basic concepts
2011.2.22 revision of "Linux device driver Summary (ii): module related basic Concepts"
Linux Device Driver Induction summary