Système d’exploitation: Principe

Souhaib El
Souhaib ElEtudiant ingénieur des Systèmes ,Réseaux et Télécoms en Giantsnet.com
Systèmes d'expoloitations

Patrick Reuter
LIPSI-ESTIA
INRIA Futurs Bordeaux
Année 2005
Planning
●

Mardi, 15/03

8:30 – 10:30

Cours

●

Mardi, 29/03

16:00 – 18:00

Cours

●

Mercredi, 20/04

8:30 – 12:30

TP/TD
Systèmes d'exploitations
●

angl. « Operating System (OS) »

●

Qu'est-ce que c'est?
« Programme assurant la gestion de l'ordinateur et de ses
périphériques »
[www.dicofr.com]

●

A quoi ca sert?
–

à simplifier la vie des utilisateurs et des programmeurs

–

à gérer les ressources de la machine d'une manière
efficace
Abstraction
●

●

Cacher la complexité des machines pour
l'utilisateur afin d'utiliser la machine sans savoir ce
qui est derrière
Abstraction du terme « Machine » selon Coy:
–

machine réelle = Unité centrale + périphériques

–

machine abstraite = machine réelle + système
d'exploitation

–

machine utilisable = machine abstraite + application
Exigences à un Système d'exploitation


Généralités



Gérer 2D, 3D, vidéo, audio, réseau, CD, DVD, clé USB, ...



Plusieurs utilisateurs (itinérants) --> multi-utilisateurs





Satisfaire les utilisateurs et les programmeurs

être extensible

De plus en plus gros et complexe :


Efficace, évolutif, maintenable
Exigences de l'utilisateur


« Faut que ça marche ! »
(comme j'en ai envie ...)



« Ça imprime pas ... »



= Machine utilisable (machine étendu)
Exigences du programmeur


Simplifier l'accès aux ressources de la machine :



Mémoire, processeur, périphériques, fichiers, programmes,
réseaux, communication interne
Modèle de programmation simple et unifié



Efficacité dans tous les cas



= Machine étendue
Quelques définitions
●

Processus

●

Traitement par lots

●

Systèmes Multi-tache

●

Systèmes Multi-utilisateurs

●

Systèmes Multi-processeurs

●

Systèmes temps réel

●

Systèmes distribués
Définitions: Processus

Déf.:
Un processus est un programme lors de l'éxécution
(aspect dynamique d'un programme)
Définitions:
Traitement par lots (Batch processing)
●

Un utilisateurs donne plusieurs commandes
(« Jobs ») dans une queue d'éxécution de
programmes

●

Entièrement séquentielle

●

p.ex. pour faire plusieurs calculs pendant la nuit

●

p.ex. autoexec.bat
Définitions:
Systèmes Multi-tache (Multitasking)
●

●

Assurer l'éxécution de plusieurs programmes en
meme temps (c-à-d. plusieurs processus)
Chaque processus a besoin du processeur
–

situation concurrente

–

solution: « scheduling »
Définitions:
Systèmes Multi-processeurs
●

système avec plusieurs processeurs
–
–

vrai multi-tache

–

●

parallèle
doit assurer qu'il y a l'éxecution d'autant de processus
que processeurs en meme temps

contrairement: système avec un seul processeur
–

quasi-parallèle

–

arreter et reprendre les différentes processus
●

Gestion avec le « scheduler » (ordonnancement des processus)
Définitions:
Systèmes Multi-utilisateurs (« time-sharing »)
●

●

permettre a différentes personnes de travailler
avec un ordinateur en même temps
connexion par
–
–

●

●

via le terminal de l'ordinateur lui-même
à distance (telnet, ssh, ftp, ...)

donner l'impression à chaque utilisateur qu'il est
seul
exige une gestion des droits
–

de fichiers (pour éviter la destruction des fichiers etc.)

–

de processus
Définitions:
Multi-utilisateurs
●

Login

●

Type:
–
–

Groupes

–

●

Administrateur (« root »)
Utilisateurs

pour gérer les droits
Définitions:
Systèmes Temps réels
●

●

●

Sert pour le pilotage et le contrôle des
déroulements externes (p.ex. centrale électrique)
doit garantir des temps de réactions données pour
des signaux extérieur urgents
plusieurs systèmes d'exploitations n'y arrivent pas
car l'interruption de certaines activités met le
système dans un état instable
Définitions:
Systèmes distribués
●

●

●

doit permettre l'éxecution d'un seul programme
sur plusieurs machines
distribuer les processus et les remettre ensemble
pour gros calculs, p.ex. inversion de grandes
matrices
SE: Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des périphériques (entrées/sorties)
Gestion des processus
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
Ingrédients
●

Gestion de la mémoire

●

Gestion des fichiers

●

Gestion des processus

●

Gestion des périphériques (entrées/sorties)
–

●

Contrôle des péripheriques via « Pilotes » (Driver)

Quelques logiciels
–

Logiciels utilitaires (ls, pwd, format, ...)

–

Logiciels d'application (Bloc-notes, ...)

–

Logiciels de communication (Internet Explorer, ...)
Historique (avant les Systèmes
d'Exploitations)
1945 - 55 : tubes et interrupteurs


Pas de système d'exploitation

1955 - 65 : transistors, cartes perforées


Traitement par lots

1965 - 80 : circuits intégrés, disques



Multiprogrammation, temps-partagé, entrées/sorties
Unix, version BSD, AT&T, interface POSIX

1980 -- : ordinateurs personnels (PC)



Interface graphique (concept crée vers 1960, Stanford)
Réseaux et systèmes distribués

--> Système d'exploitation nécéssaire
Systèmes d'exploitations
●

CP/M (depuis 1974), Digital Research

●

UNIX (depuis 1969-1979), premier par AT&T

●

MS-DOS (depuis 1981), Microsoft

●

MacOS (depuis 1984), Apple

●

Windows (depuis 1991), Microsoft

●

Linux (depuis 1992), OpenSource
Systèmes d'exploitations
●

CP/M (depuis 1974), Digital Research
–

Gestion de disque dur, mais pas d'arborescence

–

Pas de graphisme

–

Exemple:
●

●

64 KO de RAM

●

–

CPU 8088, 2 MHz
5 MO de disque dur

cf. la loi de Murphy
Systèmes d'exploitations
●

UNIX (depuis 1969-1979), AT&T
–

a servi de modèle pour MS-DOS, Windows, ..

–

Multi-tâche et Multi-utilisateurs
●

accès simultané aux fichiers, péripheriques, mémoire,
processeurs, ..

–

Protection mémoire : aucun programme ne peut faire
planter le système

–

systèmes de fichiers hiérarchique

–

GUI X-Windows
Systèmes d'exploitations
●

MS-DOS (depuis 1981), Microsoft
Systèmes d'exploitations
●

MacOS (depuis 1984), Apple
–

premier GUI
Systèmes d'exploitation Windows
●

Windows 3.11
–

●

pas de multitâche, pas de multi-utilisateurs

Windows 95
–
–

●

multi-tâche
premier système 32 bit

Windows 98
–
–

●

Internet integré dans le GUI
Plug & Play

parallèlement Windows NT
–

●

système d'exploitation réseaux multi-utilisateur

Windows 2000, et après Windows XP
–

jumellage entre système d'exploitations réseaux et « stand-alone »
Systèmes d'exploitations
●

Linux (depuis 1992), OpenSource
–

finlandais Linus Thorwald

–

Licence GPL (General Public Licence) – OpenSource

–

Multi-tâche et Multi-utilisateurs

–

Distributions
●

Red Hat

●

Fedore

●

S.u.S.e

●

Debian

●

Mandrake..
Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des périphériques (entrées/sorties)
Gestion des processus
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des périphériques (entrées/sorties)
Gestion des processus
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des périphériques (entrées/sorties)
Gestion des processus
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
gestion mémoire (1/6)
Pour illustrer le travail du système d'exploitation, on choisit
de décrire quelques tactiques appliquées par les SE pour
gérer la mémoire :

1.

les partitions,

2.

le tassage,

3.

la pagination,

4.

la mémoire virtuelle.

Pour chacune on présente l'idée, la mise en œuvre, les
avantages et les inconvénients.
gestion mémoire (2/6)
les partitions
●

●

●

●

●

Technique « historique ».
Idée : Diviser arbitrairement la mémoire en partitions de
dimensions fixes : partitions statiques. Toutes les partitions
ne sont pas de même taille.
Mise en œuvre : Les programmes sont implantés dans
chaque partition.
Avantages : Simplicité du SWAP
Inconvénients : Un gros programme ne peut être exploité que
dans une partition suffisamment grande et un petit
programme rentabilise mal une grande partition.
gestion mémoire (3/6)
le tassage

●

●

●

●

Idée : Banaliser la mémoire et tasser les programmes les
uns à la suite des autres.
Mise en œuvre : …
Avantages : la mémoire centrale est mieux utilisée. A un
instant donné, il ne peut y avoir qu’une partition de libre.
Inconvénients : le tassage de la mémoire est coûteux en
temps de traitement.
gestion mémoire (4/6)
La pagination
●

●

●

●

Idée : Découper la mémoire en PAGES de dimension fixes et
implanter les programmes dans les pages libres.
Mise en œuvre : La conséquence est un éparpillement des
programmes en mémoire. Cela nécessite donc sous forme
matérielle (ou logicielle) la mise en place d’une table
d’occupation des pages, qui reconstitue l’ordre logique des
différentes parties des programmes.
Avantages : Ce type de gestion est très efficace car utilise au
maximum la mémoire et évite le tassage de mémoire.
Inconvénients : on reste toujours limité à la taille effective de
la mémoire.
gestion mémoire (5/6)
La mémoire virtuelle
●

●

Idée : Supprimer la contrainte de dimension de la
mémoire.
Mise en œuvre : On dote l’ordinateur de deux niveaux de
mémoire : la mémoire centrale (performante et chère) et
la mémoire de masse (le disque) moins performante mais
de dimension pratiquement illimitée.
–

Performances liées aux : seek time ; latency time ;
transmission time. Là encore l’optimisation est gérée
par le système d’exploitation qui met en place des
stratégies.
gestion mémoire (6/6)
La mémoire virtuelle (suite)
–

Enfin, est mis en place une stratégie (algorithme) de
choix de la page dont dépend beaucoup la rapidité du
système.

●

Avantages : Beaucoup de place !

●

Inconvénients : SWAP ou accès disque à optimiser

Remarque 1 : Vient en combinaison d’autres techniques de
gestion de la mémoire.
Remarque 2 : d’autres stratégies ou combinaisons de stratégie
existent … !
Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des périphériques (entrées/sorties)
Gestion des processus
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
processus (1/5)
Cette partie s’appuie sur le document "Ecrire des
applications réseau sous Linux", 3ième partie, Alain
Basty, Linux Magazine, octobre 1999" qui présente un
algorithme serveur (qui rend des services) pour gérer des
connexions simultanées.
Cet article sert de fil conducteur pour la présentation des
notions fondamentales suivantes :
processus (2/5)

• définition d'un processus (1960), table des processus.
système d'exploitation,
• différentes classes de libre » (projet GNU). introduction
de la notion de « logiciel
• système multitâche, temps partagé.
• communication : signal, pipe, socket
•« où est le père ? », « où est le fils ? »
• "threads"
• suppression d'un processus (suicide, assassinat)
• contrôle de la communication
processus (3/5)
Les états (simplifiés) d'un processus

•Waiting : le processus attend quelque chose pour pouvoir
s’exécuter
•Ready :
processeur.

le processus a tout pour s’exécuter sauf le

•Running : le processus s’exécute.
très
•Zombie : étattable particulier, le processus est mort seul reste
son ID dans la
des processus en attente d’être lu …
processus (4/5)
Notion de préemption
Définition : la préemption est la mise en attente forcée
d’un processus.

Un processus spécial s’occupe de faire « tourner » les
processus qui sont en running : c’est l'ordonnanceur ou
scheduler en anglais. La gestion de la préemption est appelé
l’ordonnancement ou le scheduling.
Les critères de choix appliqué par le S.E. déterminent
les performances du système.
processus (5/5)
Notion de préemption (suite)
Il y a différent niveau d’attente d’un processus, c’est à dire
différents états possibles au sein de l’état waiting et de l’état
ready. En effet, lorsque la mémoire est saturée, le processeur
transfère une zone mémoire sur le disque pour libérer de la
mémoire. Il choisit la zone mémoire d’un processus qui ne fait
rien. Lorsque le processeur devra exécuter un bout du code de
ce processus il devra recharger la zone mémoire stockée sur
disque en mémoire centrale. Cette opération (dans un sens et
dans l’autre) s’appelle le SWAP !
D’où deux états supplémentaires : « waiting swappé » et
« ready swappé ».
processus
exemple de création – simple 1
#include <stdio.h>
#include <unistd.h>
int main()
{
printf(“Bonjour de %d n ”, getpid());
fork();
printf(“Fin de %d n ”, getpid());
}
processus
exemple de création – simple 2
#include <stdio.h>
#include <unistd.h>
int main()
{
printf("Bonjour de %dn", getpid());
int pid = fork();
if (pid == 0)
{
printf("Je suis le FILS (pid = %d). %dn", pid, getpid());
} else
{
printf("Je suis le PERE (pid = %d). %dn", pid, getpid());
}
}
Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des périphériques (entrées/sorties)
Gestion des processus
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
entrées-sorties
Les entrées/sorties correspondent aux mécanismes
qu’utilisent les processus pour communiquer avec
l’extérieur. Ces entrées-sorties font largement appel aux
couches les plus proches du matériel, et dont le système
tente de masquer les particularités aux utilisateurs.
Il y a 3 types d’E/S :
1. Électroniques : mémoires
2. Magnétiques : disques ou disquettes
3. Mécaniques : clavier, imprimantes
Modèle en couches
Application (Logiciel, p.ex. Microsoft Word)
Gestion des fichiers
Gestion des processus
Gestion des périphériques (entrées/sorties)
Gestion de la mémoire
Noyau du Système d’exploitation
Pilote
Pilote
Pilote
Matériel
Systèmes de fichiers
Arborescence
Systèmes de fichiers
Arborescence
Système de fichiers
●

Arborescence

●

Nom des fichiers:
–

/home/jack/microarrays/estrogen

-rw-r----- 1 patrick lipsi 2340 Jun 11 17:45 guethary.jpg
-rwxr-x--- 1 patrick lipsi 2340 Jun 11 17:45 PacMan.exe
●

Droits:
–
–

●

Utilisateur Groupe Tous
'r' lire, 'w' ecrire, 'x' éxécuter

Types:
–

'-' Fichier regulier, 'd' repertoire, 'x' lien symbolique..
Système de fichiers UNIX
Repertoires
●

Créer des repertoires
mkdir [repertoire]

●

Changer le repertoire courant
cd [repertoire]
cd ..

●

Connaitre le repertoire courant
pwd

●

Effacer un repertoire
Système de fichiers UNIX
Fichiers
●

Créer des fichiers
emacs [fichier]

●

Copier des fichiers
cp [source] [destination]

●

Renommer/Déplacer des fichiers
mv [source] [destination]

●

Supprimer des fichiers
rm [fichier]
système de fichiers
●

●

●

Le système de fichier offre à l’utilisateur une vision
homogène et structurée des données et des ressources :
disques, mémoires, périphériques.
Le système gère la création des fichiers, leur destruction,
leur correspondance avec les dispositifs physiques, ainsi
qu’un certain nombre d’autres caractéristiques, telles que
la protection .
Il les organise enfin, en général, en une structure
arborescente
conclusion (1/2)
Les systèmes d’exploitation modernes intègrent par
ailleurs d’autres caractéristiques ….

●

●

l’interconnexion des différentes machines et des
différents systèmes par des réseaux locaux ou étendus
d’où des architectures informatiques fondés sur des
clients et des serveurs (cf I2-SI)
Multi-fenêtrage
conclusion (2/2)
Le système d’exploitation correspond à l’interface entre les
applications et le matériel !
–

Le programmeur d’applications n’aborde que rarement –
sinon jamais – son code interne. Il l’utilise par
l’intermédiaire d’« appels système », accessibles à partir
d’un langage de programmation (lang. C). Ces appels
permettent d’effectuer la plupart des opérations sur les
entités du système d’exploitation (cf. API (Application
Programming Interface)).

–

Un utilisateur peut lui aussi – dans une certaine mesure –
Références
1.

2.

3.

4.

5.

Computer Architecture, a first course, Van Nostrand Reinhold,
ISBN 2 225 80929 1
Ecrire des applications réseau sous Linux, thème Système et
réseaux de Linux Magazine, octobre 99, par Alain Basty.
man d’Unix, notons ici que lorsque l’on doit programmer les
systèmes d’exploitation le man d’Unix est la meilleure référence
pour le programmeur. Il n’y a rien d’équivalent sur papier.
J.M. Rifflet, La programmation sous Unix, 3e éd., McGraw-Hill,
1993 est cependant une bonne référence et un ouvrage assez
complet
Charles Petzold, Programming Windows 95, Microsoft Press,
1 de 55

Recomendados

Cours système d'exploitation por
Cours système d'exploitationCours système d'exploitation
Cours système d'exploitationAmel Morchdi
6.4K vistas60 diapositivas
Cours système d’exploitation partie1 por
Cours système d’exploitation partie1Cours système d’exploitation partie1
Cours système d’exploitation partie1manou2008
14.2K vistas273 diapositivas
Introduction aux systèmes d-exploitation (2).ppt por
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptMahdiHERMASSI1
207 vistas22 diapositivas
Gestion des threads por
Gestion des threadsGestion des threads
Gestion des threadsSana Aroussi
2.3K vistas296 diapositivas
Cour systeme d'exploitation sghaier anouar por
Cour systeme d'exploitation sghaier anouarCour systeme d'exploitation sghaier anouar
Cour systeme d'exploitation sghaier anouarAnouar Sghaier
2.5K vistas52 diapositivas
Tp n 3 linux por
Tp n 3 linuxTp n 3 linux
Tp n 3 linuxAmir Souissi
1.4K vistas6 diapositivas

Más contenido relacionado

La actualidad más candente

Tp n 4 linux por
Tp n 4 linuxTp n 4 linux
Tp n 4 linuxAmir Souissi
1.2K vistas4 diapositivas
Fonctionnement d’un système d’exploitation por
Fonctionnement d’un système d’exploitationFonctionnement d’un système d’exploitation
Fonctionnement d’un système d’exploitationImane Bellali
27.8K vistas13 diapositivas
Architecture de l'ordinateur Et Systeme d'exploitation por
Architecture de l'ordinateur Et Systeme d'exploitationArchitecture de l'ordinateur Et Systeme d'exploitation
Architecture de l'ordinateur Et Systeme d'exploitationTunisie collège
77.1K vistas18 diapositivas
Systèmes d'Exploitation - chp3-gestion mémoire por
Systèmes d'Exploitation - chp3-gestion mémoireSystèmes d'Exploitation - chp3-gestion mémoire
Systèmes d'Exploitation - chp3-gestion mémoireLilia Sfaxi
18.6K vistas44 diapositivas
Cours de programmation en c por
Cours de programmation en cCours de programmation en c
Cours de programmation en cbenouini rachid
3.2K vistas23 diapositivas
Fascicule de tp atelier développement web por
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement webHouda TOUKABRI
2.6K vistas61 diapositivas

La actualidad más candente(20)

Fonctionnement d’un système d’exploitation por Imane Bellali
Fonctionnement d’un système d’exploitationFonctionnement d’un système d’exploitation
Fonctionnement d’un système d’exploitation
Imane Bellali27.8K vistas
Architecture de l'ordinateur Et Systeme d'exploitation por Tunisie collège
Architecture de l'ordinateur Et Systeme d'exploitationArchitecture de l'ordinateur Et Systeme d'exploitation
Architecture de l'ordinateur Et Systeme d'exploitation
Tunisie collège77.1K vistas
Systèmes d'Exploitation - chp3-gestion mémoire por Lilia Sfaxi
Systèmes d'Exploitation - chp3-gestion mémoireSystèmes d'Exploitation - chp3-gestion mémoire
Systèmes d'Exploitation - chp3-gestion mémoire
Lilia Sfaxi18.6K vistas
Fascicule de tp atelier développement web por Houda TOUKABRI
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
Houda TOUKABRI2.6K vistas
Systèmes d'Exploitation - chp2-gestion des processus por Lilia Sfaxi
Systèmes d'Exploitation - chp2-gestion des processusSystèmes d'Exploitation - chp2-gestion des processus
Systèmes d'Exploitation - chp2-gestion des processus
Lilia Sfaxi12.7K vistas
Chapitre 3 tableaux et pointeurs en C por Abdelouahed Abdou
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en C
Abdelouahed Abdou4.8K vistas
Systèmes d'Exploitation - chp5-gestion fichiers por Lilia Sfaxi
Systèmes d'Exploitation - chp5-gestion fichiersSystèmes d'Exploitation - chp5-gestion fichiers
Systèmes d'Exploitation - chp5-gestion fichiers
Lilia Sfaxi9.8K vistas
Introduction aux systèmes répartis por Heithem Abbes
Introduction aux systèmes répartisIntroduction aux systèmes répartis
Introduction aux systèmes répartis
Heithem Abbes9.7K vistas
Admin linux utilisateurs_et_groupes cours 1 por Mehdi Bouihi
Admin linux utilisateurs_et_groupes cours 1Admin linux utilisateurs_et_groupes cours 1
Admin linux utilisateurs_et_groupes cours 1
Mehdi Bouihi356 vistas
Support du cours : Systèmes d'exploitation 2 (linux) por Faycel Chaoua
Support du cours : Systèmes d'exploitation 2 (linux)Support du cours : Systèmes d'exploitation 2 (linux)
Support du cours : Systèmes d'exploitation 2 (linux)
Faycel Chaoua3K vistas
Synchronisation sous systeme linux por Fadwa Gmiden
Synchronisation sous systeme linuxSynchronisation sous systeme linux
Synchronisation sous systeme linux
Fadwa Gmiden543 vistas
Intelligence Artificielle - Systèmes experts por Mohamed Heny SELMI
Intelligence Artificielle - Systèmes expertsIntelligence Artificielle - Systèmes experts
Intelligence Artificielle - Systèmes experts
Mohamed Heny SELMI8.7K vistas
Cours sécurité 2_asr por TECOS
Cours sécurité 2_asrCours sécurité 2_asr
Cours sécurité 2_asr
TECOS4K vistas
Systèmes d'Exploitation - chp1-introduction por Lilia Sfaxi
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introduction
Lilia Sfaxi8.2K vistas

Destacado

System d\'exploitation por
System d\'exploitationSystem d\'exploitation
System d\'exploitationThắng Thao
4.3K vistas24 diapositivas
Cours informatique ordinateur et système d'exploitation por
Cours informatique ordinateur et système d'exploitationCours informatique ordinateur et système d'exploitation
Cours informatique ordinateur et système d'exploitationTunisie collège
114K vistas11 diapositivas
Ppt cours de français por
Ppt   cours de françaisPpt   cours de français
Ppt cours de françaisMika 'el
8.4K vistas6 diapositivas
Bonjour ça va por
Bonjour ça vaBonjour ça va
Bonjour ça vaAllison Albino
1.1K vistas23 diapositivas
Speak English por
Speak EnglishSpeak English
Speak Englishstephanie vincent
49.1K vistas25 diapositivas
Cours & Exercice métalogénie (Dr. sorokoby) por
Cours & Exercice métalogénie (Dr. sorokoby)Cours & Exercice métalogénie (Dr. sorokoby)
Cours & Exercice métalogénie (Dr. sorokoby)LS-Elearning
20.9K vistas10 diapositivas

Destacado(18)

System d\'exploitation por Thắng Thao
System d\'exploitationSystem d\'exploitation
System d\'exploitation
Thắng Thao4.3K vistas
Cours informatique ordinateur et système d'exploitation por Tunisie collège
Cours informatique ordinateur et système d'exploitationCours informatique ordinateur et système d'exploitation
Cours informatique ordinateur et système d'exploitation
Tunisie collège114K vistas
Ppt cours de français por Mika 'el
Ppt   cours de françaisPpt   cours de français
Ppt cours de français
Mika 'el8.4K vistas
Cours & Exercice métalogénie (Dr. sorokoby) por LS-Elearning
Cours & Exercice métalogénie (Dr. sorokoby)Cours & Exercice métalogénie (Dr. sorokoby)
Cours & Exercice métalogénie (Dr. sorokoby)
LS-Elearning20.9K vistas
Les langages de programmation por Pierre Tran
Les langages de programmationLes langages de programmation
Les langages de programmation
Pierre Tran3K vistas
1 million downloaded Spoken English e-book por Sujai.G Pillai
1 million downloaded Spoken English e-book 1 million downloaded Spoken English e-book
1 million downloaded Spoken English e-book
Sujai.G Pillai121.7K vistas
Operating system and its function por Nikhi Jain
Operating system and its functionOperating system and its function
Operating system and its function
Nikhi Jain156.3K vistas
Apprendre le francais (1) por Katha8459
Apprendre le francais (1)Apprendre le francais (1)
Apprendre le francais (1)
Katha84591.6K vistas
Cours informatique chapitre 1 ordinateur et système d'exploitation 7ème por Tunisie collège
Cours informatique chapitre 1 ordinateur et système d'exploitation   7ème Cours informatique chapitre 1 ordinateur et système d'exploitation   7ème
Cours informatique chapitre 1 ordinateur et système d'exploitation 7ème
Tunisie collège42K vistas
Langages de programmation por decoderlecode
Langages de programmationLangages de programmation
Langages de programmation
decoderlecode6.9K vistas
Pourquoi apprendre le français por mmebatchelor
Pourquoi apprendre le françaisPourquoi apprendre le français
Pourquoi apprendre le français
mmebatchelor7.2K vistas
Chapitre1ordinateur et systeme d'exploitation por Saad Loula
Chapitre1ordinateur et systeme d'exploitationChapitre1ordinateur et systeme d'exploitation
Chapitre1ordinateur et systeme d'exploitation
Saad Loula22.8K vistas
Système d'exploitation por neoh777
Système d'exploitationSystème d'exploitation
Système d'exploitation
neoh7772.8K vistas

Similar a Système d’exploitation: Principe

0081-cours-systemes-exploitations.ppt por
0081-cours-systemes-exploitations.ppt0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.pptDenisKouakou1
7 vistas55 diapositivas
chapitre0.pptx por
chapitre0.pptxchapitre0.pptx
chapitre0.pptxBenFradjHajer1
8 vistas26 diapositivas
Cours SE IAG Système d'exploitation Windows - IPSET.pdf por
Cours SE IAG Système d'exploitation Windows - IPSET.pdfCours SE IAG Système d'exploitation Windows - IPSET.pdf
Cours SE IAG Système d'exploitation Windows - IPSET.pdfMedBechir
109 vistas10 diapositivas
1514117367383.pptx por
1514117367383.pptx1514117367383.pptx
1514117367383.pptxBenFradjHajer1
2 vistas26 diapositivas
1514117367383.pptx por
1514117367383.pptx1514117367383.pptx
1514117367383.pptxMahdiHERMASSI1
8 vistas26 diapositivas
Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008 por
Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008
Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008guest9dd59e
18.4K vistas75 diapositivas

Similar a Système d’exploitation: Principe(20)

0081-cours-systemes-exploitations.ppt por DenisKouakou1
0081-cours-systemes-exploitations.ppt0081-cours-systemes-exploitations.ppt
0081-cours-systemes-exploitations.ppt
DenisKouakou17 vistas
Cours SE IAG Système d'exploitation Windows - IPSET.pdf por MedBechir
Cours SE IAG Système d'exploitation Windows - IPSET.pdfCours SE IAG Système d'exploitation Windows - IPSET.pdf
Cours SE IAG Système d'exploitation Windows - IPSET.pdf
MedBechir109 vistas
Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008 por guest9dd59e
Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008
Cours Microsoft Windows 2003 Server 1ere Partie 6 Mars 2008
guest9dd59e18.4K vistas
resume-theorique-m104-2203-6246fb9f3e558 (2).pdf por FootballLovers9
resume-theorique-m104-2203-6246fb9f3e558 (2).pdfresume-theorique-m104-2203-6246fb9f3e558 (2).pdf
resume-theorique-m104-2203-6246fb9f3e558 (2).pdf
FootballLovers925 vistas
0484-systemes-d-exploitation-os.pdf por RihabBENLAMINE
0484-systemes-d-exploitation-os.pdf0484-systemes-d-exploitation-os.pdf
0484-systemes-d-exploitation-os.pdf
RihabBENLAMINE6 vistas
lessons_se-partie01.pdf por reda42878
lessons_se-partie01.pdflessons_se-partie01.pdf
lessons_se-partie01.pdf
reda4287812 vistas
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf por RihabBENLAMINE
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdfcoursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
coursystemedexploitaionsghaieranouar-150103105816-conversion-gate01.pdf
RihabBENLAMINE3 vistas
Presentation Pascal por guestb3a127
Presentation PascalPresentation Pascal
Presentation Pascal
guestb3a127217 vistas
La programmation systéme en langage C sous UNIX por Ben Hassen Hamdi
La programmation systéme en langage C sous UNIXLa programmation systéme en langage C sous UNIX
La programmation systéme en langage C sous UNIX
Ben Hassen Hamdi1.9K vistas
Simulation d’un système à temps partagé por Bachir Benyammi
Simulation d’un système à temps partagéSimulation d’un système à temps partagé
Simulation d’un système à temps partagé
Bachir Benyammi2.5K vistas

Más de Souhaib El

Comment votre pc peut il être piraté sur internet por
Comment votre pc peut il être piraté sur internetComment votre pc peut il être piraté sur internet
Comment votre pc peut il être piraté sur internetSouhaib El
1.1K vistas6 diapositivas
Les Réseaux sans fils 802.11 por
 Les Réseaux sans fils 802.11 Les Réseaux sans fils 802.11
Les Réseaux sans fils 802.11Souhaib El
2.9K vistas71 diapositivas
Exchange Server 2010 por
Exchange Server 2010Exchange Server 2010
Exchange Server 2010Souhaib El
2.7K vistas55 diapositivas
Supervision por
SupervisionSupervision
SupervisionSouhaib El
9.2K vistas60 diapositivas
service NFS sous linux por
 service NFS sous linux service NFS sous linux
service NFS sous linuxSouhaib El
1.6K vistas9 diapositivas
Le protocole HTTP por
Le protocole HTTPLe protocole HTTP
Le protocole HTTPSouhaib El
7.7K vistas134 diapositivas

Más de Souhaib El(16)

Comment votre pc peut il être piraté sur internet por Souhaib El
Comment votre pc peut il être piraté sur internetComment votre pc peut il être piraté sur internet
Comment votre pc peut il être piraté sur internet
Souhaib El1.1K vistas
Les Réseaux sans fils 802.11 por Souhaib El
 Les Réseaux sans fils 802.11 Les Réseaux sans fils 802.11
Les Réseaux sans fils 802.11
Souhaib El2.9K vistas
Exchange Server 2010 por Souhaib El
Exchange Server 2010Exchange Server 2010
Exchange Server 2010
Souhaib El2.7K vistas
Supervision por Souhaib El
SupervisionSupervision
Supervision
Souhaib El9.2K vistas
service NFS sous linux por Souhaib El
 service NFS sous linux service NFS sous linux
service NFS sous linux
Souhaib El1.6K vistas
Le protocole HTTP por Souhaib El
Le protocole HTTPLe protocole HTTP
Le protocole HTTP
Souhaib El7.7K vistas
SSH - Secure Shell por Souhaib El
SSH - Secure ShellSSH - Secure Shell
SSH - Secure Shell
Souhaib El3.2K vistas
Réseau sans fil technologie wi-fi por Souhaib El
Réseau sans fil technologie wi-fiRéseau sans fil technologie wi-fi
Réseau sans fil technologie wi-fi
Souhaib El6K vistas
DNS sous linux por Souhaib El
DNS sous linuxDNS sous linux
DNS sous linux
Souhaib El1.3K vistas
Securite informatique por Souhaib El
Securite informatiqueSecurite informatique
Securite informatique
Souhaib El5.6K vistas
Securite informatique por Souhaib El
Securite informatiqueSecurite informatique
Securite informatique
Souhaib El1.7K vistas
DHCP sous Ubuntu por Souhaib El
DHCP sous Ubuntu DHCP sous Ubuntu
DHCP sous Ubuntu
Souhaib El2.8K vistas
DHCP sous fedora por Souhaib El
DHCP sous fedora DHCP sous fedora
DHCP sous fedora
Souhaib El3.2K vistas
installation et configuration du DNS sous Windows serveur 2003 por Souhaib El
installation et configuration du DNS sous Windows serveur 2003installation et configuration du DNS sous Windows serveur 2003
installation et configuration du DNS sous Windows serveur 2003
Souhaib El6.3K vistas
les Commandes linux/Unix (giants networks) por Souhaib El
les Commandes linux/Unix (giants networks)les Commandes linux/Unix (giants networks)
les Commandes linux/Unix (giants networks)
Souhaib El4K vistas
Qcm serveur 2003 souhaib el por Souhaib El
Qcm serveur 2003 souhaib elQcm serveur 2003 souhaib el
Qcm serveur 2003 souhaib el
Souhaib El8.2K vistas

Último

Newsletter SPW Agriculture en province de LIEGE du 28-11-23 por
Newsletter SPW Agriculture en province de LIEGE du 28-11-23Newsletter SPW Agriculture en province de LIEGE du 28-11-23
Newsletter SPW Agriculture en province de LIEGE du 28-11-23BenotGeorges3
26 vistas21 diapositivas
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2... por
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2...Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2...
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2...BenotGeorges3
24 vistas18 diapositivas
Formation M2i - Augmenter son impact en communication et en management grâce... por
Formation M2i - Augmenter son impact en communication et en management grâce...Formation M2i - Augmenter son impact en communication et en management grâce...
Formation M2i - Augmenter son impact en communication et en management grâce...M2i Formation
60 vistas55 diapositivas
Abréviations et symboles (1).pdf por
Abréviations et symboles (1).pdfAbréviations et symboles (1).pdf
Abréviations et symboles (1).pdfStagiaireLearningmat
26 vistas2 diapositivas
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 por
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23Newsletter SPW Agriculture en province du Luxembourg du 13-11-23
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23BenotGeorges3
6 vistas17 diapositivas
Éléments visuels.pdf por
Éléments visuels.pdfÉléments visuels.pdf
Éléments visuels.pdfStagiaireLearningmat
31 vistas2 diapositivas

Último(15)

Newsletter SPW Agriculture en province de LIEGE du 28-11-23 por BenotGeorges3
Newsletter SPW Agriculture en province de LIEGE du 28-11-23Newsletter SPW Agriculture en province de LIEGE du 28-11-23
Newsletter SPW Agriculture en province de LIEGE du 28-11-23
BenotGeorges326 vistas
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2... por BenotGeorges3
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2...Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2...
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 (adapté au 2...
BenotGeorges324 vistas
Formation M2i - Augmenter son impact en communication et en management grâce... por M2i Formation
Formation M2i - Augmenter son impact en communication et en management grâce...Formation M2i - Augmenter son impact en communication et en management grâce...
Formation M2i - Augmenter son impact en communication et en management grâce...
M2i Formation60 vistas
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23 por BenotGeorges3
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23Newsletter SPW Agriculture en province du Luxembourg du 13-11-23
Newsletter SPW Agriculture en province du Luxembourg du 13-11-23
BenotGeorges36 vistas
Formation M2i - Cadre réglementaire des IA Génératives : premiers éléments de... por M2i Formation
Formation M2i - Cadre réglementaire des IA Génératives : premiers éléments de...Formation M2i - Cadre réglementaire des IA Génératives : premiers éléments de...
Formation M2i - Cadre réglementaire des IA Génératives : premiers éléments de...
M2i Formation20 vistas
Cours Audit General 2019 (1).prof tatouti .pdf por Abdelghani19
Cours Audit  General 2019 (1).prof tatouti .pdfCours Audit  General 2019 (1).prof tatouti .pdf
Cours Audit General 2019 (1).prof tatouti .pdf
Abdelghani197 vistas
MNGTCOUT PROJET 04112023.pptx por HAIDI2
MNGTCOUT PROJET 04112023.pptxMNGTCOUT PROJET 04112023.pptx
MNGTCOUT PROJET 04112023.pptx
HAIDI26 vistas
Julia Margaret Cameron por Txaruka
Julia Margaret Cameron Julia Margaret Cameron
Julia Margaret Cameron
Txaruka5 vistas
Présentation de lancement SAE105 por JeanLucHusson
Présentation de lancement SAE105Présentation de lancement SAE105
Présentation de lancement SAE105
JeanLucHusson121 vistas
Julia Margaret Cameron por Txaruka
Julia Margaret CameronJulia Margaret Cameron
Julia Margaret Cameron
Txaruka74 vistas

Système d’exploitation: Principe

  • 2. Planning ● Mardi, 15/03 8:30 – 10:30 Cours ● Mardi, 29/03 16:00 – 18:00 Cours ● Mercredi, 20/04 8:30 – 12:30 TP/TD
  • 3. Systèmes d'exploitations ● angl. « Operating System (OS) » ● Qu'est-ce que c'est? « Programme assurant la gestion de l'ordinateur et de ses périphériques » [www.dicofr.com] ● A quoi ca sert? – à simplifier la vie des utilisateurs et des programmeurs – à gérer les ressources de la machine d'une manière efficace
  • 4. Abstraction ● ● Cacher la complexité des machines pour l'utilisateur afin d'utiliser la machine sans savoir ce qui est derrière Abstraction du terme « Machine » selon Coy: – machine réelle = Unité centrale + périphériques – machine abstraite = machine réelle + système d'exploitation – machine utilisable = machine abstraite + application
  • 5. Exigences à un Système d'exploitation  Généralités   Gérer 2D, 3D, vidéo, audio, réseau, CD, DVD, clé USB, ...  Plusieurs utilisateurs (itinérants) --> multi-utilisateurs   Satisfaire les utilisateurs et les programmeurs être extensible De plus en plus gros et complexe :  Efficace, évolutif, maintenable
  • 6. Exigences de l'utilisateur  « Faut que ça marche ! » (comme j'en ai envie ...)  « Ça imprime pas ... »  = Machine utilisable (machine étendu)
  • 7. Exigences du programmeur  Simplifier l'accès aux ressources de la machine :   Mémoire, processeur, périphériques, fichiers, programmes, réseaux, communication interne Modèle de programmation simple et unifié  Efficacité dans tous les cas  = Machine étendue
  • 8. Quelques définitions ● Processus ● Traitement par lots ● Systèmes Multi-tache ● Systèmes Multi-utilisateurs ● Systèmes Multi-processeurs ● Systèmes temps réel ● Systèmes distribués
  • 9. Définitions: Processus Déf.: Un processus est un programme lors de l'éxécution (aspect dynamique d'un programme)
  • 10. Définitions: Traitement par lots (Batch processing) ● Un utilisateurs donne plusieurs commandes (« Jobs ») dans une queue d'éxécution de programmes ● Entièrement séquentielle ● p.ex. pour faire plusieurs calculs pendant la nuit ● p.ex. autoexec.bat
  • 11. Définitions: Systèmes Multi-tache (Multitasking) ● ● Assurer l'éxécution de plusieurs programmes en meme temps (c-à-d. plusieurs processus) Chaque processus a besoin du processeur – situation concurrente – solution: « scheduling »
  • 12. Définitions: Systèmes Multi-processeurs ● système avec plusieurs processeurs – – vrai multi-tache – ● parallèle doit assurer qu'il y a l'éxecution d'autant de processus que processeurs en meme temps contrairement: système avec un seul processeur – quasi-parallèle – arreter et reprendre les différentes processus ● Gestion avec le « scheduler » (ordonnancement des processus)
  • 13. Définitions: Systèmes Multi-utilisateurs (« time-sharing ») ● ● permettre a différentes personnes de travailler avec un ordinateur en même temps connexion par – – ● ● via le terminal de l'ordinateur lui-même à distance (telnet, ssh, ftp, ...) donner l'impression à chaque utilisateur qu'il est seul exige une gestion des droits – de fichiers (pour éviter la destruction des fichiers etc.) – de processus
  • 15. Définitions: Systèmes Temps réels ● ● ● Sert pour le pilotage et le contrôle des déroulements externes (p.ex. centrale électrique) doit garantir des temps de réactions données pour des signaux extérieur urgents plusieurs systèmes d'exploitations n'y arrivent pas car l'interruption de certaines activités met le système dans un état instable
  • 16. Définitions: Systèmes distribués ● ● ● doit permettre l'éxecution d'un seul programme sur plusieurs machines distribuer les processus et les remettre ensemble pour gros calculs, p.ex. inversion de grandes matrices
  • 17. SE: Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des périphériques (entrées/sorties) Gestion des processus Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 18. Ingrédients ● Gestion de la mémoire ● Gestion des fichiers ● Gestion des processus ● Gestion des périphériques (entrées/sorties) – ● Contrôle des péripheriques via « Pilotes » (Driver) Quelques logiciels – Logiciels utilitaires (ls, pwd, format, ...) – Logiciels d'application (Bloc-notes, ...) – Logiciels de communication (Internet Explorer, ...)
  • 19. Historique (avant les Systèmes d'Exploitations) 1945 - 55 : tubes et interrupteurs  Pas de système d'exploitation 1955 - 65 : transistors, cartes perforées  Traitement par lots 1965 - 80 : circuits intégrés, disques   Multiprogrammation, temps-partagé, entrées/sorties Unix, version BSD, AT&T, interface POSIX 1980 -- : ordinateurs personnels (PC)   Interface graphique (concept crée vers 1960, Stanford) Réseaux et systèmes distribués --> Système d'exploitation nécéssaire
  • 20. Systèmes d'exploitations ● CP/M (depuis 1974), Digital Research ● UNIX (depuis 1969-1979), premier par AT&T ● MS-DOS (depuis 1981), Microsoft ● MacOS (depuis 1984), Apple ● Windows (depuis 1991), Microsoft ● Linux (depuis 1992), OpenSource
  • 21. Systèmes d'exploitations ● CP/M (depuis 1974), Digital Research – Gestion de disque dur, mais pas d'arborescence – Pas de graphisme – Exemple: ● ● 64 KO de RAM ● – CPU 8088, 2 MHz 5 MO de disque dur cf. la loi de Murphy
  • 22. Systèmes d'exploitations ● UNIX (depuis 1969-1979), AT&T – a servi de modèle pour MS-DOS, Windows, .. – Multi-tâche et Multi-utilisateurs ● accès simultané aux fichiers, péripheriques, mémoire, processeurs, .. – Protection mémoire : aucun programme ne peut faire planter le système – systèmes de fichiers hiérarchique – GUI X-Windows
  • 24. Systèmes d'exploitations ● MacOS (depuis 1984), Apple – premier GUI
  • 25. Systèmes d'exploitation Windows ● Windows 3.11 – ● pas de multitâche, pas de multi-utilisateurs Windows 95 – – ● multi-tâche premier système 32 bit Windows 98 – – ● Internet integré dans le GUI Plug & Play parallèlement Windows NT – ● système d'exploitation réseaux multi-utilisateur Windows 2000, et après Windows XP – jumellage entre système d'exploitations réseaux et « stand-alone »
  • 26. Systèmes d'exploitations ● Linux (depuis 1992), OpenSource – finlandais Linus Thorwald – Licence GPL (General Public Licence) – OpenSource – Multi-tâche et Multi-utilisateurs – Distributions ● Red Hat ● Fedore ● S.u.S.e ● Debian ● Mandrake..
  • 27. Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des périphériques (entrées/sorties) Gestion des processus Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 28. Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des périphériques (entrées/sorties) Gestion des processus Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 29. Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des périphériques (entrées/sorties) Gestion des processus Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 30. gestion mémoire (1/6) Pour illustrer le travail du système d'exploitation, on choisit de décrire quelques tactiques appliquées par les SE pour gérer la mémoire : 1. les partitions, 2. le tassage, 3. la pagination, 4. la mémoire virtuelle. Pour chacune on présente l'idée, la mise en œuvre, les avantages et les inconvénients.
  • 31. gestion mémoire (2/6) les partitions ● ● ● ● ● Technique « historique ». Idée : Diviser arbitrairement la mémoire en partitions de dimensions fixes : partitions statiques. Toutes les partitions ne sont pas de même taille. Mise en œuvre : Les programmes sont implantés dans chaque partition. Avantages : Simplicité du SWAP Inconvénients : Un gros programme ne peut être exploité que dans une partition suffisamment grande et un petit programme rentabilise mal une grande partition.
  • 32. gestion mémoire (3/6) le tassage ● ● ● ● Idée : Banaliser la mémoire et tasser les programmes les uns à la suite des autres. Mise en œuvre : … Avantages : la mémoire centrale est mieux utilisée. A un instant donné, il ne peut y avoir qu’une partition de libre. Inconvénients : le tassage de la mémoire est coûteux en temps de traitement.
  • 33. gestion mémoire (4/6) La pagination ● ● ● ● Idée : Découper la mémoire en PAGES de dimension fixes et implanter les programmes dans les pages libres. Mise en œuvre : La conséquence est un éparpillement des programmes en mémoire. Cela nécessite donc sous forme matérielle (ou logicielle) la mise en place d’une table d’occupation des pages, qui reconstitue l’ordre logique des différentes parties des programmes. Avantages : Ce type de gestion est très efficace car utilise au maximum la mémoire et évite le tassage de mémoire. Inconvénients : on reste toujours limité à la taille effective de la mémoire.
  • 34. gestion mémoire (5/6) La mémoire virtuelle ● ● Idée : Supprimer la contrainte de dimension de la mémoire. Mise en œuvre : On dote l’ordinateur de deux niveaux de mémoire : la mémoire centrale (performante et chère) et la mémoire de masse (le disque) moins performante mais de dimension pratiquement illimitée. – Performances liées aux : seek time ; latency time ; transmission time. Là encore l’optimisation est gérée par le système d’exploitation qui met en place des stratégies.
  • 35. gestion mémoire (6/6) La mémoire virtuelle (suite) – Enfin, est mis en place une stratégie (algorithme) de choix de la page dont dépend beaucoup la rapidité du système. ● Avantages : Beaucoup de place ! ● Inconvénients : SWAP ou accès disque à optimiser Remarque 1 : Vient en combinaison d’autres techniques de gestion de la mémoire. Remarque 2 : d’autres stratégies ou combinaisons de stratégie existent … !
  • 36. Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des périphériques (entrées/sorties) Gestion des processus Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 37. processus (1/5) Cette partie s’appuie sur le document "Ecrire des applications réseau sous Linux", 3ième partie, Alain Basty, Linux Magazine, octobre 1999" qui présente un algorithme serveur (qui rend des services) pour gérer des connexions simultanées. Cet article sert de fil conducteur pour la présentation des notions fondamentales suivantes :
  • 38. processus (2/5) • définition d'un processus (1960), table des processus. système d'exploitation, • différentes classes de libre » (projet GNU). introduction de la notion de « logiciel • système multitâche, temps partagé. • communication : signal, pipe, socket •« où est le père ? », « où est le fils ? » • "threads" • suppression d'un processus (suicide, assassinat) • contrôle de la communication
  • 39. processus (3/5) Les états (simplifiés) d'un processus •Waiting : le processus attend quelque chose pour pouvoir s’exécuter •Ready : processeur. le processus a tout pour s’exécuter sauf le •Running : le processus s’exécute. très •Zombie : étattable particulier, le processus est mort seul reste son ID dans la des processus en attente d’être lu …
  • 40. processus (4/5) Notion de préemption Définition : la préemption est la mise en attente forcée d’un processus. Un processus spécial s’occupe de faire « tourner » les processus qui sont en running : c’est l'ordonnanceur ou scheduler en anglais. La gestion de la préemption est appelé l’ordonnancement ou le scheduling. Les critères de choix appliqué par le S.E. déterminent les performances du système.
  • 41. processus (5/5) Notion de préemption (suite) Il y a différent niveau d’attente d’un processus, c’est à dire différents états possibles au sein de l’état waiting et de l’état ready. En effet, lorsque la mémoire est saturée, le processeur transfère une zone mémoire sur le disque pour libérer de la mémoire. Il choisit la zone mémoire d’un processus qui ne fait rien. Lorsque le processeur devra exécuter un bout du code de ce processus il devra recharger la zone mémoire stockée sur disque en mémoire centrale. Cette opération (dans un sens et dans l’autre) s’appelle le SWAP ! D’où deux états supplémentaires : « waiting swappé » et « ready swappé ».
  • 42. processus exemple de création – simple 1 #include <stdio.h> #include <unistd.h> int main() { printf(“Bonjour de %d n ”, getpid()); fork(); printf(“Fin de %d n ”, getpid()); }
  • 43. processus exemple de création – simple 2 #include <stdio.h> #include <unistd.h> int main() { printf("Bonjour de %dn", getpid()); int pid = fork(); if (pid == 0) { printf("Je suis le FILS (pid = %d). %dn", pid, getpid()); } else { printf("Je suis le PERE (pid = %d). %dn", pid, getpid()); } }
  • 44. Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des périphériques (entrées/sorties) Gestion des processus Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 45. entrées-sorties Les entrées/sorties correspondent aux mécanismes qu’utilisent les processus pour communiquer avec l’extérieur. Ces entrées-sorties font largement appel aux couches les plus proches du matériel, et dont le système tente de masquer les particularités aux utilisateurs. Il y a 3 types d’E/S : 1. Électroniques : mémoires 2. Magnétiques : disques ou disquettes 3. Mécaniques : clavier, imprimantes
  • 46. Modèle en couches Application (Logiciel, p.ex. Microsoft Word) Gestion des fichiers Gestion des processus Gestion des périphériques (entrées/sorties) Gestion de la mémoire Noyau du Système d’exploitation Pilote Pilote Pilote Matériel
  • 49. Système de fichiers ● Arborescence ● Nom des fichiers: – /home/jack/microarrays/estrogen -rw-r----- 1 patrick lipsi 2340 Jun 11 17:45 guethary.jpg -rwxr-x--- 1 patrick lipsi 2340 Jun 11 17:45 PacMan.exe ● Droits: – – ● Utilisateur Groupe Tous 'r' lire, 'w' ecrire, 'x' éxécuter Types: – '-' Fichier regulier, 'd' repertoire, 'x' lien symbolique..
  • 50. Système de fichiers UNIX Repertoires ● Créer des repertoires mkdir [repertoire] ● Changer le repertoire courant cd [repertoire] cd .. ● Connaitre le repertoire courant pwd ● Effacer un repertoire
  • 51. Système de fichiers UNIX Fichiers ● Créer des fichiers emacs [fichier] ● Copier des fichiers cp [source] [destination] ● Renommer/Déplacer des fichiers mv [source] [destination] ● Supprimer des fichiers rm [fichier]
  • 52. système de fichiers ● ● ● Le système de fichier offre à l’utilisateur une vision homogène et structurée des données et des ressources : disques, mémoires, périphériques. Le système gère la création des fichiers, leur destruction, leur correspondance avec les dispositifs physiques, ainsi qu’un certain nombre d’autres caractéristiques, telles que la protection . Il les organise enfin, en général, en une structure arborescente
  • 53. conclusion (1/2) Les systèmes d’exploitation modernes intègrent par ailleurs d’autres caractéristiques …. ● ● l’interconnexion des différentes machines et des différents systèmes par des réseaux locaux ou étendus d’où des architectures informatiques fondés sur des clients et des serveurs (cf I2-SI) Multi-fenêtrage
  • 54. conclusion (2/2) Le système d’exploitation correspond à l’interface entre les applications et le matériel ! – Le programmeur d’applications n’aborde que rarement – sinon jamais – son code interne. Il l’utilise par l’intermédiaire d’« appels système », accessibles à partir d’un langage de programmation (lang. C). Ces appels permettent d’effectuer la plupart des opérations sur les entités du système d’exploitation (cf. API (Application Programming Interface)). – Un utilisateur peut lui aussi – dans une certaine mesure –
  • 55. Références 1. 2. 3. 4. 5. Computer Architecture, a first course, Van Nostrand Reinhold, ISBN 2 225 80929 1 Ecrire des applications réseau sous Linux, thème Système et réseaux de Linux Magazine, octobre 99, par Alain Basty. man d’Unix, notons ici que lorsque l’on doit programmer les systèmes d’exploitation le man d’Unix est la meilleure référence pour le programmeur. Il n’y a rien d’équivalent sur papier. J.M. Rifflet, La programmation sous Unix, 3e éd., McGraw-Hill, 1993 est cependant une bonne référence et un ouvrage assez complet Charles Petzold, Programming Windows 95, Microsoft Press,