francis rogardinitiation aux systèmes d'exploitation1 systemes d’exploitation généralités
TRANSCRIPT
francis ROGARD Initiation aux systèmes d'exploitation
1
SYSTEMES D’EXPLOITATION
Généralités
francis ROGARD Initiation aux systèmes d'exploitation
2
Les composants matériels de l’ordinateur
Unité Centraleprocesseur
commande
traitement
Entrée
Sortie
Périphériques
Autresmémoire
vive et morte
francis ROGARD Initiation aux systèmes d'exploitation
3
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
4
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
5
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
6
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
7
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
8
Architecture
Voir le fichier Architecture générale
francis ROGARD Initiation aux systèmes d'exploitation
9
Architecture Windows
Voir le fichier Architecture NT
francis ROGARD Initiation aux systèmes d'exploitation
10
Architecture Unix
Voir le fichier Architecture Unix
francis ROGARD Initiation aux systèmes d'exploitation
11
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
12
Typologie des systèmes
Système Codage Multi-utilisateurs
Multi
tâches
DOS 16 bits non non
Windows95/98
32 bits non coopératif
WindowsNT/2000
32 bits oui préemptif
francis ROGARD Initiation aux systèmes d'exploitation
13
Typologie des systèmes
Système Codage Multi-utilisateurs
Multi
tâches
WindowsXP
32/64 bits oui préemptif
Unix/
Linux
32/64 bits oui préemptif
MAC/OS 32 bits oui préemptif
francis ROGARD Initiation aux systèmes d'exploitation
14
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
15
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
16
Des exemples de systèmes
OS2 IBMOS 400 IBM (AS 400)Mac OS (Apple Macintosh)Microsoft WindowsUnix 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
17
Cas particulier des systèmes répartis
• Ensemble d’ordinateurs reliés par un réseau
Applications
Logiciel médiateur (Middleware)
Système de communication
SE SE
Réseau des ordinateurs
Données
Messages
Processus/fichiers
bits
francis ROGARD Initiation aux systèmes d'exploitation
18
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 niveauE/S, accès aux fichiers, structures de données
• bibliothèques de haut niveaugraphique, traitement d’images
francis ROGARD Initiation aux systèmes d'exploitation
19
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
20
Les bibliothèques dynamiquesDLL
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
21
Les étapes de la création d’un fichier exécutable ou applicatif
Fichier source
Fichier objet
COMPILATEUR
Fichierexécutable
Bibliothèques
Editionde liens
francis ROGARD Initiation aux systèmes d'exploitation
22
Processus et fichier exécutable
Fichier exécutable
Unité centrale
mémoire
processeur
Processus 1Processus 2
francis ROGARD Initiation aux systèmes d'exploitation
23
Le zones mémoires et le contexte d’un processus
Les zones mémoires et le contexte du processus
Données statiques
Code
Pile/tas
Mémoire centrale
Compteur ordinalPointeur de la plieRegistres générauxRessources utilisées
Vecteur d’interruptionVecteur d’état
Contexte d’exécution
francis ROGARD Initiation aux systèmes d'exploitation
24
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 1thread n
francis ROGARD Initiation aux systèmes d'exploitation
25
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
26
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
27
FIN