Projet système PC : 2019 - COUILLER Célia, COUPIGNY--WAROT Chloé : Différence entre versions
(→Phase 2 : Création et lancement de processus de niveau noyau) |
|||
Ligne 24 : | Ligne 24 : | ||
=== Phase 1 : prise en main de l'environnement et gestion de l'affichage à l'écran === | === Phase 1 : prise en main de l'environnement et gestion de l'affichage à l'écran === | ||
− | {{Avancement | | + | {{Avancement | 100}} |
Les objectifs de cette phase sont les suivants : | Les objectifs de cette phase sont les suivants : | ||
Ligne 39 : | Ligne 39 : | ||
=== Phase 2 : Création et lancement de processus de niveau noyau === | === Phase 2 : Création et lancement de processus de niveau noyau === | ||
− | {{Avancement | | + | {{Avancement | 100}} |
L'objectif de cette phase est de gérer les processus et leur ordonnancement. | L'objectif de cette phase est de gérer les processus et leur ordonnancement. | ||
− | Une bonne journée a été | + | Une bonne journée a été nécessaire à programmation d'une fonction permettant la création de processus, ainsi qu'au lancement de ce dernier. |
− | Une deuxième journée de travail, nous aura permis d'être capable | + | Une deuxième journée de travail, nous aura permis d'être capable d’ordonnancer les processus par priorité. |
− | Nous avons pour la gestion des interruptions pu nous appuyer sur les codes de Logiciel de Base de l'an dernier. Le gros du travail aura été du debug sur les création de | + | Nous avons pour la gestion des interruptions pu nous appuyer sur les codes de Logiciel de Base de l'an dernier. Le gros du travail aura été du debug sur les création de processus afin d'obtenir des info correctes. |
06/06/2019 : création de processus | 06/06/2019 : création de processus | ||
Ligne 53 : | Ligne 53 : | ||
=== Phase 3 : Ordonnancement, création dynamique et terminaison de processus de niveau noyau === | === Phase 3 : Ordonnancement, création dynamique et terminaison de processus de niveau noyau === | ||
− | {{Avancement | | + | {{Avancement |100}} |
+ | |||
+ | 14/06/19 : les tests 1 à 5 passent en mode kernel | ||
=== Phase 4 : Gestion des communications et synchronisation de processus de niveau noyau === | === Phase 4 : Gestion des communications et synchronisation de processus de niveau noyau === |
Version du 17 juin 2019 à 06:38
Sommaire
- 1 Présentation
- 2 Equipe
- 3 Planning
- 4 Réalisation des différentes phases du projet
- 4.1 Phase 1 : prise en main de l'environnement et gestion de l'affichage à l'écran
- 4.2 Phase 2 : Création et lancement de processus de niveau noyau
- 4.3 Phase 3 : Ordonnancement, création dynamique et terminaison de processus de niveau noyau
- 4.4 Phase 4 : Gestion des communications et synchronisation de processus de niveau noyau
- 4.5 Phase 5 : Séparation des espaces mémoire noyau et utilisateur : gestion de processus utilisateur
- 4.6 Phase 6 : Gestion du clavier et implémentation d'un pilote de console
- 4.7 Phase 7 : Implémentation d'un interprète de commandes
- 5 Journal de bord
- 6 Difficultés rencontrées
Présentation
Equipe
Membres
- Célia COUILLER (filière apprentissage)
- Chloé COUPIGNY--WAROT (filière apprentissage)
Planning
Réalisation des différentes phases du projet
//TODO 1) Dire ce qu'il a été fait
2) Indiquer les éventuelles difficultées
3) Mettre à disposition des captures d'écran si cela est pertinent/vidéos de démo
4) Mettre à disposition le binaire du noyau pour le tester dans un émulateur
Phase 1 : prise en main de l'environnement et gestion de l'affichage à l'écran
Les objectifs de cette phase sont les suivants :
Chacun des membres du binôme doit avoir un environnement de travail fonctionnel. Il faut également faire fonctionner et tester les primitives d'affichage.
Nous avons donc pris le temps de découvrir le sujet, d’installer la base de l'environnement de travail comme indiqué ici.
Nous avons ensuite repris le travail effectué en Logiciel de Base l'an dernier pour implémenter la fonction console_putbytes nécessaire au fonctionnement de printf (merci William !).
Nous avons commencé à regarder le fonctionnement des tests, mais rien mis en place pour le moment.
05/06/2019 : phase 1 terminée (sauf tests)
Phase 2 : Création et lancement de processus de niveau noyau
L'objectif de cette phase est de gérer les processus et leur ordonnancement.
Une bonne journée a été nécessaire à programmation d'une fonction permettant la création de processus, ainsi qu'au lancement de ce dernier.
Une deuxième journée de travail, nous aura permis d'être capable d’ordonnancer les processus par priorité.
Nous avons pour la gestion des interruptions pu nous appuyer sur les codes de Logiciel de Base de l'an dernier. Le gros du travail aura été du debug sur les création de processus afin d'obtenir des info correctes.
06/06/2019 : création de processus 07/06/2019 : interruption + debug processus + debug phase 1
Phase 3 : Ordonnancement, création dynamique et terminaison de processus de niveau noyau
14/06/19 : les tests 1 à 5 passent en mode kernel