Skip to content
This repository has been archived by the owner on May 27, 2024. It is now read-only.

A v. v. basic xv6 based operating system in the making

License

Notifications You must be signed in to change notification settings

Kaushikdey647/x86-kernel-initializer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

try-os

How would you know if you don't try?

DESCRIPTION

Guidance credits goes to CodePulse. This is a 'from-scratch' xv6 bootloader that basically does 3 things:

  • Checks cpuid for cpu architecture.
  • Checks long mode
  • Boots the system
  • Initializes page table
  • Enables paging
  • Allocates stack
  • Prints a few characters onto the screen

INSTALL AND USE

Prerequisites

  • Have docker installed
  • Have QEMU installed
  • A decent IDE for development please

Enter the docker env

  • Build the docker image using sudo docker build buildenv -t try-os (first time only)
  • Enter the environment using
    • Linux/Unix/Mac: sudo docker run --rm -it -v $(pwd):/root/env try-os
    • Make the ISO File: make build-x86_64
  • After Exiting the environment
    • Boot into qemu: qemu-system-x86_64 -cdrom dist/x86_64/kernel.iso

About

A v. v. basic xv6 based operating system in the making

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published