Skip to content

tutorial use in release 1.0

one to go edited this page Jan 24, 2026 · 1 revision

BloodG OS – Installation & Build Guide

Synchronized with Release: bloodG-os_v1.0

Audience: Intermediate to Advanced users

Project Type: Educational / Experimental OS


1. Relationship Between Wiki and Release

This Wiki page is synchronized with the official GitHub Release:

  • 🔖 Release tag: bloodG-os_v1.0
  • 📦 Scope: Bootloader + Kernel only
  • ❌ Filesystem: Not included

The Release page provides binaries/source snapshots, while this Wiki explains how the OS works and how to build/run it.


2. Boot Flow Diagram (High-Level)

+------------------+
|   BIOS / UEFI    |
+------------------+
          |
          v
+------------------+
|  Boot Sector     |  (boot.bin, 512 bytes)
|  Real Mode       |
+------------------+
          |
          v
+------------------+
| Enable A20 Line  |
+------------------+
          |
          v
+------------------+
|  Protected Mode  |
|  (32-bit x86)    |
+------------------+
          |
          v
+------------------+
|  Kernel Entry    |  (entry.asm)
+------------------+
          |
          v
+------------------+
|  Kernel Main     |  (C code)
+------------------+

3. Source Code Layout


4. Tutorial – Windows (CMD Only, 32-bit Compatible)

4.1 Requirements

  • Windows 32-bit or 64-bit

  • CMD (Command Prompt)

  • Tools:

    • NASM (assembler)
    • C compiler (GCC or TCC)
    • make or mingw32-make
    • QEMU (optional, for testing)

⚠️ Windows 32-bit users may need TCC instead of GCC.


4.2 Build Steps (Windows)

Step 1: Extract Source

unzip BloodGos-opensource.zip
cd BloodGos-opensource

Step 2: Build Bootloader

nasm -f bin boot\boot.asm -o build\boot.bin

Step 3: Build Kernel Entry

nasm -f elf32 kernel\entry.asm -o build\entry.o

Step 4: Build Kernel C Code

gcc -m32 -ffreestanding -c kernel\kernel.c -o build\kernel.o

(or using TCC)

tcc -c kernel\kernel.c -o build\kernel.o

Step 5: Link Kernel

ld -m elf_i386 -T linker.ld -o build\kernel.bin build\entry.o build\kernel.o

4.3 Create Bootable IMG (Windows)

fsutil file createnew bloodg.img 1474560
dd if=build\boot.bin of=bloodg.img bs=512 count=1 conv=notrunc
dd if=build\kernel.bin of=bloodg.img bs=512 seek=1 conv=notrunc

5. Tutorial – Linux (Recommended)

5.1 Install Dependencies

sudo apt update
sudo apt install build-essential nasm qemu-system-x86

5.2 Build on Linux

git clone https://github.com/dda263071-dotcom/BloodGos-opensource.git
cd BloodGos-opensource
make

5.3 Create and Run Image

dd if=/dev/zero of=bloodg.img bs=512 count=2880
dd if=build/boot.bin of=bloodg.img bs=512 count=1 conv=notrunc
dd if=build/kernel.bin of=bloodg.img bs=512 seek=1 conv=notrunc
qemu-system-i386 -drive format=raw,file=bloodg.img

6. Warnings and Professional Notice

⚠️ IMPORTANT

  • BloodG OS is NOT secure
  • No filesystem or userland exists
  • Do NOT deploy on real hardware
  • Intended strictly for learning and experimentation

7. Roadmap (Post v1.0)

  • Filesystem support
  • Interrupt handling
  • Memory management
  • Task switching
  • User mode

8. Reference

  • GitHub Repository
  • GitHub Wiki
  • Release: bloodG-os_v1.0

Clone this wiki locally