Skip to content
Gehrig Wilcox edited this page Aug 3, 2018 · 3 revisions

Welcome to the Project-AliOS wiki!

Info

Here you will find documentation on the AliOS project and how the internals work

About

This project is entirely my own hobby. I wanted to know how an Operating System worked, and what better way to learn how an Operating System works than to make one yourself? This really started after the Tegra X1 exploit (CVE-2018-6242) was released and I decided that this is the perfect opportunity to make my own OS because I can start at the BootROM.

Research

Although it would be easier to read a book on Operating Systems and their Internals, I decided to forgo them because I wanted to learn what an Operating System actually is rather than what Operating Systems have turned out to be. I also wanted to feel like this project is entirely my own, rather than the culmination of others work. This project is entirely based on what I already know about Operating Systems, how computer hardware works, and how I think Operating Systems work. This project is not based on any other Operating System and therefore, any and all similarities are purely coincidental.

Purpose

The purpose of this project is for me to learn more about the internal working of Operating Systems and their purpose. Although I would like my Operating System to be secure, I do not expect nor intend for it to be the most secure.

Plans

I would like this to be able to operate on multiple machines. I am starting with ARM as it is used in many embedded machines, many of which have specific hardware implementations, and ARM processors are freely documented on their website.

Structure

I plan on making the kernel a microkernel with just the bare necessities. The kernel will just support communication between hardware and software, as well as managing interrupts and managing processing time. The rest of the Operating System will be a plug-and-play style system where the end-user can pick and choose what utilities they want, such as the shell, GUI, file-system, device drivers etc. This repo will hold the entire source code for the kernel and all utilities I make for the kernel. This includes compilers for the kernel so that others may make their own programs if they choose to do so.

Disclosure

If you choose to use this, I am not liable in any way. It is not designed to be harmful, but I cannot guarantee the safety of any machine this runs on. I am not a security researcher, so I cannot guarantee the safety of this system. I am also not a hardware engineer, so I cannot guarantee that all hardware will work with the software as intended. Furthermore, I am not a performance analyst, so I cannot guarantee speed nor efficiency of this project. I am merely a student learning and applying my knowledge about Operating Systems, therefore, all incidents and repercussions are held accountable to those who decide to use this project.

Author

Gehrig A. Wilcox (2018)

Clone this wiki locally