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 • • • – • Système de Gestion de Fichiers (SGF) Distribution / Répartition (Networking) – – – – • Physiques / Logiques / Virtuels Raw / Block Devices Handlers 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 Ordinateurs • Sans Logiciel – Block de métal • Avec Logiciel – – – – Calculer Traiter Jouer ... Logiciels • Deux Types de Programmes – Systèmes (Gèrent les Opérations de l’Ordinateur) – Applications (Résolvent les problèmes des Utilisateurs) • Le Programme le plus Important: – Le Système d ’Exploitation • • • • • Unification des Interfaces d ’E/S Abstraction d ’Usage Concept de Machines Virtuelles Protection des Informations Hiérarchisation (constitution en niveaux) Générations de Systèmes • 1945-1955 Programmation par Clefs Générations de Systèmes • 1955-1965 Programmation par Cartes sans Langage - BATCH Cards Générations de Systèmes • 1965- Abstraction d’Architectures – Multiprogrammation – Segmentation – Time Sharing – Real Time – ... Projets • CTSS par M.I.T • MULTICS (MULTiplexed Information & Computing Service) MULT • UNIX (UNIplexed Information & Computing Service) UNI – – – – – – – – Systèmes d'exploitation reparti Système de gestion hiérarchique, Compatibilité fichier Device IPC Concurrence Interpréteur de commande au choix Portabilité Typologie des Systèmes • Traitement par Lot Host Input Devices Card Readers Terminals WorkStations ... Host Output Devices Line Printers COLD Systems Card Writers ... Host Typologie des Systèmes • Time Sharing Department MIS Center Host Terminal Host Terminal Host Typologie des Systèmes • Systèmes Départementaux Department Tx MIS Center Host Host Tx WS Host Dept. Host PC Typologie des Systèmes • Corporate Networks Department MIS Center Tx Host WS Host WS Dept. Host PC Host Généalogie d’Architectures • Von Neumann Architecture • Tubes • Équilibrée C.P.U. Control Execution Unit Unit Memory Généalogie d’Architectures • Microcoded Architecture • Tubes et Transistors • Déséquilibrée en faveur de la C.P.U. C.P.U. Control Execution Unit Unit Control Store Memory Généalogie d’Architectures • Microcoded and Cache Architecture • Circuit Intégrés et Transistors • Complexité accrue C.P.U. Control Execution Unit Unit Control Store Data Cache Memory Généalogie d’Architectures • Data Cache • Circuits Intégrés (V.L.S.I.) • Back to Basic C.P.U. Control Execution Unit Unit Instruction Cache Data Cache Memory Architecture d’Ordinateurs • • • • • • • • • • Bus Unique Central Processing Unit Floating Point Unit Read Only Memory Random Access Memory Memory Management Unit Direct Access Memory Serial Input Output Parallel Input Output … CPU ROM MMU SIO DMA PIO BUS FPU RAM Architecture d’Ordinateurs • Multi Bus - Mono processeur • Bus Principal à très haut débit • Bus Secondaires à moyen débit CPU RAM BUS PRINCIPAL Bus Secondaire Bus Secondaire Architecture d’Ordinateurs • Multi Bus Multiprocessors – Tightly Coupled – Moderately Coupled – Loosely Coupled CPU'S RAM BUS PRINCIPAL Bus Secondaire Bus Secondaire Composants d’un Système Autres Programmes d'Applications • Principe d’anneaux • Imperméabilité entre anneaux • Niveau d’Abstraction • Réutilisation sh et Autres Commandes du Système Noyeau du Système LISP date wc cc Matériel lex grep awk a.out gnuplot who yacc SmallTalk emacs Tolérance aux pannes BOURNE SHELL • Ajout des composants spécifiques (matériels & logiciels) • Check point • Hot Plug / Hot Swap VIRTUAL MEMORY SCHEDULER MANAGEMENT BSD FAST FILE SYSTEM UNIX SYSTEM V IPC ENHANCEMENTS HARDWARE STREAMS SUPPORT NETWORK FILE SYSTEM UNIX EXPERT SYSTEM SYSTEM/ V DIAGNOSTICS UTILITIES FAULT-TOLERANT HARDWARE PLATFORM BSD UTILITIES SOCKETS CONFIGURATION MANAGEMENT SUPPORT CODE REINTEGRATION RELIABILITY POWER FAILURE/ AUTO RESTART DISK MIRRORING C SHELL APPLICATIONS