Logo Lanfrica

kudus-jall/SLeOS-COMP323

Domaine:

digital infrastructure

Type de record:

software
Créateur:
kud
Hôte:
Sierra Leone OS (SLeOS) — A minimal bootable operating system prototype built with C/Assembly, featuring FCFS + Round-Robin scheduling, paging-based memory management, and an interactive shell. Developed for COMP 323 - Operating Systems at Limkokwing University, Sierra Leone. # SLeOS — Sierra Leone Operating System ## A Minimal Bootable OS Prototype **Limkokwing University of Creative Technology — Sierra Leone** **Faculty of Information and Communication Technology | March–July 2026** --- ## Project Overview SLeOS is a minimal bootable operating system kernel built from scratch in C and x86 Assembly. It runs inside the **QEMU** emulator, making it fully accessible on standard hardware. > *"Welcome to Sierra Leone OS — Built by Limkokwing Students"* ### Goals - Demonstrate core OS concepts: bootloading, process scheduling, memory management - Address Sierra Leone's computing challenges through low-resource, open-source design - Provide a hands-on learning platform for future ICT students --- ## Features | Component | Description | |-------------------|---------------------------------------------------------------| | **Bootloader** | NASM Multiboot-compliant bootloader, loads kernel at 1MB | | **VGA Driver** | 80×25 colour text-mode driver with scrolling and cursor | | **Scheduler** | FCFS + Round-Robin with context-switch simulation & Gantt | | **Memory Manager**| Paging (32 pages) + segmentation simulator with visual map | | **Filesystem** | Simple in-memory filesystem with create/read/list | | **Shell** | Interactive keyboard-driven shell with 10 built-in commands | --- ## Project Structure ``` sleos/ ├── boot/ │ └── boot.asm # Multiboot-compliant bootloader (NASM) ├── kernel/ │ ├── kernel.c # Kernel entry, boot banner, init sequence │ ├── vga.h / vga.c # VGA 80x25 text driver │ ├── scheduler.h/.c # FCFS + Round-Robin process scheduler │ ├── memory.h/.c # Paging + segmentation memory manager │ ├── shell.h / shell.c # Interactive shell with filesystem ├── iso/ │ └── boot/grub/ │ └── grub.cfg # GRUB bootloader config ├── linker.ld # GNU LD linker scri …

Licenses