That's where i'm practicing osdev learning !
  • C 52.3%
  • Makefile 25.6%
  • Shell 11.8%
  • Assembly 10.3%
Find a file
2026-03-26 09:13:45 +01:00
kernel Actualiser kernel/arch/i386/tty.c 2026-03-26 09:13:45 +01:00
libc feat: meaty barebones 2026-03-26 09:10:59 +01:00
.env add .env file 2026-01-07 16:34:54 +01:00
.gitignore feat: meaty barebones 2026-03-26 09:10:59 +01:00
build.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
clean.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
config.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
default-host.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
headers.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
iso.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
qemu.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00
README.md feat: scrolling 2026-03-24 16:21:43 +01:00
target-triplet-to-arch.sh feat: meaty barebones 2026-03-26 09:10:59 +01:00

Learning OSDev

Introduction

Small project about making an os from scratch

Dependencies

You need yo make a cross-compiler using the following :

gcc version :

Using built-in specs.
COLLECT_GCC=i686-elf-gcc
COLLECT_LTO_WRAPPER=/home/matthieu/opt/cross/libexec/gcc/i686-elf/13.3.0/lto-wrapper
Target: i686-elf
Configured with: ../gcc-13.3.0/configure --target=i686-elf --prefix=/home/matthieu/opt/cross --disable-nls --enable-languages=c,c++ --without-headers --disable-hosted-libstdcxx
Thread model: single
Supported LTO compression algorithms: zlib zstd
gcc version 13.3.0 (GCC) 

ld/binutils version :

GNU ld (GNU Binutils) 2.42

Run

use makefile (make) to build kernel and make iso image or make run to run directly into qemu