x86 Bare Metal Examples
There are a few tutorials that explain how to make an operating system and give examples of increasing complexity with more and more functionality added: Progressive tutorials. The goal of this repository is to use the minimal setup possible to be able to observe a single low-level programming concept for each minimal operating system we create. This is not meant provide a template from which you can write a real OS, but instead to illustrate how those low-level concepts work in isolation, so that you can use that knowledge to implement operating systems or drivers.
Source: github.com