I love operating systems and I want to write and share my understanding of it. In process, I may find more amazing insights on how it works, and what are different design consideration that were taken in order to design such a marvelous piece of software. I’ve been inspired to write from the work of Julia Evans, Remzi and my previous work as OS TA

Table of Contents

Understanding anatomy of a program

  1. How a program actually works?
  2. Internals of a processes

Diving into Memory sub-system

  1. How a process manages its memory
  2. How an operating system manages its memory

Fantastic Concurrency and how to tame them

  1. Concurrency Demons and where to find them
  2. Concurrency Demons and how to tame them

File systems

  1. Introduction
  2. File system Internals

Appendix

  1. State machine and multiple abstractions
  2. A brief tutorial on system calls
  3. Understanding /proc file system
  4. A brief tutorial on linux memory
  5. Effective guide to linux IPC mechanisms
  6. What is virtualization
  7. What are containers