Skip to content

An operating system built from scratch with a focus on simplicity and customizability.

Notifications You must be signed in to change notification settings

mrinmoy-hex/OS-kernel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A 64-bit Operating system kernel from scratch

This repository houses a custom operating system kernel along with a Docker container for streamlined development and testing.

Demo

Demo1

Prerequisites:

  • A text editor such as Vim or VSCode.
  • Docker for creating our build environment.
  • Qemu for emulating our operating system.
    • Remember to add Qemu to the path so that you can access it from your command-line. (Windows instructions here)
    • or download it in wsl

Setup

Build an image for our build-environment:

docker build buildenv -t test-buildenv

Enter build environment:

  • Linux or MacOS: docker run --rm -it -v "$(pwd)":/root/env test-buildenv
  • Windows (CMD): docker run --rm -it -v "%cd%":/root/env test-buildenv
  • Windows (PowerShell): docker run --rm -it -v "${pwd}:/root/env" test-buildenv
  • Use the linux command if you are using WSL, msys2 or git bash

Build for x86 (other architectures may come in the future):

make build-x86_64

To leave the build environment, enter exit.

Emulate

You can emulate your operating system using Qemu: (Don't forget to add qemu to your path!)

qemu-system-x86_64 -cdrom dist/x86_64/kernel.iso
  • Note: Close the emulator when finished, so as to not block writing to kernel.iso for future builds.

Alternatively, you should be able to load the operating system on a flash drive and boot into it.

Cleanup

Remove the build-evironment image:

docker rmi myos-buildenv -f

About

An operating system built from scratch with a focus on simplicity and customizability.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published