La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Mémoire & Processus Cours SE - SRC 1 - 2002.

Présentations similaires


Présentation au sujet: "Mémoire & Processus Cours SE - SRC 1 - 2002."— Transcription de la présentation:

1 Mémoire & Processus Cours SE - SRC

2 La Gestion de la Mémoire

3 Introduction La mémoire physique d’un système se divise en deux catégories : La mémoire vive La mémoire de masse Le rôle du système d’exploitation est d’organisée ces mémoires pour en tirer le maximum.

4 Caractéristiques Supports Physiques : Caractéristiques :
Semi-conducteur Magnétique Optique Caractéristiques : Volatile / Non volatile Effaçable / Non effaçable

5 Caractéristiques Capacité : Unité de transfert : Performances :
Nombre de mots. Taille du mot ( Octet ) Unité de transfert : Mot, Bloc, Page, Fichier Performances : Temps d’accès Temps de cycle ( Entre 2 accès) Débit de transfert (1/Temps Cycle)

6 Accès à la mémoire Séquentiel : Temps d’accès linéaire
Direct : Temps d’accès constant Mixte : Accès direct au voisinage de la donnée + Parcours séquentiel Associatif : Accès à la donnée en recherchant une clé dans une table, Temps constant.

7 Exemples RAM ( Random Access Memory) ROM ( Read Only Memory)
Accès Direct (Temps d’accès 10 à 70 ns) Volatile Accès Mode Normal / Mode Page ROM ( Read Only Memory) Accès direct Non volatile Utilisation : Microprogrammes ( BIOS) PROM, EPROM, EEPROM, FLASH EEPROM

8 Hiérarchie Mémoire

9 Rôle du Système d’exploitation
La gestion est un compromis entre performances et quantité. Elle doit remplir les fonctions suivantes : Permettre le partage de la mémoire en allouant des blocs aux différentes tâches. Protéger les espaces mémoires utilisés. Optimiser la quantité de mémoire disponible Traiter les échanges entre mémoire vive et mémoire de masse.

10 Méthodes Un seul processus en mémoire .
Ex : MS-DOS Plusieurs processus en mémoire : Besoin de stocker momentanément des processus sur le disque : swapping Mémoire adressable < mémoire réelle nécessaire : mémoire virtuelle Ex : UNIX

11 SWAPPING Mouvement des processus entre la mémoire principale et le disque. Chaque processus actif occupe une partie variable de la mémoire : Lorsqu’un processus n’est plus actif, il faut le sauver sur le disque. La zone de Swap peut-être prévue à l’avance par le SE ou allouée à la création du processus. Lorsque le processus se réveille, il faut lui trouver une place en mémoire vive : Table d’occupation par blocs.

12 Mémoire Virtuelle Chaque programme considère :
Qu’il s’exécute tout seul à partir de l’adresse 0 Qu’il a toute la mémoire En réalité, plusieurs programmes s’exécutent à la fois : Chacun possède une partie de la mémoire physique. L’accès aux pages mémoires est protégé par le SE. Le SE traduit les adresses virtuelles utilisées par les programmes en adresses physiques : Utilise une table de pages située en mémoire physique.

13 Mémoire Virtuelle Utilité : Exécution de programmes plus grands que la mémoire principale Protection : Les différents programmes n’interfèrent pas. Flexibilité : Les programmes peuvent se placer n’importe où en mémoire.

14 LES PROCESSUS

15 Qu’est-ce qu’un Processus ?
Processus = Unité d’exécution (Unité de partage du temps et de la mémoire) Processus # programme Un programme peut être exécuté plusieurs fois et se trouver dans plusieurs unités d’exécution en même temps. Le SE doit ordonnancer les processus (Scheduler)

16 Eléments de processus Un processus comporte :
Du code machine exécutable Une zone mémoire (données allouées par le processus) Une pile ( pour les variables locales des fonctions) Un utilisateur propriétaire ( qui détermine les permissions d’accès aux fichiers)

17 Etats d’un Processus Un processus peut être dans 3 états possibles :
Elu (Actif) – Processus OK, Processeur OK Prêt (Suspendu) – processus OK, processeur occupé par un autre processus Bloqué (En attente d’un évènement extérieur) Processus non OK, même si le processeur est disponible.

18 Etats d’un processus

19 Ordonnancement Le système doit faire un choix :
Equité : Chaque processus doit avoir du temps processeur. Efficacité : Le processeur doit être utilisé à 100 % Temps de réponse : L’utilisateur devant sa machine ne doit pas attendre. Temps d’exécution : Une séquence d’instructions ne doit pas trop durer. Rendement : Il faut faire le plus de choses possibles dans le temps le plus court possible.

20 Ordonnancement Ordonnancement sans réquisition :
Un processus est exécuté jusqu’à la fin. Ordonnancement avec réquisition : A chaque signal d’horloge, le SE reprend la main, décide si le processus en cours a consommé son quota de temps et alloue éventuellement le processeur à un autre processus. Il existe de nombreux algorithmes d’ordonnancement.

21 Ordonnancement Circulaire
Chaque processus possède un quantum d’exécution Si le processus a fini dans cet intervalle, on passe au suivant. S’il n’a pas fini, il passe en fin de liste et l’on exécute le suivant.

22 Ordonnancement Circulaire

23 Ordonnancement Circulaire
Problème : Réglage du Quantum : Quantum trop petit / Commutation : Le processeur passe son temps à commuter. Quantum trop grand Augmentation du temps de réponse d’une commande

24 Ordonnancement avec priorité
Plusieurs files d’attentes avec un niveau de priorité différent La priorité d’un processus décroît au cours du temps pour ne pas bloquer les autres files d’attentes

25 Ordonnancement avec priorité

26 Ordonnancement Autres algorithmes
Ordonnancement « plus court d’abord » : Estimation de la durée de chaque processus en attente Exécuter le processus le plus court Ordonnancement garanti : Si n utilisateurs connectés, chacun reçoit 1/n du temps processeur.

27 Unix et les processus Processus fils / père :
Ex : le shell est un processus comme les autres. Chaque commande exécutée correspond à la création d’un processus « fils » par rapport au shell (« père »). Chaque processus est identifié par : PID ( Processus Identifier) PPID (Parent Processus Identifier)

28 Unix et les processus 2 Types de processus :
Processus systèmes ( daemons) Exécution de tâches générales, souvent contrôlées par root Processus utilisateurs

29 Modes d’exécution Interactif (foreground) :
Le plus fréquent (on tape une commande, on attend un résultat Interruption de la commande par CTRL C Suspension de la commande par CTRL Z Arrière-plan (background) : La commande est lancée, mais on rend le contrôle à l’utilisateur. Pas d’interaction avec celui-ci.

30 Modes d’exécution Différé (AT) : File d’attente (batch)
Le fichier de commandes est exécuté à une date fixée. Pas d’interaction avec l’utilisateur File d’attente (batch) La commande est placée dans une file d’attente. La file d’attente est vidée en fonction de la charge du processeur Cyclique (Crontab) : Un fichier spécial contient les tâches à exécuter régulièrement. Un daemon scrute sans arrêt ce fichier.

31 Les Threads Processus légers :
Plusieurs Threads à l’intérieur d’un processus. Chaque Thread accède au même segment de mémoire ( donc aux mêmes données)


Télécharger ppt "Mémoire & Processus Cours SE - SRC 1 - 2002."

Présentations similaires


Annonces Google