Projet système PC : 2019 - BONNECHÈRE Jean-Baptiste, HUANG Jérôme, HUANG Laurent, LAFFONT Florian, POTONG MBOUCHEKO Valderane, YOEUNG Michel

De Ensiwiki
Révision de 23 mai 2019 à 16:07 par Potongmv (discussion | contributions) (Semaine 8 - 03/04/19 et 05/04/19)

Aller à : navigation, rechercher
Projet Système

Développeurs BONNECHÈRE Jean-Baptiste,
HUANG Jérôme,
HUANG Laurent,
LAFFONT Florian,
POTONG MBOUCHEKO Valderane,
YOEUNG Michel

Equipe

L'équipe est constituée de 6 membres :

Présentation

Réalisation des différentes phases du projet

Phase 1 : prise en main de l'environnement et gestion de l'affichage à l'écran

100 %

Cette étape a été réalisée à l'aide du code récupéré dans le projet PCSEF (premier semestre). C'est ce qui nous servira de base pour la suite du projet.

Phase 2 : Création et lancement de processus de niveau noyau

100 %

On a affiné le code du projet PCSEF en l'adaptant avec les files de priorités fournies, ainsi qu'en utilisant les bons prototypes.

Phase 3 : Ordonnancement, création dynamique et terminaison de processus de niveau noyau

100 %

Phase 4 : Gestion des communications et synchronisation de processus de niveau noyau

100 %

Phase 5 : Séparation des espaces mémoire noyau et utilisateur : gestion de processus utilisateur

75 %

Manque la partie obligatoire pour PCSEA : gestion de la mémoire virtuelle, encore incomplète

Phase 6 : Gestion du clavier et implémentation d'un pilote de console

1 %

Phase 7 : Implémentation d'un interprète de commandes

0 %

Journal de bord

Semaine 1 - 06/02/19 et 08/02/19

  • Prise en main de l'environnement ( sujet et documentation)
  • Récupération du dépôt git
  • Phase 1: Intégration du code pour les prints ( affichage à l'écran)
  • Phase 2: Documentation
  • Phase 3: Documentation
  • Test: Pas encore de test

Semaine 2 - 13/02/19 et 15/02/19

  • Phase 2: Mise en place de la gestion du temps
  • Phase 3: Mise en place de l'ordonnancement, de l'endormissement et de la terminaison des processus ( la structure de queue est encore à adapter)
  • Phase 4: Documentation
  • Test: affichage à l'écran => fin de la phase 1
  • Test: début d'implémentation du test de la structure de queue ( pour comprendre son fonctionnement)
  • Test: test simple de processus ( création, ordonnancement ...) pour vérifier le fonctionnement actuel de la phase 3

Semaine 3 - 20/02/19 et 22/02/19

  • Phase 2: mise en place de l'affichage de l'horloge
  • Phase 4: Début d'implémentation ( structure de file )
  • Test: context_switch et temps partagé => fin de la phase 2
  • Test: fin de la mise en place de test de la structure de queue => compréhension de cette structure
  • Test: Ajout de test un peu plus complexe de processus pour vérifier le fonctionnement actuel de la phase 3

Semaine 4 - 06/03/19 et 08/03/19

  • Phase 3: Implémentation pour s'adapter à la structure du queue fournie
  • Phase 4: Ajout des structures des fonctions permettant les files de messages en attendant la phase 3
  • Test: test de l'endormissement des processus, de l'atteinte de du maximum du nombre de processus, appel simple du système et de l'ordonnance.

Semaine 5 - 13/03/19 et 15/03/19

  • Phase 3: Début d'implémentation des différents fonction de la cycle de vie des processus selon la spécification ( primitive de gestion des processus )
  • Phase 4: Création des listes pour les processus bloqués sur file pleine et sur file vide, les squelettes précédemment mise en place ont été un peu plus complétés
  • Test : test de l'ordonnancement préemptif

Semaine 6 - 20/03/19 et 22/03/19

  • Phase 4: La phase 4 a été finie, elle doit être déboguée
  • Phase 4: Ecriture de tests robustes pour la phase 3

Semaine 7 - 27/03/19 et 29/03/19

  • Phase 3: Bien testée et validée
  • Phase 4: Correction des incluse
  • phase 5 : Analyse et compréhension de la spécification

Semaine 8 - 03/04/19 et 05/04/19

  • Phase 4: Le débogage commence : ajout de message dans une file, récupération du message, suppression de la file, reset de la file, processus bloqué sur file pleine/vide
  • phase 5 : Spécification très peu comprise pour la mémoire virtuelle, début d'implémentation de l'API d'appels système et changement de mode.

Dernière séquence - à partir du 7/04/19

  • Phase 5: Débuts de la gestion de la mémoire virtuelle
  • Phase 5: Gestion terminée des API, appels systèmes depuis le client
  • Test: appels d'une fonction privilégiée à travers le kernel