hrasityilmaz/TamgaOs
Experimental BareMetal RTOS written in Zig and C and Arm Assembly - hrasityilmaz/TamgaOs
2 stars · 0 forks · 0 watchers · C Topics: c, arm, kernel, zig, osdev, cortex-m4, cortex-m7, devlog, devlogs, osdevel
README
TamgaOS Bare-metal RTOS written in C and ARM assembly for the NXP K64F (Cortex-M4). Started as a learning project — bootloaders, memory layouts, context switching, executable formats. Later will add zig port
ARM port — K64F (Cortex-M4) Currently active. All kernel work targets the NXP K64F board. Zig port planned for later. Boot
Startup file Linker script (linker.ld) MCG clock init
Kernel
Preemptive scheduler PendSV context switch PSP per-task isolation
Sync
Mutex (LDREX/STREX) Semaphore Critical section (cpsid/cpsie)
Drivers
SysTick UART PIT timer
Still improving — development notes at https://auctra.app x86 port — Zig & C kernel Experimental dual implementation for comparing low-level Zig vs C. Boots via Limine with a Multiboot2 header. Implemented
GDT setup Serial monitor ISO via xorriso Zig + C comparison
Boot output Zig -> TamgaOS KERNEL OK C -> TamgaOS _C_ GDT OK _C_ Kernel OK _C_
Build ARM — K64F make clean make make flash x86 — Zig zig build -Doptimize=ReleaseFast .\mkiso.ps1 qemu-system-i386 -cdrom .\TamgaOS.iso -boot d -serial stdio x86 — C .\mkiso_c.ps1 qemu-system-i386 -cdrom .\TamgaOS_C.iso -boot d -serial stdio Allredy x86 part will not continue active development will be on ARM part !
Not a production OS. Development log: https://auctra.app

