CodeAtlas CL Classic CY Cyber FR Forest SS Sunset AU Aurora MN Mono
Loading…
If this never completes: start PostgreSQL, check DATABASE_URL and DIRECT_URL in .env, run npx prisma db push. Optional: set SKIP_RUNTIME_CATALOG_SEED=1 to skip heavy catalog seed while debugging.
⚙️ Kernel Course Beginner to Advanced
Learn Linux kernel architecture, system calls, process management, memory, drivers, and core OS concepts.
Curriculum 205 structured lessons with exercises and projects.
Level 1: Kernel Beginner 55 lessons
Module 1: Linux environment setup
Module 2: Kernel source and build system
Module 3: Process and task structure
Module 4: System calls basics
Module 5: Memory management basics
Lesson 21: Memory management basics: Physical vs virtual memory Lesson 22: Memory management basics: Pages and page frames Lesson 23: Memory management basics: kmalloc and vmalloc Lesson 24: Memory management basics: Memory zones Lesson 25: Memory management basics: Basic memory allocation FULL SUBSCRIPTION Module 6: Scheduling fundamentals
Lesson 26: Scheduling fundamentals: Scheduler overview Lesson 27: Scheduling fundamentals: Process priority and nice Lesson 28: Scheduling fundamentals: CFS basics Lesson 29: Scheduling fundamentals: Real-time scheduling Lesson 30: Scheduling fundamentals: Scheduling decisions FULL SUBSCRIPTION Module 7: Interrupts and exceptions
Lesson 31: Interrupts and exceptions: Interrupt handling flow Lesson 32: Interrupts and exceptions: Top halves and bottom halves Lesson 33: Interrupts and exceptions: Hardware IRQs Lesson 34: Interrupts and exceptions: Softirqs and tasklets Lesson 35: Interrupts and exceptions: Workqueues FULL SUBSCRIPTION Module 8: Kernel modules
Lesson 36: Kernel modules: Module structure Lesson 37: Kernel modules: Building and loading Lesson 38: Kernel modules: Module parameters Lesson 39: Kernel modules: Symbol export Lesson 40: Kernel modules: Module lifecycle FULL SUBSCRIPTION Module 9: Basic debugging
Lesson 41: Basic debugging: printk and logging Lesson 42: Basic debugging: Kernel oops Lesson 43: Basic debugging: Using GDB Lesson 44: Basic debugging: Kernel debuggers Lesson 45: Basic debugging: Tracing basics FULL SUBSCRIPTION Module 10: File system overview
Lesson 46: File system overview: VFS layer Lesson 47: File system overview: Inodes and dentries Lesson 48: File system overview: File operations Lesson 49: File system overview: Block device layer Lesson 50: File system overview: Mount points FULL SUBSCRIPTION Module 11: Beginner kernel project
Lesson 51: Beginner kernel project: Project setup Lesson 52: Beginner kernel project: First kernel patch Lesson 53: Beginner kernel project: Testing changes Lesson 54: Beginner kernel project: Documentation Lesson 55: Beginner kernel project: Submission basics FULL SUBSCRIPTION Level 2: Kernel Intermediate 50 lessons
Module 1: Virtual memory and paging
Lesson 56: Virtual memory and paging: Page tables Lesson 57: Virtual memory and paging: TLB and address translation Lesson 58: Virtual memory and paging: Demand paging Lesson 59: Virtual memory and paging: Page faults Lesson 60: Virtual memory and paging: Memory mapping FULL SUBSCRIPTION Module 2: Advanced scheduling
Lesson 61: Advanced scheduling: Scheduler internals Lesson 62: Advanced scheduling: Load balancing Lesson 63: Advanced scheduling: CPU affinity Lesson 64: Advanced scheduling: Scheduling domains Lesson 65: Advanced scheduling: Latency and throughput FULL SUBSCRIPTION Module 3: Synchronization primitives
Lesson 66: Synchronization primitives: Spinlocks Lesson 67: Synchronization primitives: Mutexes and semaphores Level 3: Kernel Advanced 50 lessons
Module 1: Advanced memory management
Lesson 106: Advanced memory management: Slab allocator Lesson 107: Advanced memory management: Memory compaction Lesson 108: Advanced memory management: NUMA Lesson 109: Advanced memory management: Huge pages Lesson 110: Advanced memory management: Memory hotplug FULL SUBSCRIPTION Module 2: RCU and lockless algorithms
Lesson 111: RCU and lockless algorithms: RCU basics Lesson 112: RCU and lockless algorithms: Read-side critical sections Lesson 113: RCU and lockless algorithms: Grace periods Lesson 114: RCU and lockless algorithms: Lockless data structures Lesson 115: RCU and lockless algorithms: Memory ordering FULL SUBSCRIPTION Module 3: CPU hotplug and topology
Lesson 116: CPU hotplug and topology: CPU hotplug Lesson 117: CPU hotplug and topology: Topology detection Level 4: Kernel Professional 50 lessons
Module 1: Enterprise kernel maintenance
Lesson 156: Enterprise kernel maintenance: Long-term support Lesson 157: Enterprise kernel maintenance: Backporting Lesson 158: Enterprise kernel maintenance: Security updates Lesson 159: Enterprise kernel maintenance: Vendor kernels Lesson 160: Enterprise kernel maintenance: Support lifecycle FULL SUBSCRIPTION Module 2: Custom kernel features
Lesson 161: Custom kernel features: Feature development Lesson 162: Custom kernel features: Configuration Lesson 163: Custom kernel features: Integration Lesson 164: Custom kernel features: Testing Lesson 165: Custom kernel features: Deployment FULL SUBSCRIPTION Module 3: Embedded and real-time
Lesson 166: Embedded and real-time: Embedded constraints Lesson 167: Embedded and real-time: Resource limits First 20 lessons are free. Subscribe to unlock all remaining lessons in Kernel.
Lesson 68: Synchronization primitives: Read-write locks
Lesson 69: Synchronization primitives: RCU introduction
Lesson 70: Synchronization primitives: Atomic operations Module 4: Device drivers
Lesson 71: Device drivers: Character device basics Lesson 72: Device drivers: File operations Lesson 73: Device drivers: Ioctl interface Lesson 74: Device drivers: Block drivers Lesson 75: Device drivers: Driver model FULL SUBSCRIPTION Module 5: Network stack internals
Lesson 76: Network stack internals: Socket layer Lesson 77: Network stack internals: Protocol handlers Lesson 78: Network stack internals: sk_buff structure Lesson 79: Network stack internals: Netdevice Lesson 80: Network stack internals: Packet flow FULL SUBSCRIPTION Module 6: Block I/O layer
Lesson 81: Block I/O layer: Request queue Lesson 82: Block I/O layer: Bio structure Lesson 83: Block I/O layer: I/O scheduler Lesson 84: Block I/O layer: Block device drivers Lesson 85: Block I/O layer: Direct I/O FULL SUBSCRIPTION Module 7: Kernel debugging tools
Lesson 86: Kernel debugging tools: ftrace Lesson 87: Kernel debugging tools: perf Lesson 88: Kernel debugging tools: eBPF Lesson 89: Kernel debugging tools: KASAN and UBSAN Lesson 90: Kernel debugging tools: Live patching FULL SUBSCRIPTION Module 8: Real-time Linux
Lesson 91: Real-time Linux: PREEMPT_RT Lesson 92: Real-time Linux: Real-time scheduling Lesson 93: Real-time Linux: Latency tuning Lesson 94: Real-time Linux: Hard real-time Lesson 95: Real-time Linux: RT applications FULL SUBSCRIPTION Module 9: Power management
Lesson 96: Power management: CPU idle Lesson 97: Power management: Runtime PM Lesson 98: Power management: Suspend and resume Lesson 99: Power management: ACPI Lesson 100: Power management: Power domains FULL SUBSCRIPTION Module 10: Intermediate driver project
Lesson 101: Intermediate driver project: Driver design Lesson 102: Intermediate driver project: Implementation Lesson 103: Intermediate driver project: Testing Lesson 104: Intermediate driver project: Documentation Lesson 105: Intermediate driver project: Maintenance FULL SUBSCRIPTION
Lesson 118: CPU hotplug and topology: CPU masks
Lesson 119: CPU hotplug and topology: SMP considerations
Lesson 120: CPU hotplug and topology: Power management Module 4: Kernel security
Lesson 121: Kernel security: Security modules Lesson 122: Kernel security: SELinux Lesson 123: Kernel security: AppArmor Lesson 124: Kernel security: Kernel hardening Lesson 125: Kernel security: Vulnerability handling FULL SUBSCRIPTION Module 5: Containers and cgroups
Lesson 126: Containers and cgroups: Cgroups v2 Lesson 127: Containers and cgroups: Namespace types Lesson 128: Containers and cgroups: Container basics Lesson 129: Containers and cgroups: Resource limits Lesson 130: Containers and cgroups: Integration FULL SUBSCRIPTION Module 6: Performance tuning
Lesson 131: Performance tuning: Profiling Lesson 132: Performance tuning: Bottleneck analysis Lesson 133: Performance tuning: CPU optimization Lesson 134: Performance tuning: Memory optimization Lesson 135: Performance tuning: I/O optimization FULL SUBSCRIPTION Module 7: Kernel development workflow
Lesson 136: Kernel development workflow: Git workflow Lesson 137: Kernel development workflow: Patch format Lesson 138: Kernel development workflow: Mailing lists Lesson 139: Kernel development workflow: Code review Lesson 140: Kernel development workflow: Maintainer trees FULL SUBSCRIPTION Module 8: Upstream contribution
Lesson 141: Upstream contribution: Finding tasks Lesson 142: Upstream contribution: Submitting patches Lesson 143: Upstream contribution: Feedback handling Lesson 144: Upstream contribution: Community norms Lesson 145: Upstream contribution: Long-term maintainership FULL SUBSCRIPTION Module 9: Testing and CI
Lesson 146: Testing and CI: KUnit Lesson 147: Testing and CI: kselftest Lesson 148: Testing and CI: CI systems Lesson 149: Testing and CI: Automated testing Lesson 150: Testing and CI: Regression prevention FULL SUBSCRIPTION Module 10: Advanced kernel project
Lesson 151: Advanced kernel project: Project scope Lesson 152: Advanced kernel project: Architecture Lesson 153: Advanced kernel project: Implementation Lesson 154: Advanced kernel project: Testing Lesson 155: Advanced kernel project: Upstream submission FULL SUBSCRIPTION
Lesson 168: Embedded and real-time: Boot optimization
Lesson 169: Embedded and real-time: Real-time requirements
Lesson 170: Embedded and real-time: Hardware integration Module 4: Security hardening
Lesson 171: Security hardening: Hardening techniques Lesson 172: Security hardening: Attack surface Lesson 173: Security hardening: Mitigations Lesson 174: Security hardening: Auditing Lesson 175: Security hardening: Compliance FULL SUBSCRIPTION Module 5: Compliance and auditing
Lesson 176: Compliance and auditing: Security standards Lesson 177: Compliance and auditing: Audit logging Lesson 178: Compliance and auditing: Compliance requirements Lesson 179: Compliance and auditing: Documentation Lesson 180: Compliance and auditing: Certification FULL SUBSCRIPTION Module 6: Production operations
Lesson 181: Production operations: Deployment Lesson 182: Production operations: Monitoring Lesson 183: Production operations: Incident response Lesson 184: Production operations: Capacity planning Lesson 185: Production operations: Best practices FULL SUBSCRIPTION Module 7: Team collaboration
Lesson 186: Team collaboration: Code review Lesson 187: Team collaboration: Maintainer workflow Lesson 188: Team collaboration: Communication Lesson 189: Team collaboration: Mentoring Lesson 190: Team collaboration: Onboarding FULL SUBSCRIPTION Module 8: Mentoring and review
Lesson 191: Mentoring and review: Review process Lesson 192: Mentoring and review: Mentoring newcomers Lesson 193: Mentoring and review: Quality standards Lesson 194: Mentoring and review: Documentation Lesson 195: Mentoring and review: Community building FULL SUBSCRIPTION Module 9: Open-source contribution
Lesson 196: Open-source contribution: Contribution process Lesson 197: Open-source contribution: Community norms Lesson 198: Open-source contribution: License compliance Lesson 199: Open-source contribution: Long-term involvement Lesson 200: Open-source contribution: Leadership FULL SUBSCRIPTION Module 10: Enterprise capstone
Lesson 201: Enterprise capstone: Project planning Lesson 202: Enterprise capstone: Implementation Lesson 203: Enterprise capstone: Testing and validation Lesson 204: Enterprise capstone: Documentation Lesson 205: Enterprise capstone: Deployment and support FULL SUBSCRIPTION Kernel Programming Course | CodeAtlas