### Summary

* [Booting](Booting/README.md)
    * [From bootloader to kernel](Booting/linux-bootstrap-1.md)
    * [First steps in the kernel setup code](Booting/linux-bootstrap-2.md)
    * [Video mode initialization and transition to protected mode](Booting/linux-bootstrap-3.md)
    * [Transition to 64-bit mode](Booting/linux-bootstrap-4.md)
    * [Kernel decompression](Booting/linux-bootstrap-5.md)
    * [Kernel load address randomization](Booting/linux-bootstrap-6.md)
* [Initialization](Initialization/README.md)
    * [First steps in the kernel](Initialization/linux-initialization-1.md)
    * [Early interrupts handler](Initialization/linux-initialization-2.md)
    * [Last preparations before the kernel entry point](Initialization/linux-initialization-3.md)
    * [Kernel entry point](Initialization/linux-initialization-4.md)
    * [Continue architecture-specific boot-time initializations](Initialization/linux-initialization-5.md)
    * [Architecture-specific initializations, again...](Initialization/linux-initialization-6.md)
    * [End of the architecture-specific initializations, almost...](Initialization/linux-initialization-7.md)
    * [Scheduler initialization](Initialization/linux-initialization-8.md)
    * [RCU initialization](Initialization/linux-initialization-9.md)
    * [End of initialization](Initialization/linux-initialization-10.md)
* [Interrupts](Interrupts/README.md)
    * [Introduction](Interrupts/linux-interrupts-1.md)
    * [Start to dive into interrupts](Interrupts/linux-interrupts-2.md)
    * [Interrupt handlers](Interrupts/linux-interrupts-3.md)
    * [Initialization of non-early interrupt gates](Interrupts/linux-interrupts-4.md)
    * [Implementation of some exception handlers](Interrupts/linux-interrupts-5.md)
    * [Handling Non-Maskable interrupts](Interrupts/linux-interrupts-6.md)
    * [Dive into external hardware interrupts](Interrupts/linux-interrupts-7.md)
    * [Initialization of external hardware interrupts structures](Interrupts/linux-interrupts-8.md)
    * [Softirq, Tasklets and Workqueues](Interrupts/linux-interrupts-9.md)
    * [Last part](Interrupts/linux-interrupts-10.md)
* [System calls](SysCall/README.md)
    * [Introduction to system calls](SysCall/linux-syscall-1.md)
    * [How the Linux kernel handles a system call](SysCall/linux-syscall-2.md)
    * [vsyscall and vDSO](SysCall/linux-syscall-3.md)
    * [How the Linux kernel runs a program](SysCall/linux-syscall-4.md)
    * [Implementation of the open system call](SysCall/linux-syscall-5.md)
    * [Limits on resources in Linux](SysCall/linux-syscall-6.md)
* [Timers and time management](Timers/README.md)
    * [Introduction](Timers/linux-timers-1.md)
    * [Clocksource framework](Timers/linux-timers-2.md)
    * [The tick broadcast framework and dyntick](Timers/linux-timers-3.md)
    * [Introduction to timers](Timers/linux-timers-4.md)
    * [Clockevents framework](Timers/linux-timers-5.md)
    * [x86 related clock sources](Timers/linux-timers-6.md)
    * [Time related system calls](Timers/linux-timers-7.md)
* [Synchronization primitives](SyncPrim/README.md)
    * [Introduction to spinlocks](SyncPrim/linux-sync-1.md)
    * [Queued spinlocks](SyncPrim/linux-sync-2.md)
    * [Semaphores](SyncPrim/linux-sync-3.md)
    * [Mutex](SyncPrim/linux-sync-4.md)
    * [Reader/Writer semaphores](SyncPrim/linux-sync-5.md)
    * [SeqLock](SyncPrim/linux-sync-6.md)
    * [RCU]()
    * [Lockdep]()
* [Memory management](MM/README.md)
    * [Memblock](MM/linux-mm-1.md)
    * [Fixmaps and ioremap](MM/linux-mm-2.md)
    * [kmemcheck](MM/linux-mm-3.md)
* [Cgroups](Cgroups/README.md)
    * [Introduction to Control Groups](Cgroups/linux-cgroups-1.md)
* [SMP]()
* [Concepts](Concepts/README.md)
    * [Per-CPU variables](Concepts/linux-cpu-1.md)
    * [Cpumasks](Concepts/linux-cpu-2.md)
    * [The initcall mechanism](Concepts/linux-cpu-3.md)
    * [Notification Chains](Concepts/linux-cpu-4.md)
* [Data Structures in the Linux Kernel](DataStructures/README.md)
    * [Doubly linked list](DataStructures/linux-datastructures-1.md)
    * [Radix tree](DataStructures/linux-datastructures-2.md)
    * [Bit arrays](DataStructures/linux-datastructures-3.md)
* [Theory](Theory/README.md)
    * [Paging](Theory/linux-theory-1.md)
    * [Elf64](Theory/linux-theory-2.md)
    * [Inline assembly](Theory/linux-theory-3.md)
    * [CPUID]()
    * [MSR]()
* [Initial ram disk]()
   * [initrd]()
* [Misc](Misc/README.md)
    * [Linux kernel development](Misc/linux-misc-1.md)
    * [How the kernel is compiled](Misc/linux-misc-2.md)
    * [Linkers](Misc/linux-misc-3.md)
    * [Program startup process in userspace](Misc/linux-misc-4.md)
    * [Write and Submit your first Linux kernel Patch]()
    * [Data types in the kernel]()
* [KernelStructures](KernelStructures/README.md)
    * [IDT](KernelStructures/linux-kernelstructure-1.md)
* [Useful links](LINKS.md)
* [Contributors](contributors.md)
