OS 2020
OS 2020 est un OS de 32 bits.
Écrit en C et en assemblage (NASM), il fournit un chargeur de démarrage personnalisé, un système de fichiers LIBC et FAT32.
Quelques captures d'écran



Caractéristiques
Ce système d'exploitation vise à améliorer un système d'exploitation plus ancien que j'ai fait nommé «Octos».
Voici la liste des améliorations:
- Système de démarrage: un chargeur de démarrage en deuxième étape est implémenté, il y a donc 2 chargeurs de démarrage, le système d'exploitation est chargé dynamiquement. Il détectera la fin des morceaux au moment de l'exécution
- Bibliothèques: Octos a été écrit en C ++ et avait une bibliothèque standard personnalisée. Le OS 2020 aura une LIBC (non entièrement implémentée, voir ce fichier pour plus de détails) ainsi que un LIBK, la LIBC rassemble les fonctions IO / chaîne principales et les gilets LIBK s'accompagnent
- SYSCALLS: L'objectif principal n'est pas de créer un mode utilisateur mais de fournir des systèmes pour les applications
- Fichier IO: Ce système d'exploitation fournit un pilote FAT32 avec des scripts pour récupérer ou remplacer le système de fichiers du système d'exploitation (voir ce fichier pour plus de détails)
- Applications: OS 2020 contient plusieurs processus (appelés applications) inspirés de Linux comme LS, CAT, Echo et également une coque avec une redirection d'entrée, allez ici pour voir les fonctions de coque
- Mémoire: Octos souffrait de fuites de mémoire en raison de constructeurs / destructeurs C ++. OS 2020 n'utilisera pas les constructeurs et n'utilise C.
Architecture
- Doc: documentation
- SRC / Stage1: First Bootloader Chunk (Full ASM)
- src / stage2: deuxième morceau de chargeur de démarrage
- src / noyau: morceau de base
- SRC / LIB: LIBC et LIBK
Dépèces
- compilateur croisé GCC (pour i386)
- nasme
- mTools (Add / sbin à votre chemin, pour fs)
- Qemu-System-I386 (facultatif, pour tester)
- ObjCopy (facultatif, déboguer)
- GDB (facultatif, déboguer)
- xterm (facultatif, déboguer)