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

Slides:



Advertisements
Présentations similaires
Le micro-ordinateur.
Advertisements

Module Systèmes d’exploitation
Module Systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
Informatique Deug2 Sciences Eco S. Maabout 2004/2005.
Synchronisation des processus père - fils
Types des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Ordonnancement partie I (Tanenbaum 2.5)
GEF 435 Principes des systèmes d’exploitations
GEF 435 Principes des systèmes dexploitation Concepts des Systèmes dexploitation (Tanenbaum 1.5)
La mémoire morte(ROM) Il existe un type de mémoire permettant de stocker des données en l'absence de courant électrique, il s'agit de la ROM (Read Only.
PLAN du COURS Introduction Structure des Systèmes Informatiques
Architecture de machines La mémoire
Architecture de machines La mémoire
Systèmes d’exploitation
Système d’Exploitation
6.1 URDL22005 Systèmes dexploitation Ordonnancement du CPU Concepts de Base Critères dOrdonnancement Algorithmes dOrdonnancement Ordonnancement Multi-Processeur.
Rappel // Basé sur le cours de Dr. Jaber Jemai
Gestion de la Mémoire Bases Swapping Allocation Contigue Pagination
Les Systèmes d’Exploitation
1 Threads et Lightweight Processes Chapitre 5 En français on utilise parfois flots ou fils pour threads. Votre manuel préfère le mot anglais thread : terminologie.
Système d’exploitation
LES MEMOIRES.
Allocation de mémoire Allocation de mémoire.
LES SYSTEMES AUTOMATISES
Les fichiers indexés (Les B-arbres)
8.1 URDL22005 Systèmes dexploitation Interblocages Modèle Système Caractérisation dinterblocage Méthodes pour Gérer les Interblocages Prévention des Interblocages.
Gei 431 Architecture des ordinateurs II – Frédéric Mailhot Et maintenant, où allons-nous? Après toutes les techniques vues jusquici: Que peut-on faire.
GPA435 Systèmes d’exploitation et programmation de système
Programmation concurrente
Gestion de Fichiers Tri Interne Efficace et Tri Externe.
Module 3 : Analyse des performances du serveur
Chapitre 3 Interblocages 3.1. Ressources
Mécanismes d'exécution et de communication
Ordinateurs, Structure et Applications
Qu’est-ce qu’un système d’exploitation ?
L ’Ordonnancement Ordonnancement.
Systèmes d'exploitations Processus
Module 8 : Surveillance des performances de SQL Server
Cours de Systèmes d’exploitations
SYSTÈME D’EXPLOITATION I
Interactions entre Processus
La programmation système
Les Machines RAM.
Programmation Système et Réseau
Microprocesseur famille 68'000 Interface matériel
Doan Chien Thang Aôut,2008.  La vue d'ensemble des systèmes d'exploitation  Les processus et les fils  Gestion de la mémoire  Le système des fichiers.
COMPARAISON DES SYSTEMES DE GESTION DE FICHIERS LINUX / WINDOWS NT
Patricia Renault UPMC 2005/2006
Ordonnancement (Scheduling)
Cours Système LI324 Les Interruptions Cours Système LI324
Représentation digitale des données Trois formats de base: 1) Décimale: base 10 (Une constante i.e dimension d ’1 vecteur) 2) Binaire: base 2 ( Mask, set/reset.
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Les Processus.
Architecture et technologie des ordinateurs II
Systèmes d’exploitation Processus conclusion Modèle conceptuel de processus Pour masquer les effets des interruptions, les SE fournissent un modèle conceptuel.
1.1: notions de bases de l’informatique
L3 Instrumentation Pétrolière S6
Raison d'être de la structure de fichiers : Les premiers travaux : Début des années 1960 : En 1963 : Près de 10 ans plus tard... (à peu près 1973) : Durant.
Architecture d’un ordinateur
LES MEMOIRES et le décodage d’adresses
Les mémoires la préparation de: chaimaa hamdou.
ARCHITECTURE MATERIELLE D’UN SYSTEME A MICROPROCESSEUR
Gestion des Tâches Les Processus. Un système multitâches La carte mère comporte Le Processeur (calcul et attente) Les jeux de composants spécialisés (entrées-sorties.
Chapitre 12 Surveillance des ressources et des performances Module S41.
Architecture d'un automate programmable
1 UNIX AVANCE Yves PAGNOTTE – Janvier – LES PROCESSUS SOUS UNIX.
CSI 3531 Systèmes d’exploitation Nathalie Japkowicz 1.
Systèmes à microprocesseur Les mémoires
Transcription de la présentation:

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

La Gestion de la Mémoire

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.

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

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)

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.

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

Hiérarchie Mémoire

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.

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

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.

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.

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.

LES PROCESSUS

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)

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)

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.

Etats d’un processus

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.

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.

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.

Ordonnancement Circulaire

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

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

Ordonnancement avec priorité

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.

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)

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

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.

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.

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)