GEF 435 Principes des systèmes d’exploitations

Slides:



Advertisements
Présentations similaires
Module Systèmes d’exploitation
Advertisements

Module Systèmes d’exploitation
Module Systèmes d’exploitation
Module Systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Le matériel des ordinateurs Revue Pt II (Tanenbaum 1.4)
GEF 435 Principes des systèmes dexploitation Structure du logiciel dE/S Partie II (Tanenbaum & 5.3.4)
GEF 435 Principes des systèmes dexploitation Principes et structure du logiciel dE/S (Tanenbaum 5.2 & 5.3)
GEF 435 Principes des systèmes dexploitation Les systèmes dexploitation en général (Tanenbaum 1.1 et 1.3)
Le Concept du programme enregistré
Module Systèmes dexploitation Chapitre 6 Communication Interprocessus Partie III École Normale Supérieure Tétouan Département Informatique
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’exploitation
GEF 435 Principes des systèmes d’exploitation
Hiver 2005Maj JGA Beaulieu & Capt MWP LeSauvage GEF 243B Programmation informatique appliquée Considération de temps.
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) II (Tanenbaum 2.3)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Communication Interprocessus (CIP) III (Tanenbaum 2.3)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Structure des systèmes dexploitation (Tanenbaum 1.7)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Concepts des Systèmes dexploitation (Tanenbaum 1.5)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes dexploitation Appels de système (Tanenbaum 1.6)
GEF 435 Principes des systèmes d’exploitation
GEF 435 Principes des systèmes d’exploitation
GEF 243B Programmation informatique appliquée
GEF 435 Principes des systèmes d’exploitation
PLAN du COURS Introduction Structure des Systèmes Informatiques
Introduction aux Systèmes d’Exploitation
Objectif de l’exposé.
Le Concept du programme enregistré
Mémoire & Processus Cours SE - SRC
Système d’exploitation : Assembleur
Parallel Programming in C with MPI and OpenMP
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
Chapitre 2 Système d’Exploitation Gestion des Processus
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
Structures des Systèmes d’Exploitation
Module 51 Module 5 - Synchronisation de Processus (ou threads, ou fils ou tâches) Module 5 - Synchronisation de Processus (ou threads, ou fils ou tâches)
GPA435 Systèmes d’exploitation et programmation de système
Programmation concurrente
Composantes d’un Ordinateur
1 Module 3 - Fils (Threads) Lecture: Chapitre 4 Objectif: Comprendre le concept de fils et sa relation avec le processus Comprendre le concept de fils.
Chapitre 6 (Silberchatz)
Mécanismes d'exécution et de communication
Ordinateurs, Structure et Applications
Qu’est-ce qu’un système d’exploitation ?
Systèmes d'exploitations Processus
Programmation Système et Réseau
ISBN Chapitre 10 L'implémentation des sous- programmes.
Simulateur de microcontrôleur Intel 80C51
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.
Ordonnancement (Scheduling)
Cours Système LI324 Les Interruptions Cours Système LI324
Les Processus.
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
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.
UNIX AVANCE Yves PAGNOTTE – Janvier – QUELQUES RAPPELS SUR LES SYSTEMES D’EXPLOITATION 1.
Chapitre 12 Surveillance des ressources et des performances Module S41.
1 UNIX AVANCE Yves PAGNOTTE – Janvier – LES PROCESSUS SOUS UNIX.
Transcription de la présentation:

GEF 435 Principes des systèmes d’exploitations Processus (Tanenbaum 2.1)

Revue Quelles sont les cinq structures des SE discutées le dernier cours? Qu’est-ce qu’un système d’exploitation virtuel? Monolithic Layered Virtual Machine Exokernel Client-Server

Synopsis Processus Le modèle des processus Création de processus Terminaison de processus État des Processus Implémentation d’un processus Revue des interruptions

Processus Le processus est LE concept central dans les systèmes d’exploitation Un processus est une abstraction d’un programme en exécution Auquel on a donné des ressources Un certain nombre de processus (2 ou plus) exécutant en même temps forment un système multitâches, multithreads, ou multiprogrammation Est-ce que ces programmes exécute vraiment en parallèle?

Le model des processus Le model des processus est tout simplement l’idée que tout logiciel qui est exécutable est organisé en un nombre de processus séquentiels incluant le SE.

Processus Conceptuel Écoulement du prog Is the rate at which a process performs its computation uniform? Almost certainly not...CPU is interrupted for all sorts of things like interrupt requests and other processes may use more or less of their slice on each pass. What is the implication for this when using a for...next loop to insert a delay. Could you use it to insert delays when reading from a disk? Écoulement du prog Temps d’exécution des processus

Processus Pseudo-parallélisme est parfois utilisé pour référer à des processus multiples exécutant sur un seul processeur Ceci diffère du parallélisme sur un système à multiprocesseurs

Création de Processus Certains SE peuvent être capables de créer tout les processus requis durant l’initialisation Les systèmes communs ont besoin de créer des nouveaux processus durant l’opération. Quand? Initialisation du système Exécution d’un système de création de processus appelé par un processus en exécution Demande d’un utilisateur pour créer un processus Initialisation d’une job batch Ask for examples Microwave oven MP3 player The point is these systems have very specific purposes, not general purpose

Création de Processus Initialisation de système Demande de processus en exécution Demande d’utilisateur Note that Running Process request is really a catch-all for the other. A process could not be started without a request from a bit of executing code, which must be in a process The distinction is why...if it was for a process to get help in accomplishing a task then it is referred to as “Execution of a process creation system call by a running process. Batch requests only happen on batch systems on large mainframes. Users submit jobs that have no immediate requirement to be done and the OS decides when it has the resources to run the next request.

Terminaison de Processus Je serai Gouverneur. Les processus terminent quand la job est faite. Raisons de terminaison Normale (volontaire) Erreur (volontaire) Erreur fatal(involontaire) Tué par un autre processus (involontaire) Volutary error exit is when the program finds the error and decides to exit. Example: myImage = LoadImage(“ahnold.jpg”) if(myImage = 0) notify(“Error in loading image. Program will exit.”) end end if Fatal error is caused by things like accessing memory out of bounds ore dividing by zero. Sometimes languages can catch errors like this themselves (try...catch) instead A process with the right authorization can kill another process. This may or may not destroy the chain of process below it in the tree.

Hiérarchies de processus Dans les systèmes où il y a des processus enfants et parents, il y a une hiérarchie qui existe Dans *NIX, un processus et tout ces descendants forment un groupe de processus. Les signaux (clefs frappées sur clavier) peuvent être partagés avec tout les membres du groupe. Windows n’a pas de concept de hiérarchie de processus. Is Windows the system for communists?

États des processus Quand le processus est en exécution ‘running’ il utilise le CPU pour faire son travail Quand le processus est prêt ‘ready’, il voudrait exécuter mais le CPU est alloué à un autre.

États des processus En état bloqué ‘blocked’, le processus ne peut exécuter parce qu’il attend après une condition (entrée/sortie, expiration du chrono, un autre processus etc...) Des fois, des commandes sont appelées pour entrer dans l’état bloqué (block, pause,wait). Parfois le système cause la transition automatiquement à l’état ready (ordonnancement) The system would cause the transition if it saw the process waiting on input, for example. What causes transitions 2 and 3? The scheduler giveth, and the scheduler taketh away.

États des processus Quand le SE a pour but principal l’ordonnancement des processus pour exécution, quel model a le SE? Une couche de processus séquentiel par dessus un ordonnanceur QNX – Black Berry

Implémentation des Processus Comment le SE implémente le model des processus? La table des processus, un tableau ou liste chaînée de structures avec une entrée par processus. Information typique: État des Processus Compteur ordinal Pointeur de pile Allocation de la mémoire État des fichiers ouverts Information de gestion/ordonnancement... Et encore plus!

Implémentation des Processus Champs typiques pour une entrée dans la table des processus

De retour vers les interruptions Maintenant que nous savons les entrées dans la table des processus nous pouvons revisiter les interruptions! Durant une interruption, le matériel pousse le PC, PS, PSW et autres registres sur sa pile. L’ordinateur saute au vecteur d’interruptions. Le matériel a fait son travail à ce point. Maintenant, la routine d’interruption sauve toute l’information du processus dans la table des processus. (une tâche fait en assembleur)

De retour vers les interruptions Une nouvelle pile est établie et l’interruption est servit Quand l’interruption est fini, l’ordonnanceur est appelé pour voir quel est le prochain processus à exécuter Une procédure en assembleur charge les registres la mémoire, etc. avec l’information du nouveau processus, pour commencer l’exécution. Comme de raison les détails varient de système à système.

Questions? Quiz Time! What are the three process states? What is the difference between blocked and ready?