Operating System

Operating System Screenshot

x86 Operating System

The x86 operating system described in this project is crafted using Assembly language and starts with a 16-bit boot mode. This phase allows compatibility during the initial setup before transitioning to 32-bit mode, which offers advanced functionality and improved performance. The system features integrated input/output (I/O) operations, enabling keyboard input, CPU management, and screen clearing, giving users direct control over these fundamental tasks.

One of the key aspects of this operating system is its custom memory management system. The malloc function has been implemented in C, completely independent of external libraries, highlighting the self-sufficiency of the OS in terms of resource allocation and memory handling. The overall development showcases the ability to seamlessly integrate Assembly and C, combining the low-level control of Assembly with the more structured, high-level operations provided by C.

This operating system represents a well-rounded project that exemplifies key features such as the 16-bit boot mode for initialization, a transition to 32-bit mode for enhanced performance, custom I/O capabilities, and robust memory management. By blending Assembly and C, the system strikes a balance between direct hardware interaction and efficient, higher-level programming.

View Source Code on GitHub