A Song of Ice and FireAlphaGoAntivirusArtificial IntelligenceBashBod PressBusinessCharityChatbotChildrenComputerConflict ZoneCouchDBEbola VirusFM ReceiverGame of ThronesGeolocationGeorge R.R. MartinGuideIncorporationInformation SecurityIoTJavaScriptLawLearningLinus TorvaldsMedicine Mental IllnessNewsNoSQLOperating SystemRansomwareRansomware DayReviewRevolutionRobotsSHA-1San FranciscoScienceSmall BusinessSolar EclipseTechnologyThe Fourth Industrial RevolutionThe FutureTime ManagementUnix-likeVanilla ForumsWana Decrypt0rWelcomeWordpressWorld Bank GroupZero-day Vulnerability

Create Your Own Operating System - Step 0 - Introduction

One of the most challenging tasks in computer programming is developing an OS and frankly, is not for everyone except the most hard core geekheads among you.

In order to start with creating your very own OS let us start by viewing the basic definitions of what a BIOS or boot loader is and does.

An operating system (OS) is a piece of software that communicates with hardware and user input devices to give the user a platform to execute common tasks. An OS has several components, the boot loader, a system core, and various other software, from simple text and graphics editing to complex data processing and are available in various flavours and platforms.

The BIOS or basic input/output system is a skeletal OS which is in-built in every computer. The primary function of the BIOS is to load the Master Boot Record, a 512 byte section at the start of the boot media. The media to boot, whether, floppy, hard drive, or USB stick can be chosen through the BIOS interface.

An operating system has to communicate with hardware like keyboard, graphics, and network drivers and this is only achieved using machine language of 1's and 0's. Assembly Language (ASM) effectively and conveniently translates mnemonics into binary strings, like “MOV ax,30” by using a set of registers one of which is the accumulator and contains the current instruction (binary) to execute.

The boot process essentially searches for which media is bootable whether hard drive, CD-ROM, or other and loads 512 bytes of instructions from the boot sector to perform initialization and checks with CD-ROM, hard-disk, keyboard, and motherboard components.

Developing an OS with a graphical user interface (GUI) involves a lot more labour and knowledge of programming languages like C, C++, C#, Python, among others and unlike Assembly Language code these are compiled languages which means an additional tool called a compiler is needed to produce the machine language instructions in byte code. Fortunately, you don't need to know all these languages!

Creating your own OS from scratch can be done on any platform, but is easiest on the free Linux platform.

It is possible to develop a Linux based “Hello World” operating system using only a few hundred lines of ASM and C code. However, there is a catch. The GNU Compiler Collection (GCC) produces executable for the operating system it is installed on and not the operating system that is being developed. So, a cross-compiler needs to be implemented using GCC and GNU Binutils, after which an OS which only prints “Hello World” to the screen is easy enough to implement, but adding functionality is one of the hardest tasks there is.

To test your OS you can use an emulator program such as QEMU. You can also test on actual device if you create a disk image and write it to a bootable portion of the memory.

Follow the tutorials listed in the references section to get up and running with an OS of your own.

There is sample code available and the steps are roughly similar to the ones listed above – create boot disk, code functionality in a language of your choice, compile, create disk image optionally, and reboot.

Creating your own OS has become slightly easier of recent times because numerous open source implementations becoming available, such as Cosmos which uses C# and Visual Studio as build tool.


  1. Creating your own Hello World Operating System - https://cs.au.dk/~sortie/dopsys/osdev/
  2. Create Your Own Operating System! - http://www.instructables.com/id/Create-your-own-operating-system/
  3. Building your own operating system - https://www.codeproject.com/Articles/15843/Building-your-own-operating-system
  4. C# Open Source Managed Operating System - https://cosmos.codeplex.com/

Related Coverage

Legal issues At some point in life, everyone gets an idea of starting their own business – be it that of dealing in diamonds, opening a restaurant or simply starting a bar they always wanted to open! It is always exciting to start a small business of your own and dreaming about it.

January 20, 11 AM
AlphaGo Beginner's Guide

AlphaGo Everyone knows that DeepMind's AlphaGo defeated 18 times world champion Lee Sedol on March 9 2016 at the ancient Chinese game- Go. What’s fascinating is that the game of Go has as many possible moves as there are atoms in the universe. This motivated us to find out more about AlphaGo.


Last month, the World Bank Group published the World Development Report (WDR) 2018, the first-ever edition entirely focused on education. The report warns of a learning crisis in global education and the severity of this in the deprived areas. Shockingly, there are still around 260 million children who aren’t even enrolled in primary or secondary schools. Education is meant to equip stud.


Medicine is the most rapidly growing area of expertise. In recent decades, new technologies and scientific discoveries have changed the idea of the body and its diseases and at the same time the approach to the treatment of the whole person.


he World Health Organization estimates that about 300 million people around the world are suffering from depression, 60 million from bipolar affective disorder, and 21 million from schizophrenia.


The Internet of Things The first three industrial revolutions were triggered by steam, electricity, and, and wired computers which transformed people’s way of life and manufacturing and brought digital capabilities to billions of people.


Opening your own business is a task that is certainly difficult and responsible, but experienced entrepreneurs will agree that real difficulties come when you start developing an already launched project.


Automation of business processes is no longer just an evolving trend in digital marketing. Today it is an integral part of a brand communication.


We all have stories about working in dysfunctional offices, with wacky colleagues and under stressful deadlines. But even this cannot compare to working in a conflict zone, a place that is ravaged by war.


Game of ThronesGeorge R.R. Martin is an American novelist, fantasy, sci-fi and short story writer. Most of the world got acquainted with him after screen adaptation of his epic saga "a Song of Ice and Fire".


Over the last years the art of time management gains popularity. Why so? The answer is very simple: we want to control our life. No wonder there are plenty of interesting techniques allowing us to properly schedule and manage our time.


Ebola Virus The Ebola virus causes a severe illness that is often lethal in the absence of treatment.

July 11, 09 AM
Welcome to Bod Press

Bod Press is a global social network for readers, journalists and companies engaged in writing and reading. The unique audience, fresh information, constructive communication, and collective creativity.


Bod Intelligent Antivirus This review is dedicated to the Bod Intelligent Antivirus developed by Bod Security. The purpose of the article is to show its functionality and demonstrate how it behaves in real conditions.

634 2

wordpress Automattic Company, the developer of WordPress, will no longer spend money on maintaining the office in San Francisco.


Computer Technology It seems that many years have passed, which made an eternity by the standards of the world of computer technology. And the reflection on past mistakes does not stop. And what would have happened if...


Robotic assistant Millions of American families buy automatic voice assistants to turn off the lights instead of themselves, order pizza and show movie program in the cinema.


The data about critical vulnerabilities in WordPress were published - they allow remote execution of shell commands and resetting the administrator password through the substitution of the Host header.

769 1

More than 60,000 computers were attacked and infected with a virus-extortionist Wana Decrypt0r.


At some time, I had to work with one of the document-oriented DBMS – Apache CouchDB, but I had some difficulties with the search of the documentation.


The article describes how to work with push notifications about object events in browsers.


Imagine that you are sitting and waiting for someone in the car, and the poster of your favorite group has caught your eye.


We will organize the small distribution of free stuff for those who aspire to bring something good, kind, wise, and eternal to children.


Google's co-workers and the Centre of Mathematics and Computer Science in Amsterdam, presented the first algorithm generating collisions for SHA-1.


The idea of editing the user environment variables to elevate the rights in penetration testing is as old as the world.

Never miss a story by Walter Benjamin, when you sign up for Bod Press.
Sign up