Systèmes & Réseaux. Georges Arhodakis Université Paris 8

Documents pareils
1. Systèmes d entrée/sortie 2. Systèmes de fichiers 3. Structure de mémoire de masse (disques)

Exécutif temps réel Pierre-Yves Duval (cppm)

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Cours de Système : Gestion de Fichiers

Système de Gestion de Fichiers

<Insert Picture Here> Solaris pour la base de donnés Oracle

Le système de gestion des fichiers, les entrées/sorties.

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau

Programmation impérative

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Optimisations des SGBDR. Étude de cas : MySQL

Plan global. Programmation système II. Socket du domaine UNIX. Plan. Socket UNIX, Terminaux, Async IO, Mémoire, ELF.

Programmation système de commandes en C

Session 8: Android File System

Le Network File System de Sun (NFS)

Cours de Systèmes d Exploitation

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Gestion répartie de données - 1

Systèmes d exploitation

La technologie Java Card TM

VMware ESX/ESXi. 1. Les composants d ESX. VMware ESX4 est le cœur de l infrastructure vsphere 4.

Ordinateurs, Structure et Applications

Chapitre IX : Virtualisation

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Architectures d implémentation de Click&DECiDE NSI

Diagrammes de Package, de déploiement et de composants UML

Détection de pollution maritime avec GNU/Linux. Eric Bénard - eric@eukrea.com - 08 juillet 2010

SQL Server 2008 et YourSqlDba

Modélisation des interfaces matériel/logiciel

SYSTÈME DE GESTION DE FICHIERS

Mise en oeuvre TSM 6.1

la virtualisation pour quoi faire?

Introduction aux Systèmes et aux Réseaux

Fiche Produit IPS Manager Assistant

IRL : Simulation distribuée pour les systèmes embarqués

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department

Playing with ptrace() for fun and profit

2 disques en Raid 0,5 ou 10 SAS

Administration de Parc Informatique TP07 : Installation de Linux Debian

Sommaire. 3. Les grands principes de GFS L architecture L accès de fichier en lecture L accès de fichier en écriture Bilan

Guide d'installation et de configuration de Pervasive.SQL 7 dans un environnement réseau Microsoft Windows NT

VMware Infrastructure The New Computing Platform. Stéphane CROIX Systems Engineer

Audit activité base Oracle / SAP

Informatique pour scientifiques hiver Plan général Systèmes d exploitation

Architecture des ordinateurs

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

Réalisation d un OS 32 bits pour PC(x86)

4. Outils pour la synchronisation F. Boyer, Laboratoire Lig

Leçon 1 : Les principaux composants d un ordinateur

Stockage des machines virtuelles d un système ESXi jose.tavares@hesge.ch & gerald.litzistorf@hesge.ch

Java et les bases de données

SGM. Master S.T.S. mention informatique, première année. Isabelle Puaut. Septembre Université de Rennes I - IRISA

CH.3 SYSTÈMES D'EXPLOITATION

INFO-F-404 : Techniques avancées de systèmes d exploitation

Communications performantes par passage de message entre machines virtuelles co-hébergées

Oracle Maximum Availability Architecture

pfsense Manuel d Installation et d Utilisation du Logiciel

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Problème physique. CH5 Administration centralisée

Structure fonctionnelle d un SGBD

Introduction à la Programmation Parallèle: MPI

Windows Server 2012 R2 Administration avancée - 2 Tomes

Programmation parallèle et distribuée

Partie 7 : Gestion de la mémoire

Fiche Technique. Cisco Security Agent

Introduction. Adresses

LA mémoire principale est le lieu où se trouvent les programmes et les

FOG : Free Open-Source Ghost. Solution libre de clonage et de déploiement de systèmes d'exploitation.

Introduction à la programmation concurrente

Prise en compte des ressources dans les composants logiciels parallèles

Chapitre 7. Le Protocole SNMP 7.1 INTRODUCTION COMPOSANTES POUR L UTILISATION FONCTIONNEMENT LE PAQUET SNMPV1...

1 LE L S S ERV R EURS Si 5

Segmentation d'images à l'aide d'agents sociaux : applications GPU

Ordinateurs, Structure et Applications

Dans le chapitre 1, nous associions aux fichiers ouverts des descripteurs de fichiers par lesquels nous accédions aux fichiers.

PROJET ALGORITHMIQUE ET PROGRAMMATION II

Cours A7 : Temps Réel

Une méthode de conception de systèmes sur puce

Communication inter-processus (IPC) : tubes & sockets. exemples en C et en Java. F. Butelle

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1

Réparer un disque dur passé en RAW

Adresse directe fichier : Adresse url spécifique sur laquelle le lien hypertext du Client doit être

Rappels Entrées -Sorties

Systèmes d exploitation Gestion de processus

Chapitre VIII : Journalisation des événements

Description de SQL SERVER. historique

DAns un système multi-utilisateurs à temps partagé, plusieurs processus

Gestion d identités PSL Exploitation IdP Authentic

Support de cours système d exploitation

Structure de base d un ordinateur

Transcription:

Systèmes & Réseaux Georges Arhodakis Université Paris 8

Sommaire Introduction Historique Service du noyau Appel Système Trappes & Interruptions Horloge & Gestion du Temps Ordonnancement Contrôle & Gestion des Ressources Processus Création / Destruction / Planification États & Changements de Contexte Trappes / Interruptions / Exceptions Processus Légers (Threads) Mémoire Physique / Virtuelle Pagination / Swapping Espace de Travail Entrées / Sorties Pilotes de Périphériques Physiques / Logiques / Virtuels Raw / Block Devices Handlers Système de Gestion de Fichiers (SGF) Distribution / Répartition (Networking) Modèles Topologies Protocoles Normes & Standards Inter-Processus Communication (IPC) Signaux Sémaphores Mémoire Partagée (Shared Memory) Boite à lettres (Messaging Queues) Pipes (Named / Unnamed) Sockets Fichiers 2000, Georges Arhodakis - Université Paris 8 2

Sous Système d E/S: Vue Générale Processus Utilisateur Interface Système d Exploitation Pilotes de Périphériques Tables d états de Périphériques Gestionnaire d Interruptions Tampons Mémoire (Buffers) 2000, Georges Arhodakis - Université Paris 8 3

Sous Système d E/S: Pour Qui Périphériques de Communication Périphériques de Stockage Séquentiel - Caractère (Raw) Block (Cooked) Mécanismes d échanges entre composants logiciels 2000, Georges Arhodakis - Université Paris 8 4

Sous Système d E/S: Pourquoi Formats Spéciaux Génération ld spécifique Le Noyau s exécute en mode Absolu load Particulier Environnement Machine plutôt qu Environnement Processus Recompilation et Rechargement du Noyau sans Modification de ses propres sources (Applications Utilisateur, Daemon, ) 2000, Georges Arhodakis - Université Paris 8 5

Sous Système d E/S: Composition Logiciel Sockets Protocoles Réseau(x) Fichiers Simple Système Gestion Fichiers E/S Disque Traitées COOKED E/S Disque Traitées RAW RAW TTY COOKED TTY Discipline de la ligne Block BUFFER CACHE Net Device Block Device Char Device Matériel Compatibilité Logicielle Pas de Modifications (SE, AU) Incompatibilité Logicielle Modifications (SE, AU) SE : Système d Exploitation AU : Application Utilisateur 2000, Georges Arhodakis - Université Paris 8 6

Sous Système d E/S: Les Types File System & IPC Devices (Types Particuliers) Network Device Block Device Character Device Apparaissent dans l espace de nom (Name Space) du File System Points d entrées par Tableau Non Structuré 2000, Georges Arhodakis - Université Paris 8 7

Sous Système d E/S: Les Découpages open close read write ioctl open mount close unmount fcntl write read Appels Buffer Cache Table d aiguillage des pilotes de périphériques mode caractère Table d aiguillage des pilotes de périphériques mode block open close read write ioctl Pilote Gestion d Interruptions Vectorisées open close strategy Pilote Gestion d Interruption Vectorisées Interruptions du Périphérique 2000, Georges Arhodakis - Université Paris 8 8

Sous Système d E/S: Les Interactions Espace Utilisateur. Trappe. Espace Système Haut Bas. Exécutive Traitement Appel Système Structures de données partagées Pilote Gestion d Interruptions Vectorisées Interruptions du Périphérique. 2000, Georges Arhodakis - Université Paris 8 9

Sous Système d E/S: Les ID Utilisation d ID ou comment Travailler avec les ID ID Table d ID Tables d E/S Système de Gestion de Fichiers Communication Inter-Processus Périphériques en Mode Block et/ou Caractère 2000, Georges Arhodakis - Université Paris 8 10

Sous Système d E/S Pas de main() Appel à des temps spécifiques prédéfinis pour des raison de Pérennité / Sécurité Distinction par: Class Numéro du Périphérique (Device Number) ou Major : Point d entrée dans la table Minor : Interprété par le périphérique Contrôleur Périphérique Un Périphérique en mode Block peut/doit avoir un File System et valider le Block Cache 2000, Georges Arhodakis - Université Paris 8 11

Sous Système d E/S: Au Niveau Système Langage de Programmation de Haut Niveau (pas d assembler) Duplication du Code Inutile Partage des Ressources Limité ( RAM Buffers, ) Contrôle du Noyau en Adéquation avec le Fonctionnement de l Ordonnanceur (Scheduler Respect) 2000, Georges Arhodakis - Université Paris 8 12

Sous Système d E/S: Au Niveau Utilisateur A l Origine des Requêtes d E/S Le Processus Utilisateur Trois Possibilités de Transfert entre le Pilote et l Espace du Processus Utilisateur: 1. D.M.A. 2. Buffers gérés par le Pilote 3. Buffers gérés par le Noyau Espace d Adressage Virtuel du Processus Demandeur U-Area 2000, Georges Arhodakis - Université Paris 8 13

Sous Système d E/S: Structures de Données Statiques Dynamiques Partagées par l ensemble des Périphériques Espace Non Paginé clist (Linked Lists FIFO) buffers Structures de Données attachées au Pilote (Privés) Simples/Complexes (dépendante de la conception, occupation d espace mémoire) Peuvent/Doivent Découper en Partitions l Espace de Travail Communication via Status Flags Critique, buffers non partagés pour les E/S 2000, Georges Arhodakis - Université Paris 8 14

Sous Système d E/S: Règles de Désignation Préfixe (ID Périphérique) Suffixe (Nom Point d Entrée) Exemples ID Φ Suffixe hd hd fd lp tt hd_init() hd_strategy() fd_read() lp_write() tt_close() 2000, Georges Arhodakis - Université Paris 8 15

Sous Système d E/S: Sommeil / Réveil Utilisation à 100% de l U.C. (C.P.U.) par l Utilisateur sleep() Suspend l exécution du processus courant après sauvegarde du Contexte wakeup() 2000, Georges Arhodakis - Université Paris 8 16

Pilotes de Périphériques Txfer D.M.A. Structures de données du Noyau Périphériques d E/S Pilotes de Périphériques Noyau Txfer D.M.A. Processus Utilisateur 2000, Georges Arhodakis - Université Paris 8 17

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Appelée quand le système s amorce (Boot) xx_init() Commandes d initialisation Périphérique Physique u-area u-area du du ------------- ------------- Espace Espace des des du du Organisation/Initialisation des données de fonctionnement Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique 2000, Georges Arhodakis - Université Paris 8 18

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Appelées quand un processus utilisateur exécute les Appels Système open() / close() xx_open() xx_close() Commande reset Périphérique Physique u-area u-area du du ------------- ------------- Espace Espace des des du du Changement de statut Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique 2000, Georges Arhodakis - Université Paris 8 19

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Appelée quand un processus utilisateur exécute l Appel Système : ioctl() xx_ioctl() Commandes Périphérique Physique u-area u-area du du ------------- ------------- Espace Espace des des du du Données associées au pilote de périphérique Changement de statut Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique 2000, Georges Arhodakis - Université Paris 8 20

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Données à traiter ultérieurement par xx_read() / xx_write() Appelée quand le périphérique interrompt l U.C. (C.P.U.) xx_intr() Données Périphérique Physique u-area u-area du du ------------- ------------- Espace Espace des des du du Changement de statut Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique 2000, Georges Arhodakis - Université Paris 8 21

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Appelée par le soussystème d E/S du noyau pour une lecture/écriture sur un périphérique en mode block u-area u-area du du ------------- ------------- Espace Espace des des du du xx_strategy() Changement de statut Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique Périphérique E/S Physique Amorcée 2000, Georges Arhodakis - Université Paris 8 22

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Appelée quand un processus utilisateur exécute l Appel Système : read() / fread() Données stockées par xx_intr() ou D.M.A. xx_read() Amorcer les activités de lecture Périphérique Physique u-area u-area du du ------------- ------------- Espace Espace des des du du Données demandées par le processus utilisateur Changement de statut Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique 2000, Georges Arhodakis - Université Paris 8 23

Pilotes de Périphériques: routines Structures de données fournies par le Noyau block clist Appelée quand un processus utilisateur exécute l Appel Système : write() / fwrite() Données à transmettre au périphérique via xx_intr() ou D.M.A. xx_write() Commande initiale de sortie Périphérique Physique u-area u-area du du ------------- ------------- Espace Espace des des du du Données transmises par le processus utilisateur Changement de statut Structures Structures de de Locales Locales au au Pilote Pilote de de Périphérique Périphérique 2000, Georges Arhodakis - Université Paris 8 24

Sous Système d E/S: Périphériques d E/S Périphériques d E/S programmées Transfert sous contrôle d U.C. Un octet à la fois Surcharge possible Périphériques d E/S DMA Transfert sous contrôle DMA Un block à la fois Mise en œuvre délicate pour la routine de xx xx_strategy() 2000, Georges Arhodakis - Université Paris 8 25

Sous Système d E/S: E/S Programmées CPU dormant ou exécutant une tache quelconque Processus Utilisateur exécutant l Appel Système read() ou write() sur les structures des données clist Routine d interruption transférant des données à partir ou vers les structures de données clist du pilote xx_read read() ou xx_write write() ont appelé la routine sleep() xx_intr intr() a appelé la routine wakeup() 2000, Georges Arhodakis - Université Paris 8 26

Sous Système d E/S: E/S DMA CPU dormant ou exécutant une tache quelconque Processus Utilisateur exécutant l Appel Système read() ou write() ou le noyau appelant la routine xx_strategy strategy() Routine d interruption acquittant le transfert E/S DMA effective (Transfert) Appel de sleep() par le pilote de périphérique pour suspendre le processus appelant Appel de wakeup() par la routine d Interruption pour la reprise du processus interrompu 2000, Georges Arhodakis - Université Paris 8 27