From 5a1314a97af16109793eaea7ac5dc1d915c70454 Mon Sep 17 00:00:00 2001 From: Klagarge Date: Sun, 24 Mar 2024 16:45:01 +0100 Subject: [PATCH] add PCR, ALP --- infotro/PTR/PCO.md | 202 +++++++++++++++++- infotro/PTR/medias/ordonnanceur.png | Bin 0 -> 30971 bytes .../medias/synthese_diagram_queue_process.png | Bin 0 -> 37485 bytes 3 files changed, 197 insertions(+), 5 deletions(-) create mode 100644 infotro/PTR/medias/ordonnanceur.png create mode 100644 infotro/PTR/medias/synthese_diagram_queue_process.png diff --git a/infotro/PTR/PCO.md b/infotro/PTR/PCO.md index 3fdffaa..e55594f 100644 --- a/infotro/PTR/PCO.md +++ b/infotro/PTR/PCO.md @@ -20,8 +20,8 @@ Cela permet d'éviter de bloquer toutes les applications lorsqu'une seule est en La programmation concurrente sur plusieurs CPU permet en plus un gain de temps. # Exclusion mutuelle -un programme est une entité statique -un processus est une entité dynamique +- un programme est une entité statique qui contient des processus +- un processus est une entité dynamique (il s'agit d'une tâche en cours d'exécution) Les processus ne sont jamais totalement indépendants. Ils partagent des ressources (mémoire, fichiers, périphériques, variable, etc.) @@ -196,7 +196,7 @@ Sinon, **un** processus peut modifier la ressource et aucun peut lire. ```cpp void BeginRead(void) { osSemaphoreAcquire(rw, osWaitForever); - osSemaphoreAcquire(mutexNbReader, osWaitForever); // ENTER CRITICAL SECTION + osSemaphoreAcquire(mutexNbReader, osWaitForever); // ENTER CRITICAL SECTION nbReader++; if(nbReader == 1) osSemaphoreAcquire(w, osWaitForever); osSemaphoreRelease(mutexNbReader); // EXIT CRITICAL SECTION @@ -221,13 +221,98 @@ void EndWrite(void) { } ``` +# Coopération-Synchronisation +La coopération entre processus implique la synchronisation entre eux pour éviter de ressource. +## Évènement +L'évènement est un outil permettant de résoudre un problème de synchronisation comme les sémaphores ou les mutex. +On peut manipuler les évènements : +- ***Wait()*** : Attendre un évènement +- ***Signal()*** : Déclencher un évènement +- ***Init()*** : Initialiser un évènement +On peut aussi résoudre un problème de synchronisation entre processus avec un sémaphore initialisé à 0. On peut le comparer +à une barrière déclenchable depuis un autre processus. -# Synchronisation +Les sémaphores ne permettent pas de résoudre tous les problèmes de synchronisation. Trop grand risque de DEADLOCK. +Il faut utiliser d'autres outils plus performants. +## Le moniteur (monitor) +On peut l'imager avec une classe entièrement protégée par des sémaphores pour l'accès au variable et fonction (procédure). -Etat d'un processus : +Le moniteur possède comme primitive : +- ***x.wait*** : bloque le processus jusqu'à ce qu'un x.send soit émis. +- ***x.send*** : débloque le processus qui attend sur un x.wait. + +```pascal +monitor M; +defines DepositeChar, TakeChar; + +var + c : char; + chAvailable : boolean; + x : signal; + + procedure TakeChar(var ch:char); + begin + if not chAvailable then x.wait end if; + ch := c; + chAvailable := FALSE + end TakeChar; + + procedure DepositeChar(ch:char); + begin + c := ch; + chAvailable := TRUE; + x.send + end DepositeChar; + +begin + chAvailable := FALSE +end M; +``` +```pascal +process Keyboard; +uses M; + var cRead: char; +begin + ... + Read a character on keyboard + Put it in the cRead variable + M.DepositeChar(cRead); + ... +end Keyboard; + +process Screen; +uses M; + var cWrite: char; +begin + ... + M.TakeChar(cWrite); + Write the character cWrite on the screen + ... +end Screen; +``` + +## Producteurs / consommateurs +Le problème survient lorsque le producteur envoie un message au consommateur via une queue. +[Example](https://git.kb28.ch/Klagarge/PTR-Queue/src/branch/master/main.c) + +- ***Le producteur*** (Producer) doit être mis en attente s'il veut déposer un message alors que le tampon est plein +- ***Le consommateur*** (Consumer) doit être mis en attente s'il veut prélever un message alors que le tampon est vide +- ***Le producteur*** (Producer) en attente doit être débloqué dès que le consommateur (Consumer) prélève un message + - à ce moment le tampon n'est plus plein +- ***Le consommateur*** (Consumer) en attente doit être débloqué dès que le producteur (Producer) dépose un message + - à ce moment le tampon n'est plus vide + +On peut résoudre aisément le problème producteurs-consommateurs avec un moniteur ainsi qu'avec un sémaphore. + +Solution à chier :
+Le producteur attend que le consommateur soit capable de réceptionner le message, ainsi les deux peuvent +continuer leurs exécutions (principe de rendez-vous). Ce concept ne possède pas de buffer. + +# Allocation processeur +État d'un processus : ![img_1.png](img_1.png) @@ -238,3 +323,110 @@ contiennent le registre de status et un pointeur sur sa stack. Ils sont utilisé 3. Il va prendre le descripteur du prochain processus et utiliser ses registres. 4. Le processus continue jusqu'au nouveau switching context. +## Cycle processeur +Un processeur réalise alternativement une suite de : +- ***Cycles processeur*** (CPU burst cycle) +- ***Cycles d'entrée-sortie*** (I/O burst cycle) + +Lorsque le temps de cycle processeur est petit et qu'il y a une attente engendrée par les entrées-sorties, il est pertinent de partager +le processeur entre plusieurs processus. + +## Queues d'ordonnancement +Les processus en attente du processeur sont placés dans une liste appelée **queue de processus prêts** (ready queue). +Cette queue peut être gérée comme une file FIFO, une liste de priorité, un arbre, une pile, une liste non-ordonnée, etc. + +Cette queue est sous forme d'une liste chaînée qui contient des pointeurs sur les descripteurs de processus. +Les processus qui ont besoins d'une ressource sont placés dans une liste d'attente correspondant à la ressource (mutex/sémaphore). + +L'ensemble des queues peut être regroupé dans le diagramme de synthèse suivant : +![synthese_diagram_queue_process.png](medias/synthese_diagram_queue_process.png) + + +## Ordonnanceurs +![ordonnanceur.png](medias/ordonnanceur.png) + +### Ordonnanceur à court terme +- Sélectionne un nouveau processus toutes les millisecondes. +- Doit être très rapide +- Est très simple + +### Ordonnanceur à long terme +- Contrôle le degré de multiprogrammation, c'est-à-dire, le nombre de processus en mémoire. +- Assure que la charge globale du processeur soit répartie équitablement entre les processus réalisant beaucoup d'entrée-sorties et les + processus réalisant beaucoup de calculs. +- S'exécute peu fréquement +- La complexité de ce dernier augmente fortement. + +### Le swapping +On peut augmenter la RAM avec de la mémoire virtuelle (swap) pour garder les processus et ne pas les mettre en stockage +long termes. + +### Distributeur de tâches +Il distribue au processeur les processus sélectionnés par l'ordonnanceur court terme. +- Il charge les registres du processus sélectionné +- Il change en mode utilisateur depuis le superviseur. Ce dernier servant à modifier les registres. +- Il met à jour le PC + +## Critères de performance +- ***Efficacité** (CPU utilisation) : Taux d'utilisation du processus +- ***Débit*** (troughtput) : Nombre de processus par unité de temps +- ***Temps global*** (turnaround time) : Temps qui s'écoule entre la soumission du processus et la fin de son exécution +- ***Temps d'attente*** (waiting time) : Temps d'attente d'un processus dans la queue des processus prêts +- ***Temps de réponse*** (response time) : intervalle de temps entre l'heure de soumission et l'heure de la première réponse + +## Algorithme d'ordonnancement +L'allocateur du processeur doit sélectionner quels processus situés dans la queue des processeurs prêts doivent recevoir le processeur. + +### FIFO +L'algorithme FIFO est le plus simple. Il sélectionne le premier processus de la queue des processus prêts. Mais, il n'est +pas forcément le plus efficace. + +### Le plus court d'abord +Le processus avec la plus petite suite d'instruction est exécuté en premier. Si deux processus ont le même nombre d'instructions, +on peut utiliser un algorithme FIFO pour déterminer le vainqueur. Il est performant, mais c'est compliqué de connaître +le nombre d'instructions. + +Il nécessite d'éstimer en temps réel la longueur du processus. + +$$\tau_{n+1} = \alpha\cdot t_{n}+(1-\alpha)\cdot \tau_{n}$$
+$\tau_{n+1}$ : prochaine valeur estimée
+$\alpha$ : coefficient de pondération $0\leq\alpha\leq 1$
+$t_{n}$ : valeur mesurée à l'instant $n$
+$\tau_{n}$ précédente valeur estimée pour l'instant $n$
+ +### Priorité +Cet algorithme donne au processeur le processus qui a la plus haute priorité qui est défini par l'utilisateur. +On peut rencontrer plusieurs problèmes : +- ***Blocage indéfini*** (indefinite blocking) : on reste bloqué dans un processus de haute priorité. +- ***Famine*** (starvation) : Les processus de basse priorité ne sont jamais exécuté. + +***Solution*** : On augmente la priorité dum processus en attente tous les quantums de temps. + +### Ordonnancement avec réquisition (preemptive) +On réévalue l'ordre des processus dans la queue à chaque tick et le processus élu prend ou garde le processeur. + +### Tourniquet (round-robin) +Il est basé sur une tranche de temps fixe soit quantum de temps. On donne à chacun des processus ce temps et on passe au +processus suivant une fois le temps écoulé. +Lorsque le temps est grand, on retrouve en quelque sorte une FIFO, car le temps d'exécution des processus est plus court que +le quantum de temps. +Si le temps est très petit, le tourniquet est appelé **processeur partagé** (processor sharing). + +Overhead : temps perdu pour changer de processus.
+ +### Files multiples (multi-queue) +On utilise cette technique lorsqu'on peut facilement classer les processus en différents groupes. Chaque queue possède son +propre algorithme d'ordonnancement. Un ordonnancement entre les queues est réalisé soit par priorité et réquisition, soit +en round robin. + +### Files multiples imbriquées (multi-level feedback queue) +Cette technique permet aux processus d'évoluer dans des queues en fonction du temps d'exécution écoulé. +- Un processus entrant dans la queue des processus prêts est placé dans la queue 0 +- Si le quantum est écoulé et que la suite d’instruction processeur n’est pas terminée, le processus est placé dans + la queue de priorité inférieure + +Plus on descend dans les queues plus on est de priorité basse. + +Exemple : Plus on descend dans les queues, plus le quantum devient grand. + +# Interblocage diff --git a/infotro/PTR/medias/ordonnanceur.png b/infotro/PTR/medias/ordonnanceur.png new file mode 100644 index 0000000000000000000000000000000000000000..009723249d75fc3fda56b3bc557b0124daddb507 GIT binary patch literal 30971 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%0D|AtdBhA0RnfrR4D} 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%0ABAD%3o+Tk|gTk!Q}BbDR^UQyOA-G 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 MqODwU$MW(20RSIP6aWAK literal 0 HcmV?d00001