You are on page 1of 43

CHAPITRE 1 :

SYSTÈME D’EXPLOITATION: PRINCIPE

Pr. A. ABOUHILAL
SYSTÈME D’EXPLOITATION
Wikipedia:
 Le système d'exploitation (SE, en
anglais Operating System ou OS) est un
ensemble de programmes responsables de
la liaison entre les ressources matérielles
d'un ordinateur et les applications de
l'utilisateur (traitement de texte, jeu
vidéo, …)
 Il fournit aux programmes applicatifs des
points d'entrée génériques pour les
périphériques 2
RÔLES DU SE
Le maître d’orchestre: essentiel pour
utiliser les ressources de la machine
 gestion de la mémoire centrale
 gestion des processeurs: temps de calcul entre
plusieurs programmes qui s’exécutent
simultanément
 gestion des périphériques: E/S
 gestion des fichiers: sur les mémoires de
masses
 gestion des ressources: attribution des
ressources nécessaires
 exécution du programme sans empiétement
 gestion des utilisateurs: pas d’interférence 3
entre eux
COMPOSITION
Un système d'exploitation est typiquement
composé de :
 un noyau
 bibliothèques dynamiques (libraries)
 un ensemble d'outils système (utilitaires – shell)
 programmes applicatifs de base

4
QU’EST-CE QU’UN SYSTEME D’EXPLOITATION

 Un ordinateur est constitué : …

5
Utilisateur 1 Utilisateur 2 Utilisateur N

1. Du matériel Compilateur Editeur Base de données


 Dispositifs physiques Applications
 Langage machine Système d’exploitation

2. D’un système d’exploitation


Matériel
3. De programmes
 Programmes système
 Programmes d’applications
QU’EST-CE QU’UN SYSTEME D’EXPLOITATION

Le matériel (Hardware): Les dispositifs physiques constituent


la couche la plus basse du matériel.

6
 le processeurs,
 la mémoire principale,
 des disques,
 des imprimantes
 des interfaces de connexion réseau ,
 …
QU’EST-CE QU’UN SYSTEME D’EXPLOITATION

Le système d’exploitation (Operating System ou


OS ou SE): c’est le plus important des

7
programmes systèmes :
1. Il contrôle les ressources de l’ordinateur.
2. Il libère le programmeur de la complexité du
matériel.
Il se compose:
 D’un noyau (kernel): partie la plus critique d’un OS. Il permet
aux éléments matériel et logiciel de communiquer entre eux, de
fonctionner ensemble et de former un tout. Pour ces raisons, il est
le premier logiciel chargé en mémoire.
 Des outils système: partie permettant à l’utilisateur de tirer
profit de l’OS, de gérer les périphériques, les configurer …En bref,
ils fournissent une interface d’accès au système.
Exemple de tâche:
COMPOSITION

8
COMPOSITION

9
NOYAU (KERNEL)
Le noyau assure ces fonctionnalités :
 gestion des périphériques (au moyen de
pilotes)
 gestion des files d'exécution (aussi nommée
processus) :
 attribution de la mémoire à chaque processus
 ordonnancement des processus (répartition du temps
d'exécution sur le ou les processeurs)
 synchronisation et communication entre processus
(services de synchronisation, d'échange de messages,
mise en commun de segments de mémoire, etc.)
 gestion des fichiers (au moyen de systèmes de
fichiers)
 gestion des protocoles réseau (TCP/IP, IPX,
etc.) 10
NOYAU
 Au lancement:
 Boot: le programme qui initialise l’ordinateur
 Permet aux premiers services d’accéder aux
applications système : gestion de la mémoire, accès
aux disques durs et accès aux périphériques
 Mémoire centrale (vive): répartition
 Réservée pour le système
 Réservée pour les applications
 Assureune indépendance entre les
applications et les matériels
11
LES BIBLIOTHÈQUES DYNAMIQUES
= Libraries
 Regroupent les opérations souvent
utilisées, selon les fonctionnalités (E/S,
fichier, …)
 Ces opérations sont disponibles pour être
appelées et exécutées par d’autres
programmes

12
LE SYSTÈME DE FICHIERS
 Un système de fichiers est une structure de
données permettant de stocker les informations
et de les organiser dans des fichiers sur des
mémoires secondaires (disque dur, disquette, CD-
ROM, clé USB, etc.)
 E.g. une structure hiérarchique
 /u/nie/HTML/IFT6800/introduction.txt
 Ce stockage de l'information est persistant
 Une telle gestion des fichiers permet de traiter,
de conserver des quantités importantes de
données ainsi que de les partager entre plusieurs
programmes informatiques
 Il offre à l'utilisateur une vue abstraite sur ses
données et permet de les localiser à partir d'un
chemin d'accès
13
INTERFACE HOMME-MACHINE
 Via ligne de commande
 shell, MSDos
 Interface graphique
 Xterm, Linux, Windows, Macintosh
 GUI (Graphical User Interface)

14
SHELL
 Shell (coquille par opposition au noyau) =
L'interpréteur de commandes permettant la
communication avec le SE par l'intermédiaire
d'un langage de commandes

 Permet à l'utilisateur de piloter les périphériques


en ignorant tout des caractéristiques du matériel
qu'il utilise, de la gestion des adresses physiques,
etc.

 E.g. sur Unix/Linux: csh, tcsh, …


 ls : lister les répertoires et les fichiers du répertoire
courant
 mv x y : changer le nom du fichier/répertoire « x » en 15
«y»
PROGRAMMES APPLICATIFS DE
BASE
 Des applications et services souvent
installés ensembles avec le SE
 E.g. calculatrice, éditeur de texte,
navigateur web, etc.

16
MULTI-UTILISATEURS ET MULTI-TÂCHES
 Multi-utilisateurs
 plusieurs utilisateurs utilisent le même ordinateur en même
temps
 Multi-tâches
 un utilisateur lance plusieurs applications
 Gestion de temps et de ressources
 Processus: exécuter, suspendre, détruire

e.g. ps –u nie
PID TTY TIME CMD
10057 ? 00:00:00 sshd
10059 pts/0 00:00:00 tcsh
10061 ? 00:00:00 pkboost
10105 pts/0 00:00:00 xterm
10107 pts/1 00:00:00 tcsh
25753 pts/1 00:00:00 ps 17
ÉVOLUTION DES SE
 1980s
 Unix (sur des machines plus grosses)
 CP/M
 MSDOS
 Mac OS
 1990s et 2000s
 Interface graphique
 Windows
 Mac OS X
 Linux avec GUI
 Compatibilité
18
HISTORIQUE DE UNIX

19
COMPARAISON DES SE
Système Codage Mono-/multi- Mono-/multi-
utilisateur tâche
DOS 16 mono mono
Windows 3.1 16/32 mono non préemptif
Windows 95 32 mono coopératif
Win. 32 multi préemptif
NT/2000
Windows XP 32/64 multi préemptif
Unix/Linux 32/64 multi préemptif
Mac OS X 32 multi préemptif

20
NOTIONS SUR LES SE
Définition

Le système d’exploit ion SE ou OS en anglais


(Operating System) est un logiciel nécessaire au
fonctionnement d’un ordinateur, il est l’interface entre
le matériel et l’utilisateur. Tous les logiciels
auxquels l’utilisateur a accès ne sont pris en compte
par la machine qu’au travers du système d’exploit
ion. A chaque type de matériel correspond un type de
système d’exploit ion(Ms-Dos, Windows, Mac-OS,
Unix…)

21
NOTIONS SUR LES SE

 Le SE :

 Pilote les organes de l'ordinateur (écran, clavier, disque,


mémoire centrale...)
 Lance en exécution les divers programmes

22
NOTIONS SUR LES SE
 Le SE est composé :

 D’un noyau (kernel) : qui assure la gestion des processus :


cœur du système
 Le noyau est de plus en plus restreint à sa fonction
principale.
 On parle de micro noyau.
 D’autres composants logiciels assurant les fonctions du
système :
 Gestion de fichiers
 Gestion de mémoire

 Gestion des entrées-sortes

 Interpréteur de commande :

 …
23
CLASSIFICATION DES SE
 Il existe trois types de SE :

Le système mono-tâche

Il ne gère qu'une seule tâche à la fois (un seul


programme). Quand le programme est lancé, il utilise
seul les ressources
de la machine et ne rend la main au système d'expl
oit ion qu'en fin d'exécution, ou en cas d'erreur.
 Exemple : MS-DOS

24
CLASSIFICATION DES SE
 Le système multitâche
 Le système multitâches (mono-utilisateur) gère
simultanément plusieurs programmes sur une même
machine. Il permet de partager le temps du processeur
pour plusieurs programmes, ainsi ceux-
ci sembleront s'exécuter simultanément. Le principe
est d'allouer du temps à différents programmes(taches
ou processus) fonctionnant simultanément. Ces tâches
seront tour à tour actives, en attente, suspendues ou
détruites, suivant la priorité qui leur est associée. Le
temps alloué peut être fixe ou variable suivant le type de
partage géré par le SE.

Exemple : OS2 d'IBM , Windows 95-98…


25
CLASSIFICATION DES SE
 Le système Multi-Utilisateur
Les caractéristiques principales sont :
gestion d'environnement propre à chaque
utilisateur (identification, ressources propres
 sécurité d'accès aux programmes et aux données
 notion de droits d'accès
 Ce type de système fait apparaître la notion
d'administrateur qui gère le système, indique les
priorités, partage l'espace disque, déclare les utilisateurs,
les supprime, établit des stratégies de sauvegarde et de
sécurité

Exemple : Windows NT 2000 XP, Linux, Unix…


26
LES FONCTIONS DU SE
 Un système d’exploit ion joue différentes
fonctions essentielles :
 Il gère l’ensemble des échanges entre le microprocess
eur, la mémoire centrale et les unités périphériques;
 Il met à la disposition de l'utilisateur
un certain nombre de commandes et il gère
leur exécution (formatage des disquettes, copie de
fichiers...
 Il détecte les erreurs, les gère et informe l’utilisateur.
 …

27
LES FONCTIONS DU SE
 Un système d’exploit ion joue différentes
fonctions essentielles :
 Il gère l’ensemble des échanges entre le microprocess
eur, la mémoire centrale et les unités périphériques;
 Il met à la disposition de l'utilisateur
un certain nombre de commandes et il gère
leur exécution (formatage des disquettes, copie de
fichiers...
 Il détecte les erreurs, les gère et informe l’utilisateur.
 …

28
LE CHARGEMENT
 C’est la phase de démarrage de l’ordinateur appelé
également "Boot sequence". A la mise sous tension,
un programme du Bios recherche à un
endroit définit (disque, disquette, clé, CD-ROM…)
un programme "Boot loader" qu'il charge
en mémoire et qui va s'exécuter. Ce programme
est déjà une partie du SE qui va charger différents
"morceaux" du SE qui vont ensuite s'exécuter..
L’ensemble du système d’exploit ion est ainsi chargé
et exécuté.

29
LE CHARGEMENT
 C’est la phase de démarrage de l’ordinateur appelé
également "Boot sequence". A la mise sous tension,
un programme du Bios recherche à un
endroit définit (disque, disquette, clé, CD-ROM…)
un programme "Boot loader" qu'il charge
en mémoire et qui va s'exécuter. Ce programme
est déjà une partie du SE qui va charger différents
"morceaux" du SE qui vont ensuite s'exécuter..
L’ensemble du système d’exploit ion est ainsi chargé
et exécuté.

30
LA COMMUNICATION HOMME-MACHINE
 Dés que le système est chargé, l'utilisateur a
normalement "la main" pour envoyer des ordres au
SE
qui les exécutera. Ces ordres peuvent être envoyé
s soi en mode console (ligne de commande), soit
en mode graphique. Certains
SE ne sont qu'en mode console (M S-Dos). Les
ordres peuvent également être lancés à travers
l'exécution d'application ou de fichiers de
commande (fichiers "batch"). Dans certains cas, l'
utilisateur devra au préalable s'identifier (fenêtre de
login).
31
FOURNIR DES SERVICES D’ACCÈS AUX
RESSOURCES

 On n’utilise pas une machine pour son seul système d’exploit


ion mais pour les logiciels applicatifs que l’on installe
en complément du S.E. Ces applications utilisent des
services du S.E pour lire ou écrire un fichier sur le
disque, pour connaître la date du jour … L’ensemble de ces
services est fourni par le SE et le développeur
d'application n'a pas à les ré-écrire. Ces services
sont appelés API (Application Programming Interface). Sous
Windows, on parle de l'API Win32.
 Du point de vue du programmeur, l’API est un ensemble de
fonctions qu’il est possible d’appeler dans un programme afin
d’obtenir des services de la part du SE. De ce fait tout logiciel
est conçu pour fonctionner sur un SE particulier.

32
FOURNIR DES SERVICES D’ACCÈS AUX
RESSOURCES

 On n’utilise pas une machine pour son seul système d’exploit


ion mais pour les logiciels applicatifs que l’on installe
en complément du S.E. Ces applications utilisent des
services du S.E pour lire ou écrire un fichier sur le
disque, pour connaître la date du jour … L’ensemble de ces
services est fourni par le SE et le développeur
d'application n'a pas à les ré-écrire. Ces services
sont appelés API (Application Programming Interface). Sous
Windows, on parle de l'API Win32.
 Du point de vue du programmeur, l’API est un ensemble de
fonctions qu’il est possible d’appeler dans un programme afin
d’obtenir des services de la part du SE. De ce fait tout logiciel
est conçu pour fonctionner sur un SE particulier.

33
GÉRER DES FONCTIONS COMPLEXES
Le SE, une fois démarré, gère au mieux les ressources
matérielles : processeurs, mémoire centrale, périphériques
suivant les demandes des applications.

2.4.1 La gestion de l’unité centrale

La gestion de l’unité centrale(processeur) consiste à distribuer le


processeur entre les différents travaux à exécuter. Cette
fonction est simple dans le cas d’un système mono-
tâche. En ce qui concerne un système multitâche, la
concurrence pour l’accès au processeur entre les différents travaux
est gérée par l’attribution d’un niveau de priorité et d'une portion
de temps de l'unité centrale.

34
GÉRER DES FONCTIONS COMPLEXES
 2.4.2 Gestion des processus
On parle dans le cas de systèmes multitâches de gestion des pr
ocessus, les processus étant des programmes ou des parties
de programmes lancés par le SE en arrière-
plan (Une application peut générer plusieurs processus). Un
processus peut être actif (en cours d'exécution ) ou inactif (en attente
d'exécution).
 Il ne peut y avoir qu'un processus actif
à la fois. Le changement d'état d'un processus se fait sous
couvert du SE suie à une interruption reçue soi par un dispositif
d'entrée-sorte, soi à intervalle régulier de
manière à répartir le temps entre les processus effectuant un
traitement. Un processus peut rendre la main au SE en fin de
traitement.
Un système est dit
préemptif lorsqu'il possède un Ordonnanceur (aussi appelé
planificateur), qui répartit, selon des critères de priorité le temps
machine entre les différents processus qui en font la demande. 35
GÉRER DES FONCTIONS COMPLEXES
 2.4.3 La gestion de la mémoire centrale

Les applications occupent et utilisent de la place en mémoire, le SE a


pour rôle de gérer en permanence un plan d'occupation de la mémoire
(organisation et optimisation de la mémoire).Le SE gère le
chargement des programmes en mémoire centrale. En cas de
besoin, le SE répartit les besoins entre la mémoire vive et la
mémoire virtuelle (place allouée sur le disque dur). On parle alors de
swapping. Pour répartir la mémoire entre application, plusieurs
techniques peuvent être mise en œuvre :
 La pagination : Les programmes sont découpés en pages de longueur
fixe correspondant aux segments de mémoire alloués.
 La segmentation permet un découpage plus fin et adapté
aux besoins. Les programmes ne sont pas découpés en pages
de tailles fixes mais en segments
dont la taille est adaptée au programme. Les segments peuvent
être implantés en mémoire centrale ou en mémoire virtuelle 36
GÉRER DES FONCTIONS COMPLEXES
 La mémoire peut également être gérée de façon mixte.
 Un des problèmes important est la réallocation de la mémoire lor
sque celle-ci est libérée ou la récupération de la mémoire
non libérée par des applications. Certains systèmes
disposent d'un dispositif de ramasse miette (Garbage Colector) qui
récupère la mémoire non libérée.

37
GÉRER DES FONCTIONS COMPLEXES
 2.4.4 La gestion des entrées-sorties
 Cette fonction consiste à prendre en charge l'échange d'information entre
l’ordinateur et l’extérieur. Cette gestion comprend à la fois l'installation (ajout,
suppression, mise à jour) que l'utilisation de périphériques. Ces différentes
fonctions sont assurées par des pilotes (drivers).
 2.4.5 La gestion des fichiers
 Le système de gestion de fichiers prend en charge les opérations de lecture-écriture
de fichiers sur des ressources autre que la mémoire centrale(disque, disquette, clé
USB…). Il gère à la fois les fichiers, les répertoires et tient à jour la table d'allocation
(File Allocation Table) qui permet d'associer le fichier à son implantation physique
sur le disque, mais également de gérer l'espace disponible sur celui-ci .
 Un certain nombre de commandes et d’utilitaires sont mises à la disposition de
l’utilisateur pour gérer ses fichiers et ses répertoires (copie, renommage, création de
répertoire, formatage..).

38
GÉRER DES FONCTIONS COMPLEXES
 2.4.4 La gestion des entrées-sorties
 Cette fonction consiste à prendre en charge l'échange d'information entre
l’ordinateur et l’extérieur. Cette gestion comprend à la fois l'installation (ajout,
suppression, mise à jour) que l'utilisation de périphériques. Ces différentes
fonctions sont assurées par des pilotes (drivers).
 2.4.5 La gestion des fichiers
 Le système de gestion de fichiers prend en charge les opérations de lecture-écriture
de fichiers sur des ressources autre que la mémoire centrale(disque, disquette, clé
USB…). Il gère à la fois les fichiers, les répertoires et tient à jour la table d'allocation
(File Allocation Table) qui permet d'associer le fichier à son implantation physique
sur le disque, mais également de gérer l'espace disponible sur celui-ci .
 Un certain nombre de commandes et d’utilitaires sont mises à la disposition de
l’utilisateur pour gérer ses fichiers et ses répertoires (copie, renommage, création de
répertoire, formatage..).

39
3 LES PRINCIPAUX SE DU MARCHÉ
 3.1 Gros systèmes
 Le marché des gros systèmes est essentiellement
dominé :

 soit par IBM et son AS400 tournant sous OS400, ou d'autres


systèmes (Z-OS, OS390 …)
 soit par des machines fonctionnant sous UNIX.

 Néanmoins, Linux est de plus en plus présent également sur ce

marché.

40
3 LES PRINCIPAUX SE DU MARCHÉ
 3.2 Les serveurs
 Unix ou Linux de plus en plus
 Les systèmes Windows (NT serveur, 2000 serveur, 2003)
 Novell

 3.3 Les postes de travail


 Les postes de travail sont composés aujourd'hui en
majorité de PC. Les systèmes utilisés sont donc ceux
fonctionnant sur cette plate-forme :
 MS-Dos
 Windows 95, 98, NT Work-station, Millenium, 2000 Pro ,
XP Pro
 Linux

41
3 LES PRINCIPAUX SE DU MARCHÉ
 3.2 Les serveurs
 Unix ou Linux de plus en plus
 Les systèmes Windows (NT serveur, 2000 serveur, 2003)
 Novell

 3.3 Les postes de travail


 Les postes de travail sont composés aujourd'hui en
majorité de PC. Les systèmes utilisés sont donc ceux
fonctionnant sur cette plate-forme :
 MS-Dos
 Windows 95, 98, NT Work-station, Millenium, 2000 Pro ,
XP Pro
 Linux

42
3 LES PRINCIPAUX SE DU MARCHÉ
 Les autres systèmes
 Mac-Os
 Système X
 Sun-Os
 Free-Bsd

 Les étapes importantes des OS :

43

You might also like