SYSTEMES D’EXPLOITATION Généralités francis ROGARD Initiation aux systèmes d'exploitation
Les composants matériels de l’ordinateur Unité Centrale Périphériques processeur Entrée commande Sortie traitement mémoire vive et morte Autres francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Une définition Un Système d’Exploitation (SE) ou Operating System (OS) en Anglais est un programme informatique qui assure l’interface entre le matériel et les applications de l’utilisateur francis ROGARD Initiation aux systèmes d'exploitation
Les éléments du système un noyau des bibliothèques des outils ou services système francis ROGARD Initiation aux systèmes d'exploitation
Les fonctionnalités du noyau gestion des entrées/sorties ou périphériques (pilotes) gestion du système de fichiers gestion de la mémoire (utilisateur et système) gestion des processus en multitâche attribution de la mémoire vive et virtuelle ordonnancement synchronisation et communication francis ROGARD Initiation aux systèmes d'exploitation
Les fonctionnalités du noyau gestion multi-utilisateurs (droits) implantation multi-plateformes (Intel, SPARC, MIPS, PowerPC, PalmPilot …) gestion des architectures multiprocesseurs mise a disposition d’une interface utilisateur (machine virtuelle) gestion des protocoles réseau francis ROGARD Initiation aux systèmes d'exploitation
Pour résumer les fonctions du noyau Une machine virtuelle Vision au niveau utilisateur Un gestionnaire de ressources Vision au niveau matériel francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Architecture Voir le fichier Architecture générale francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Architecture Windows Voir le fichier Architecture NT francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Architecture Unix Voir le fichier Architecture Unix francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Les caractéristiques multitâches (processus et threads) coopératif préemptif (ordonnanceur) temps partagé multi-utilisateurs temps réel embarqué PDA (Personal Digital Assistants) francis ROGARD Initiation aux systèmes d'exploitation
Typologie des systèmes Codage Multi-utilisateurs Multi tâches DOS 16 bits non Windows95/98 32 bits coopératif WindowsNT/2000 oui préemptif francis ROGARD Initiation aux systèmes d'exploitation
Typologie des systèmes Codage Multi-utilisateurs Multi tâches WindowsXP 32/64 bits oui préemptif Unix/ Linux MAC/OS 32 bits francis ROGARD Initiation aux systèmes d'exploitation
Problématique de développement (1) Les noyaux monolithiques Toutes les fonctionnalités sont traitées au niveau du noyau Évolution -> Modulaires -> Multi plates-formes Un exemple est Linux (>1.2) francis ROGARD Initiation aux systèmes d'exploitation
Problématique de développement (2) Les micro-noyaux On conserve dans le noyau les fonctions de base exclusivement (gestion mémoire, ordonnanceur, gestion de la communication entre processus, horloge et pilote d’affichage) Évolution -> micro-noyau enrichi -> micro-noyau hybride Un exemple est Windows NT et XP et MAC OS X francis ROGARD Initiation aux systèmes d'exploitation
Des exemples de systèmes OS2 IBM OS 400 IBM (AS 400) Mac OS (Apple Macintosh) Microsoft Windows Unix GNU/Linux (Debian, Red Hat, Ubuntu), FreeBSD AIX (IBM), HP-UX (HP), Solaris (SUN) VM, MVS (IBM), GCOS (Bull) Des exemples parmi plus de 350 existants francis ROGARD Initiation aux systèmes d'exploitation
Cas particulier des systèmes répartis Ensemble d’ordinateurs reliés par un réseau Applications Données Logiciel médiateur (Middleware) Messages Système de communication Processus/fichiers SE SE Réseau des ordinateurs bits francis ROGARD Initiation aux systèmes d'exploitation
Les bibliothèques du système Une bibliothèque est un ensemble de fonctions qui peuvent être utilisées dans un programme applicatif. bibliothèques de bas niveau E/S, accès aux fichiers, structures de données bibliothèques de haut niveau graphique, traitement d’images francis ROGARD Initiation aux systèmes d'exploitation
Les bibliothèques du système autres bibliothèques mathématiques, icônes Les bibliothèques sont accessibles aux programmeurs par des fonctions, c’est l’interface de programmation (API) francis ROGARD Initiation aux systèmes d'exploitation
Les bibliothèques dynamiques DLL On utilise des bibliothèques dynamiques dont les codes des fonctions sont chargés au moment de l’exécution des programmes. Sous Windows ce sont les fichiers .dll Sous Unix ce sont les fichiers .so francis ROGARD Initiation aux systèmes d'exploitation
Les étapes de la création d’un fichier exécutable ou applicatif source COMPILATEUR Fichier objet Editionde liens Fichier exécutable Bibliothèques francis ROGARD Initiation aux systèmes d'exploitation
Processus et fichier exécutable Unité centrale mémoire Processus 1 Processus 2 processeur Fichier exécutable francis ROGARD Initiation aux systèmes d'exploitation
Le zones mémoires et le contexte d’un processus Les zones mémoires et le contexte du processus Données statiques Compteur ordinal Pointeur de la plie Registres généraux Ressources utilisées Vecteur d’interruption Vecteur d’état Code Pile/tas Mémoire centrale Contexte d’exécution francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Processus et thread Les processus ont les zones mémoires et le contexte séparés Les threads ont les zones mémoires communes et une pile d’exécution différente. Un thread est une ressource d’un processus comme un espace disque ou une imprimante PROCESSUS thread 1 thread n francis ROGARD Initiation aux systèmes d'exploitation
Les services du système Planifier les tâches Configurer les périphériques Gestion des utilisateurs Calculatrice, planning, audit, lecteur multimédia … francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation Les standards POSIX POSIX (Portable Operating System Interface + X) est une famille de standards depuis 1988 par IEEE 1003 Dans 15 documents sont précisé : Interface utilisateur et logicielle La ligne de commande Services de base API pour les bibliothèques en particulier de threading francis ROGARD Initiation aux systèmes d'exploitation
Initiation aux systèmes d'exploitation FIN francis ROGARD Initiation aux systèmes d'exploitation