Build a Graphical Operating System from Scratch

Building a Toy Graphical Operating System from Scratch

In this course, we will start from a blank file and end up with a toy Graphical operating system. The emphasis is on the word toy.

What you’ll learn

  • Operating System development from scratch.
  • Graphical Operating System.
  • Basic assembly programming.
  • Bootloader and kernel development.

Course Content

  • Introduction –> 3 lectures • 7min.
  • Bootloader –> 6 lectures • 50min.
  • Graphics –> 7 lectures • 1hr 9min.
  • Mouse and Keyboard –> 4 lectures • 1hr 4min.
  • Task System –> 3 lectures • 33min.
  • Graphical Elements –> 6 lectures • 1hr 4min.
  • Taskbar and Bouncing Ball –> 2 lectures • 15min.

Build a Graphical Operating System from Scratch

Requirements

  • Basic C knowledge.
  • Some exposure to assembly language.

In this course, we will start from a blank file and end up with a toy Graphical operating system. The emphasis is on the word toy.

Our operating system is nowhere a competitor for windows, however, it is good enough for a proof of concept.

This will be a great addition to add to your CV to make you stand out from the crowd.

In this course you will:

– Build a simple toy Operating System that has Graphics support

– Implement mouse input: we will implement a simple mouse cursor.

– Implement keyboard input: we will implement support for the most popular keys.

– Implement a window system: we will implement a simple windowing system.

– Implement a simple task system: we will implement a very simple task system.

– Make a Bouncing Ball task: this will be the final lesson in which we make a Bouncing Ball task.

 

What is not covered in this course:

– Multithreading: This is an advanced topic and is not covered in this course. It is likely to be covered in future courses.

– Multiple processors support: This is an advanced topic and is not covered in this course. It is likely to be covered in future courses.

– File system: This is an advanced topic and is not covered in this course. It is likely to be covered in future courses.

– Sound system: This is an advanced topic and is not covered in this course. It is likely to be covered in future courses.