Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/pritamzope/os

Writing & Making Operating System and Kernel parts so simple like Hello World Programs, Starting from writing Bootloaders, Hello World Kernel, GDT, IDT, Terminal, Keyboard/Mouse, Memory Manager, HDD ATA R/W, VGA/VESA Graphics
https://github.com/pritamzope/os

assembly bootloader graphics hello-world kernel kernel-development kernel-driver operating-system os osdev x86-assembly x86-nasm

Last synced: about 1 month ago
JSON representation

Writing & Making Operating System and Kernel parts so simple like Hello World Programs, Starting from writing Bootloaders, Hello World Kernel, GDT, IDT, Terminal, Keyboard/Mouse, Memory Manager, HDD ATA R/W, VGA/VESA Graphics

Awesome Lists containing this project

README

        

# OS
Simple Operating System programs starting from Bootloader in assembly to Kernel in C, and other programs like OS Calculator, Low Level Graphics etc.

Kernel contains C programs for Simple HelloWorld, Keyboard I/O etc... and little bit assembly programs for low level operations.

VGA contains C kernel and assembly program for seeting up Video Graphics Array(VGA) and drawing some basic shapes by ploting pixels.

Tic-Tac-Toe a simple tic-tac-toe DOS game with boxes, Pong-Game using graphics

# Requirements :-

(install following packages using apt-get)

1) GNU/Linux :- Any distribution

2) make :- make utility

3) Nasm :- NASM Assembler(nasm)

4) GCC :- GNU Compiler Collection, C compiler

5) xorriso :- A package that creates, loads, manipulates ISO 9660 filesystem images.(man xorriso)

6) grub-pc-bin: GRUB binaries and modules

7) mtools: utilities to access DOS disks in Unix

8) grub-mkrescue :- utility to make ISO image

9) QEMU :- Quick EMUlator to boot our kernel

10) VirtualBox :- A full graphical virtual environment

```
$ sudo apt-get install make nasm gcc grub-pc-bin mtools xorriso qemu qemu-system virtualbox
```

# NEW KERNEL

A new modified source code has been added to "NEW KERNEL" directory.
Compilation scripts are replaced with Makefile.
Assembly code is replaced with NASM assembly rathen than GNU AS.

## Order

  1]   Console

  2]   GDT

  3]   IDT

  4]   TSS

  5]   Keyboard

  6]   Terminal

  7]   Timer

  8]   Mouse

  9]   FPU

10]   Memory Info

11]   Physical Memory Manager

12]   KHeap

13]   Paging

14]   ATA read/write

15]   BIOS 32

16]   VGA

17]   VESA VBE

18]   Bitmap Text