Skip to content

Various resources that might help you understand better your OS, and computer science in general.

Notifications You must be signed in to change notification settings

multun/os_resources

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 

Repository files navigation

Part I -- The userland

Before understanding how your OS work, you better understand how regular applications work, and interact with it.

Let's set some questions:

  • How does a processor works?
    • What's a register?
    • What's an instruction?
  • What's the program counter?
  • How does a userland program communicates with kernel-land?
  • What is userland?
  • What's the program stack?
  • What's virtual memory (like paging), when you have some?
  • How can two programs share memory?
  • What's the dynamic linker, why do you need it?

Resources

Going further

Part II -- Going kernel

  • What do you need an OS for?
  • What's a context switch? When does it occur? Why do you need it?
  • How does your OS manages to share its time between tasks?
    • What's scheduling?
  • How does a kernel manages memory?
    • What's segmentation? Why is it crap?
    • What's paging? How does the kernel manages it?

Resources

Other

About

Various resources that might help you understand better your OS, and computer science in general.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages