Overview

Introduction

Welcome to my Kernel From Scratch (KFS) project documentation! This repository contains my implementation of the École 42 "Kernel From Scratch" curriculum, consisting of 10 progressive projects designed to explore and understand kernel architecture from the ground up in the language C.

⚠️ This project is in early stage development. It's not yet ready for production use.

Technical Requirements

  • Target Architecture: i386 (x86_32)
  • Build System: Custom Makefile required
  • Programming Language: Not restricted to any specific language
  • Compiler Flags:
    • -nostdlib: Prevents linking with standard library
    • -fnodefaultlibs: Excludes default library functions
    • -fno-stack-protector: Disables stack protection mechanisms
  • Custom Linker: Implementation of a custom linker is mandatory
  • No cheating! All code must be original; no copying + pasting allowed

Documentation Structure

Each project in this repository is documented with:

  1. Project Goals and Requirements
  2. Technical Approach and Implementation Details
  3. Challenges Encountered and Solutions
  4. Conclusions and Lessons Learned

Join me

Feel free to explore each project's documentation to understand building a kernel from scratch. The projects are organized sequentially, with each building upon the knowledge and components developed in previous sections.