/myOS

A naive kernel.

Primary LanguageC

myOS

I use many operating systems all day but can't clearly understand how they work and are implemented as a whole. This project is to write a very simple kernel so that I can figure out the key concepts and principles of an OS.

Key Features

  • Multi-processing
  • Paging system (virtual memory management)
  • A file system
  • Different types of syscalls
  • Interrupts handling
  • etc.

By Jiaxing Yang

From 2020.9

References

Screenshots

When myOS boots

boot

A simple shell lvsh

lvsh

  • lvsh has some builtin commands: ps, ls, mm, etc.
  • Can also execute a binary form it and pass command line args to the process.

A simple software cat (yes, it is the cat on Linux XD)

cat

A software nothing used to test

nothing_n

Use nothing to trigger a page fault

nothing_pf1 nothing_pf2