Skip to content
@the-strife-project

The Strife Project

An OS based on beauty and security. Made with ❤️ by @jlxip.

Strife has been marked as finished. Read the farewell.


Strife is an x86-64 microkernel operating system made in C++ from scratch. It doesn't aim to be a substitute for any existing one, but:

  • It's an exercise for myself
  • It's a way to show the feasibility of the different ideas I propose
  • At the state it was on September 2022, it was my Bachelor Thesis

Strife is, according to Empedocles, the force that separates the elements.

The whole project aims to be three things:

  • Secure. It makes some already existing security measures as non-optional (ASLR, RELRO, NX stack...). Plus, the whole memory layout of the kernel is designed to be resistant to Meltdown and Spectre attacks.
  • Beautiful. When possible and appropiate, Strife gives simple solutions to complex problems, even if they're not the absolute fastest. I've done my very best to write easy to read code. Note, however, that the code is not a tutorial, do not take everything I do as the best solution, or even a good one. Have your own judgment.
  • Modular. Strife is not, unlike most hobbyist operating systems, a repository with thousands of files that all have to be compiled in order to get an ISO. It is an anarchic collection of drivers, services, tools, and a kernel, of course. Because of this, you choose what goes in and what's left out. A distribution is, hence, mandatory. An official one is given (link at the end of this README), which bundles everything.

The only parts that are not written by me are the bootloader (currently using Limine, which I recommend), and the userspace allocator (Durand's liballoc, which I will probably change in the future).

Lost? Understandable. There are a lot of repositories here. Ignore the list of GitHub and click here.

This is fruit of many years of research and debugging. It's the work of my life. Do not undervalue the thousands of hours of effort put into this project.

Click here to begin.

Pinned Loading

  1. Strife Strife Public archive

    An OS based on beauty and security.

    Makefile 21

  2. projects projects Public archive

    Lost? Click here.

    1

  3. kernel kernel Public archive

    A microkernel I'm very proud of

    C++ 6

  4. stdlib stdlib Public archive

    Standard C++ library

    C++ 1

  5. STL STL Public archive

    C++ Standard Template Library

    C++ 1 3

  6. loader loader Public archive

    Program loader in userspace

    C++ 1

Repositories

Showing 10 of 29 repositories

Top languages

Loading…

Most used topics

Loading…