1
0
Fork 0

added readme

master
Pratham Patel 8 months ago
commit fec8edcf5e

@ -0,0 +1,76 @@
# Linux Kernel Foundation (February 2022 batch)
This repository contains materials what I learnt, and am learning in context to Linux Kernel Programming. This includes programming in userspace and kernelspace.
More content will be added as the class progresses.
## Course overview
### Systems Programming
#### Pre-requisites
- Being able to program in C
- Ability to use the Linux CLI
#### What is covered | What you are expected to learn
- Learning about Assembly language programming
- ARM Assembly
- x86 Assembly
- Advance concepts of Linux (userspace)
- How a process gets created
- Creating threads
- Handling thread priority
- Multithreading
- Thread sync
- Debugging (userspace)
- `valgrind`
- `gdb`
- AddressSanitizer
- Build System
- Makefiles
- DPDP and SPDK
### Linux Programming
#### What is covered | What you are expected to learn
- Introduction to the Linux Kernel
- Basic entities in the Linux Kernel
- Process Management
- Sync various elements
- Memory management
- Device driver management
- Spinlock
- Device drivers
- Basic drivers
- Char drivers
- Misc drivers
- Platform drivers (dtb, dto)
- PWM drivers
- DRM + GPU drivers
- Block drivers
- Advance drivers
- USB
- PCIe
- Linux debugging techniques
- kgdb
- printk (not sure if this is supposed to be printk, not audible in recorded lectures)
- BPF
- JTAG
- Other infrastructure offered by the Linux Kernel
- Networking
- Stack overview
- Proogramming from user[space(?)] POV
- How it works inside the Linux Kernel
- Inner working of a driver
Loading…
Cancel
Save