Etienne BAUDOUX

Forum sur les projets de Etienne BAUDOUX


skiftOS: Un système d’exploitation fais main et avec amour :3

Partagez
avatar
TheMonax
Nouveau
Nouveau

Masculin Nombre de messages : 65
Age : 19
Localisation : Ma maison :D
Emploi/loisirs : SZ, VB.NET, C, C++, C#, lua, python
Humeur : Il fais un peu chaud dans mon pays mais aussi non ça passe :)
Date d'inscription : 15/03/2014

skiftOS: Un système d’exploitation fais main et avec amour :3

Message par TheMonax le Lun 6 Aoû 2018 - 1:07

Bonjour, je m’appelle Monax et vous vous souvenez surement de moi pour LoozerOS.
J'ai maintenant 19 ans et ressassement j'ai fait un peu de tri dans mes favoris et je suis retombé sur ce bon vieux forum velersoftware.
Et je me suis dit "Tiens, et si je leur parlais de mon projet actuel en plus il est écrit avec Visual Studio code donc sa compte ? non ? Razz "



skiftOS


skiftOS est un système d'exploitation pour CPU x86 32bit entièrement écris a la main en C.
 Il ne dépend ni de Windows, ni de linux, ni de rien du tout en fait. C.A.D que c'est un vrais système d'exploitation qui démarre nativement.
L' objectif est de ce projet est l'apprentissage du fonctionnement détailler d'un système d'exploitation.


"Oui sa un peu moins de classe que la version original écrite en VB.NET Embarassed"

"L'écran de panic du système, c'est un peu l’équivalent d'un BSOD"


Histoire
[En rédaction]


"LoozerOS écrit avec SoftwareZator puis porter vers VisualStudio 2010 (2013-2014)"



"SkiftOS réécriture de LoozerOS en full VB.NET (2014-2015)"


Fonctionnalités
Le système est encore à ces premiers pas de bébé car il n'est en développement que depuis un mois, mais il est déjà capable de:

 - initialiser le CPU (GDT, IDT, IRQ, ...)
 - gérer la mémoire physique et virtuelle avec la pagination.
 - faire du multitâche préemptif avec ordonnanceur.
 - quelque driver (disk, port série et vga en mode texte) 

Il dispose aussi de sa propre libc.


Roadmap
Les objectifs a moyen et long terme sont:
 - écris un système de fichier.
 - charger et exécuter des programmes utilisateurs au format ELF (https://wiki.osdev.org/ELF).
 - écrire un shell comme bash(GNU/LINUX) ou sh(UNIX)
 - être compatible POSIX pour pouvoir porter certain utilitaire UNIX/LINUX pour mon système (genre VIM, GCC,...).
 - résaux ? TCP?, IP?, HTTP? 
 - écrire un bootloader pour ne plus dépendre de grub?
 - un site internet ?

Outils de développement
 - GCC: compilateur C
 - NASM: assembleur
 - QEMU: machine virtuelle x86
 - IDE: Visual Studio Code
 - GDB: débogueur


Téléchargements
Code source sur github
ISO virtual box (Indisponible pour le moment)

Comment compiler le système - /!\ Ubuntu 18.04 est recommander.
0. cloné le repos git 
Code:
git clone https://github.com/maker-dev/skift
cd skift

1. Dépendances
- Une environnement Linux (Ubuntu ou Windows subsystem for linux)
- Make, build-essential, NASM, binutils, qemu
- bison, flex, libgmp3-dev, libmpc-dev, libmpfr-dev, texinfo
Code:
apt install build-essential nasm binutils bison flex libgmp3-dev libmpc-dev libmpfr-dev texinfo qemu

Code:
dnf group install "Development Tools" "C Development Tools and Libraries"


2. Mettre en place la chaîne d'outils (peu prendre 5min donc faites-vous un bon café Wink )
Code:
make toolchain

3. Compiler le noyau
Code:
make

4. Démarer le système avec qemu
Code:
make run


Remerciement
 - Blackorion35 : sans qui je ne me serais jamais mis à la programmation sans ces videos de MantrixERS qui m'ont beaucoup inspiré pour créer LoozerOS puis SkiftOS.

Merci d'avance pour vos retours Smile
avatar
polien


Masculin Nombre de messages : 2935
Age : 22
Localisation : Bouches du Rhones
Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
Humeur : Je commence tout mais ne finit rien :P
Date d'inscription : 19/05/2011

Re: skiftOS: Un système d’exploitation fais main et avec amour :3

Message par polien le Dim 26 Aoû 2018 - 21:32

Bonjour,

C'est sympa de passer pour donner l'avancement d'un de tes projets commencé avec SZ . salut (Même si on a tous 20 ans de plus depuis le temps lol )

Le projet a sacrément évolué pour passer d'un sur-bureau basé sur du winform à un os qui a noyau unique !
Bravo pour avoir fait évoluer un tel projet dans une telle direction:super: .



Je testerai à l'occase, quand windows aura décidé de ne plus s'auto-flinguer lui même... roulé de rire


Bonne constinuation !

avatar
TheMonax
Nouveau
Nouveau

Masculin Nombre de messages : 65
Age : 19
Localisation : Ma maison :D
Emploi/loisirs : SZ, VB.NET, C, C++, C#, lua, python
Humeur : Il fais un peu chaud dans mon pays mais aussi non ça passe :)
Date d'inscription : 15/03/2014

Re: skiftOS: Un système d’exploitation fais main et avec amour :3

Message par TheMonax le Lun 27 Aoû 2018 - 17:32

@polien perso sa fais 2mois que je suis passer full linux et je ne regrette pas Smile

Je vais essayer d'utiliser v86.js qui est un émulateur pc qui s’exécute dans le navigateur pour vous proposer une démo comme sa pas besoin d'installer virtualbox Wink

Mais pas tout de suite, car je travaille sur le chargeur de programme: 
"Un Hello world compiler en ELF avec GCC et charger pas le système"
avatar
polien


Masculin Nombre de messages : 2935
Age : 22
Localisation : Bouches du Rhones
Emploi/loisirs : velo, informatique, électronique, robotique, modélisme feroviaire
Humeur : Je commence tout mais ne finit rien :P
Date d'inscription : 19/05/2011

Re: skiftOS: Un système d’exploitation fais main et avec amour :3

Message par polien le Lun 27 Aoû 2018 - 20:56

re,

Le jour où je pourrait faire marcher tout mes jeux avec wine, promis je reste sur linux Razz.

Ok ben je reste dispos pour tester quand ce sera prêt Wink !


Contenu sponsorisé

Re: skiftOS: Un système d’exploitation fais main et avec amour :3

Message par Contenu sponsorisé


    La date/heure actuelle est Dim 21 Oct 2018 - 0:18