Markdown conversion from last LDD course summary.
authorThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Sat, 15 May 2010 20:56:20 +0000 (17:56 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Sat, 15 May 2010 20:56:20 +0000 (17:56 -0300)
This should be updated to this specific course.

00summary/summary [new file with mode: 0644]

diff --git a/00summary/summary b/00summary/summary
new file mode 100644 (file)
index 0000000..30d5d60
--- /dev/null
@@ -0,0 +1,135 @@
+%Summary
+%Thadeu Cascardo
+
+# Introduction
+
+* Linux
+* Device Drivers
+* Operating Systems
+
+# Basics
+
+* Buildig Linux
+* Linux modules
+* printk
+
+# Device Drivers Subsystem
+
+* POSIX devices
+* POSIX API Review
+* VFS
+* Linux Device Model
+
+# Character Device
+
+* Device Numbers
+* Registering File Operations
+* Implementing File Operations
+* Memory Allocation and Concurrency
+
+# Debugging
+
+* Proc Filesystem
+* Debug Filesystem
+* Linux Debugging Support
+
+# Abstract Data Types
+
+* Lists
+* Bitmaps
+* Other data types
+
+# Portability Issues
+
+* Endianness
+* Type Sizes
+* Processors and Memory Layout
+
+# Memory Management
+
+* kmalloc/kfree
+* Memory Access
+* Lookaside cache (slabs)
+* vmalloc
+
+# Process and Concurrency Management
+
+* Contexts
+* Interrupts
+* Bottom Halves and SoftIRQs
+* Timers, tasklets and workqueues
+
+# Concurrency
+
+* Semaphores and Mutexes
+* Spinlocks
+* Completion
+* Waitqueues
+
+# Time Management
+
+* Ticks and Jiffies
+* Real Time
+* Busy Waiting
+* Scheduling
+* Timers
+* Workqueues
+
+# Advanced Character Device
+
+* ioctl
+* Blocking and Non-Blocking I/O
+* Polling
+
+# I/O
+
+* I/O Ports and I/O Memory
+* Memory Barriers
+* Allocation
+* Access
+
+# Interrupts
+
+* Requesting and releasing
+* Interrupt Handler
+* tasklets
+* Enabling and disabling interrupts
+
+# Device Model
+
+* kobject
+* Devices, drivers, buses and classes
+* sysfs
+
+# Buses
+
+* PCI
+* USB
+* Other buses
+
+# Memory Mapping
+
+* Memory Addresses
+* get\\_free\\_pages
+* struct page
+* scather/gather
+* VMA and mmap
+* DMA
+
+# Block devices
+
+* Block drivers and operations
+* struct gendisk
+* Requests and Queues
+* struct bio
+
+# Network devices
+
+* Allocation and Registration
+* Structures and methods
+* Starting/Stoping
+* struct skb
+* Transmission
+* Reception
+* Interrupts and NAPI
+* Links, Addresses and Headers