Introduction§

Systèmes d’exploitation

auteur:Pierre-Antoine Champin
adresse:Département Informatique - IUT - Lyon1
licence:Ce travail est sous license Creative Commons Attribution-ShareAlike 3.0 France
1

Contexte§

2

L’enseignant§

e-mail:pierre-antoine.champin at univ-lyon1.fr
web:http://champin.net/enseignement/
3

Système d’exploitation ?§

nuage de tags réalisé avec http://www.wordle.net/
4

(Tentative de) Définition§

5

Illustration§

_images/utilisabilite.png
6

Rôles du SE§

Les « cinq A » :

7

Aide§

→ modularité, maintenabilité du code

8

Abstraction§

portabilité du code

9

Augmentation§

portabilité accrue

10

Arbitrage§

fiabilité du système

11

Autorisation§

sécurité du système

12

Une perspective de programmeur§

int main (int argc, char* argv[]) {
    printf("hello world!\n");
    return 0;
}
compilation édition de liens appels systèmes
13

UNIX : l’ancêtre§

14

Historique§

15

Évolutions d’UNIX§

→ l’héritage d’UNIX est encore très présent

16

Innovations d’UNIX§

Deux innovations majeures :

→ encore présentes dans tous les systèmes actuels

17

Au delà des systèmes d’exploitation§

18

Pour aller plus loin§

Les rôles identifiés du système d’exploitation peuvent être joués par d”autres composants logiciels.

⚠ Les deux types de système dont on va parler sont souvent appelés « machines virtuelles ». Mais dans les deux cas, ce même terme désigne des choses très différentes.

19

Hyperviseurs§

Hyperviseur : logiciel qui permet d’éxécuter un ou plusieurs systèmes d’exploitation (superviseurs) dans un environnement matériel virtuel (ou « machine virtuelle »).

Exemples :

20

Illustration§

21

Remarques§

22

Interpréteurs§

De nombreux langages aujourd’hui ne sont plus compilés dans le langage machine, mais dans un langage machine abstrait, interprété ensuite par une « machine virtuelle ».

Exemple :

23

Devises§

On pourrait décliner des devises similaires :

24

Plan du cours§

25

Plan du cours§

Noyau :

Processus :

26

Plan du cours (2)§

Mémoire :

Système de fichiers :

27