Posted on 12.18.2020
https://github.com/limpingstone/64bit-os-tutorial
This Github repository contains the code and documentation of the MiniOS tutorial, the work of myself, Guy Marino and Noah Houpt in our senior engineering project (ECSE 398). MiniOS is an educational project that attempts to simplify the learning of how modern x86_64 operating systems work on a fundamental level while providing template source code and detailed explanations for learners to follow along.
While x86_64 is on its way replacing the 32-bit x86 architecture during the past two decades, x86_64 operating systems have also grown significantly in mass and complexity. What our team realized was that for those who are interested in learning more about and building their own operating systems, the available online resources and existing tutorials such as the os-tutorial and os-dev are limited to provide an overly-simplified guide to constructing an obsolete x86 operating system with only support of the 32-bit compatibility mode.
Feel free to provide comments or feedback on our tutorial!
(Extracted from the problem statement of our final technical report)