- Open source contributions
- A2C compiler
- Operating Systems
- Atomos 1.0
- Eudyptula challenge
- K: a tiny x86 kernel
- Atomos 0.1
- System programming
- EDB: Easy DeBugger
- Vioovi (The elements of computing systems)
- Various system utilities (strace, addr2line, sscov...)
- Evolutek motorcard emulator
- Asservissement telemetry feature
- Programming language theory
- Vioovi again...
- Baccalauréat project: musical scale software
- High-school intra website
Open source contributionsEven if I didn't work a lot on these projects, I think it's still interesting to put them in the list because they are really wonderful.
This project (made by Kevin Klange) is an operating system which is mainly focused on the graphical interface
I did the following tasks:
- I corrected the cmos driver so that it read only true values.
- I made some bug reports.
This project is an attempt to make a transcompiler (source-to-source compiler) which transforms the Epita's algorithmic language to c code.
In this project, I added an english front-end so that international people at Epita could also use the language.
Here is a little fibo in the french and in the english version:
algorithme fonction fibo : entier algorithm function fibo : int parametres locaux local parameters entier n int n variables variables entier i, a, b int i, a, b debut begin a <- 0 a <- 0 b <- 1 b <- 1 pour i <- 1 jusqu'a n faire for i <- 1 to n do b <- a + b b <- a + b a <- b - a a <- b - a fin pour end for retourne a return a fin algorithme fonction fibo end algorithm function fibo variables variables booleen variable_globale boolean variable_globale debut begin ecrire(fibo(10)) write(fibo(10)) fin end
Operating SystemsBecause I love understanding how projects work under the hood, operating systems is one of my favourite tasks.
Python in ring 0 system (or python's runtime operating system) is an attempt to do an operating system focused on python. It's a little deeper than just make cpython work in ring 0, because we really want to design a whole operating system.
Atomos 1.0 is a second version of my own kernel Atomos and is highly inspired of linux 1.0 and the SOS kernel. Futhermore, the goal of this kernel is to make a very classical kernel to be able to do some funnier projects (like pyr0s) over it. The kernel is not really advanced for the moment, but it will get virtual memory, virtual file system, multitasking and maybe modules soon !
The kernel got the current features (for the moment):
- Classical events (exceptions, irq ...)
- VGA text driver
/!\ The project is still in development /!\
Waiting for progression
K: a tiny x86 kernel
K is a LSE tiny kernel project designed for arcade machines. The main goal of this project is to learn about i386 intel architecture.
The kernel got the following features:
- protected mode;
- events (interrupts, exceptions, PIC);
- VGA (text and graphical) framebuffers;
- various drivers: timer, keyboard, mouse, sound, serial ...;
This project was my first kernel (so my first try) and didn't have any advanced features, just a lot of easy ones.