Commit Graph

256 Commits

Author SHA1 Message Date
Nicolas Hordé 5afa43629d feat: préparation de la gestion du CRAMFS depuis les sources de Linux 2019-01-26 10:50:18 +01:00
Nicolas Hordé acb06bc8a8 feat: mise en place du chargement d'une arborescence CRAMFS pour demarrer le système 2019-01-19 16:23:57 +01:00
Nicolas Hordé 4f7aae792e feat: premier boot opérationnel avec la commande linux16 de GRUB, reste la gestion VESA 2019-01-19 00:17:35 +01:00
Nicolas Hordé 63f7e530cc feat: chargement pmode complet jusqu'à lancement du code pour la décompression 2019-01-15 01:15:58 +01:00
Nicolas Hordé b565d073c7 fix: execution du setup en mode reel fonctionnel, erreur sur A20 2019-01-14 14:54:50 +01:00
Nicolas Hordé d3abee6a74 fix: correction génération code 16bits en C 2019-01-14 11:18:57 +01:00
Nicolas Hordé 0c6b0635ab test: finalisation d'un déboguer efficace 2019-01-12 20:46:00 +01:00
Nicolas Hordé a00965b7a3 docs: ajout d'informations...ERRATA 2019-01-12 01:44:23 +01:00
Nicolas Hordé 705f92ce70 docs: ajout d'informations... 2019-01-12 01:39:05 +01:00
Nicolas Hordé 56a7665e69 test: changement de deboggeur pour GDB+Dashboard modifié 2019-01-11 14:25:48 +01:00
Nicolas Hordé 9da86c9057 feat: première compilation de noyau composite sans l'intégration de la décompression du noyau 2019-01-02 15:47:56 +01:00
Nicolas Hordé e30592d7d4 feat: ajout des informations de déboguage séparée pour les différentes parties du noyau (compressées ou non, mode réel ou non) 2019-01-02 13:59:16 +01:00
Nicolas Hordé fda7fdc711 feat: creation du piggy.o 2019-01-01 19:31:26 +01:00
Nicolas Hordé edaae1d4c2 fix: correction assembler system.S 2019-01-01 13:37:29 +01:00
Nicolas Hordé 32af566aec feat: ajout de mkpiggy du noyau Linux et mise en place d'un noyau composite basé sur Linux 2019-01-01 13:30:06 +01:00
Nicolas Hordé 21bc3d2e3d feat: ajout de code en realmode pour initialisation du pmode et préparation du chargement du noyau 2018-12-30 12:25:20 +01:00
Nicolas Hordé 620f63d101 feat: bascule vers le format de noyau linux afin de bénéficier des outils de chargement qui vont bien 2018-12-27 14:24:47 +01:00
Nicolas Hordé e3d708850d fix: correction du scheduling 2018-12-26 00:54:19 +01:00
Nicolas Hordé 75a8602c5b fix: correction PS pour avoir TOUTES les tâches 2018-12-25 19:39:40 +01:00
Nicolas Hordé c894b99170 fix: pS permettant de visualiser l'ensemble de tâches et processus, corrections asm.h 2018-12-25 19:22:56 +01:00
Nicolas Hordé 6776594ece fix: mise en place d'une commande PS, correction de bogues 2018-12-22 00:19:34 +01:00
Nicolas Hordé 945bca37b5 feat: ajout d'une interruption 20 qui permet de faire un DUMP du cpu sur l'écran 2018-12-20 17:16:51 +01:00
Nicolas Hordé eff52c8853 feat: scheduling opérationnel mais subsiste des bogues inconnus 2018-12-20 16:29:04 +01:00
Nicolas Hordé 74b0b4e2e9 fix: corrections...erreur lors du switch vers la tache de tid 1.1 dans restcpu_kernel 2018-12-19 23:31:13 +01:00
Nicolas Hordé 11428c2415 feat: wrapper pour interruptions et pour l'IRQ0 (Scheduler+Timer) et début d'implémentation du scheduling 2018-12-19 16:13:47 +01:00
Nicolas Hordé dd3e40d53e feat: gestion des processus & tâches, compilation ok mais système figé au démarrage 2018-12-19 12:06:05 +01:00
Nicolas Hordé d2f28e6795 feat: reprise de la gestion des tache / processus et ajout du multithreading, ne compile pas 2018-12-19 07:34:44 +01:00
Nicolas Hordé 0af99c069b feat: ajout de wrappers pour SYSENTER et pour toutes les exceptions. Génération automatique des API par métadonnées dans le source. 2018-12-16 01:50:03 +01:00
Nicolas Hordé 3c3f0bb88e feat: suppression de NASM en tant qu'assembleur et utilisateur de GAS, bascule des handlers sur un nouveau fichier et modification progressive des interruptions/exceptions 2018-12-15 19:13:26 +01:00
Nicolas Hordé ddfba60973 feat: génération semi-automatique des SYSCALL pour le RING3 à partir d'un script python, encore instable 2018-12-14 01:06:37 +01:00
Nicolas Hordé deea5829d3 fix: correction du bogue de memoire dans process.c allocation des processes 2018-12-12 18:49:21 +01:00
Nicolas Hordé 81e7dcaa50 feat: première tâche en mode user totalement fonctionnelle avec préemption par sysenter/sysexit, pas de libération des ressources. Ajout de 2 fonctions API utilisateur 2018-12-12 17:57:23 +01:00
Nicolas Hordé 3c7ddafc2d refactor: ajout d'information dans les fichiers MD, réindentation des fichiers, corrections de bogues 2018-12-12 15:25:04 +01:00
Nicolas Hordé 89ac2cc30f build: correction erreur makefile manquant dans final 2018-12-12 13:47:08 +01:00
Nicolas Hordé c0b832ceed build: correction erreur makefile 2018-12-12 12:37:19 +01:00
Nicolas Hordé 6cdfbcdd28 build: mise à jour des makefile pour indent correct et permissions/format harmonisé 2018-12-12 12:31:30 +01:00
Nicolas Hordé 524af1729c feat: avancement de la création de tâche/processus 2018-12-12 10:14:31 +01:00
Nicolas Hordé 69fa9567a1 feat: fonction task_switch & task_run passe en mode utilisateur RING0 mais plantage lors de l'execution 2018-12-12 00:15:36 +01:00
Nicolas Hordé dd70f75ab8 feat: reprise des fonctions de sauvegarde des registres pour task_switch 2018-12-11 17:00:19 +01:00
Nicolas Hordé 12aacb33f1 fix: correction de la fonction createdump 2018-12-10 19:16:52 +01:00
Nicolas Hordé 44d5634532 fix: préparation au basculement de tâche par la pile fonction task_switch, correction à apporter dans la gestion de la mémoire 2018-12-10 19:12:20 +01:00
Nicolas Hordé a31cf264c3 feat: compilation du noyau en code non relocalisable, commande task_create quasi terminée. Allocation dynamique de page pour les programmes utilisateurs dans exception14 (PGFAULT) 2018-12-10 17:03:52 +01:00
Nicolas Hordé f0f36a0f5c docs: preparation de la compilation de programmes en USER MODE (ring 3), ajout documentation API et librairies 2018-12-09 13:44:32 +01:00
Nicolas Hordé ac537030a3 feat: gestion des tâches, compilation ok, mise en place d'un test par le pseudo-interpréteur, commande : testtask 2018-12-09 11:11:39 +01:00
Nicolas Hordé 11071e5bbd feat: ajout de process.h/c pour la gestion de la création de tâche/processus, non compilable 2018-12-09 00:40:25 +01:00
Nicolas Hordé 8d3da6480a feat: test de syscall, implémentation sous forme de macro et handler opérationnel 2018-12-05 16:42:25 +01:00
Nicolas Hordé 3129b5edcc fix: passage de Frame-omit-pointer à Stack Frame avec EBP, corrections multiple : exceptions ok et deboguage opérationnel 2018-12-05 14:00:43 +01:00
Nicolas Hordé 9041832823 feat: test sans --fomit-frame-pointer, travail sur sysexit 2018-12-04 21:57:44 +01:00
Nicolas Hordé e87aedb02e feat: debut implémentation de sysenter / sysexit et test depuis shell.c 2018-12-04 00:05:55 +01:00
Nicolas Hordé 4ce5c7333c fix: correction fonction bestdriver dans video.c 2018-12-03 23:16:04 +01:00