Ces projets à me rendre peuvent vous rapporter des points de bonification à l'examen.
Projet 1 - A rendre avant le 15 janvier 2005
Vous devez me rendre :
- Exercice 1 des exercices complémentaires du chapitre 2 (ici)
- Question B et C de l'exercice 2 des exercices complémentaires du chapitres 3 (ici)
Les réponses sont à envoyer par mail sous format électronique (un scan suffit si nécessaire)
Question 1:
On considère le programme suivant :
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
void main()
{
pid_t p1, p2 ;
p1 = fork() ;
p2 = fork() ;
pause() ;
}
Combien de processus sont lancés par la commande a.out? A partir du résultat de la commande ps -l, donnez la généalogie de cette famille. Donnez pour chaque processus, les valeurs des variables p1 et p2.
Question 2:
On considère un système monoprocesseur et les 4 processus P1, P2, P3 et P4 qui effectuent du calcul et des entrées/sorties avec un disque selon les temps donnés ci-dessous :
Processus P1
Calcul : 3 unités de temps
E/S : 7 unités de temps
Calcul : 2 unités de temps
E/S : 1 unité de temps
Calcul : 1 unité de tempsProcessus P2
Calcul : 4 unités de temps
E/S : 2 unités de temps
Calcul : 3 unités de temps
E/S : 1 unité de temps
Calcul : 1 unité de temps
Processus P3
Calcul : 2 unités de temps
E/S : 3 unités de temps
Calcul : 2 unités de tempsProcessus P4
Calcul : 7 unités de temps
B On considère maintenant que l'ordonnancement sur le processeur se fait selon une politique à priorité préemptible : le processus élu à un instant t est celui qui le processus prêt de plus forte priorité. On donne priorité (P1) > priorité (P3) > priorité (P2) > priorité (P4).
On considère que l'ordre de services des requêtes d'E/S pour le disque se fait toujours selon une politique FIFO.
Sur le graphique suivant, donnez le chronogramme d'exécution des 4 processus P1, P2, P3 et P4. Vous distinguerez les états des processus : Prêt, Actif et Bloqué et vous indiquerez le contenu des files dattente des processus (attente processeur et attente du disque). Pour vous guider, la première unité de temps est déjà portée sur le chronogramme. Elle diffère du graphique de la question précédente, puisque lordre de priorité des processus impose un ordre dans la file dattente différent. Donnez le temps de réponse moyen obtenu.
![]()
C On considère toujours que l'ordonnancement sur le processeur se fait selon une politique à priorité préemptible : l'ordre des priorités des 4 processus reste inchangé.
On considère maintenant que l'ordre de services des requêtes d'E/S pour le disque se fait également selon la priorité des processus : le processus commençant une E/S est celui de plus forte priorité parmi ceux en état d'attente du disque. Une opération d'E/S commencée ne peut pas être préemptée.
Sur graphique suivant, donnez le chronogramme d'exécution des 4 processus P1, P2, P3 et P4. Vous distinguerez les états des processus : Prêt, Actif et Bloqué et vous indiquerez le contenu des files dattente des processus (attente processeur et attente du disque). Pour vous guider, la première unité de temps est déjà portée sur le chronogramme. Elle est identique à celle du graphique de la question précédente, puisque lordre de priorité des processus est le même. Justifiez votre raisonnement, en expliquant la gestion des files dattentes et les transitions des processus. Donnez le temps de réponse moyen obtenu.