Un système d'exploitation de passe-temps simple pour l'architecture x86_64, écrit en C.
La conception est fortement influencée par le noyau Linux, et en tant que tel, vous pouvez trouver de nombreuses similitudes entre les deux.
Ce référentiel est sous licence sous le GPLV3. Voir LICENSE.md pour plus de détails.
J'ai écrit la majeure partie du code ici quand j'avais 16-17 ans et je ne savais pas mieux. Il y a certaines pièces (principalement les bits impliquant des atomiques) dont je ne suis pas particulièrement fier, alors copiez à vos risques et périls. Si vous trouvez un problème, n'hésitez pas à ouvrir un problème ou à envoyer un RP.
Vous aurez besoin:
binutils pour x86_64-elfgcc pour x86_64-elf avec -mno-red-zone et C11 Capacités (instructions) Ensuite, pour construire byteos.iso , exécutez simplement:
makeVous aurez besoin (en plus des dépendances ci-dessus):
x86_64Ensuite, pour courir dans Qemu:
make run Le débogage nécessite une version spécialement corrigée de GDB pour l'interopérabilité avec QEMU. Une fois que vous avez installé, exécutez simplement la cible de debug .
Exécutez d'abord les update-modules faites de la cible pour télécharger les fichiers nécessaires. Ensuite, exécutez simplement make test .
Voir Makefile pour plus de détails.
N'hésitez pas à ouvrir un problème si vous avez des questions / préoccupations ou une requête de traction si vous souhaitez contribuer un code.
Un merci spécial à NO92 pour avoir massivement nettoyé le système de construction.