• Aucun résultat trouvé

Systèmes d exploitation

N/A
N/A
Protected

Academic year: 2022

Partager "Systèmes d exploitation"

Copied!
87
0
0

Texte intégral

(1)

Systèmes d’exploitation

Partie 1 : Introduction, Généralités

Éric Würbel

IUT R & T 1reannée

(2)

Systèmes d’exploitation

> Plan

Plan

1 Généralités

2 Architecture matérielle

3 Fonctions de base du système d’exploitation

4 Historique

5 Unix/Linux

(3)

Systèmes d’exploitation

> Généralités

Plan

1 Généralités

2 Architecture matérielle

3 Fonctions de base du système d’exploitation

4 Historique

5 Unix/Linux

(4)

Systèmes d’exploitation

> Généralités

Objectifs

I Un système d’exploitation, qu’est-ce que c’est ?

I Historique

I Les différents composants d’un système d’exploitation I GNU/Linux

(5)

Systèmes d’exploitation

> Généralités

Objectifs

I Un système d’exploitation, qu’est-ce que c’est ? I Historique

I Les différents composants d’un système d’exploitation I GNU/Linux

(6)

Systèmes d’exploitation

> Généralités

Objectifs

I Un système d’exploitation, qu’est-ce que c’est ? I Historique

I Les différents composants d’un système d’exploitation

I GNU/Linux

(7)

Systèmes d’exploitation

> Généralités

Objectifs

I Un système d’exploitation, qu’est-ce que c’est ? I Historique

I Les différents composants d’un système d’exploitation I GNU/Linux

(8)

Systèmes d’exploitation

> Généralités

Définition

Définition

Le système d’exploitation contrôle les ressources de l’ordinateur, et fournit la base sur laquelle seront construits les programmes d’application.

Deux tâches sans rapport l’une avec l’autre :

I soustraire le matériel au regard du programmeur I gérer les ressources

(9)

Systèmes d’exploitation

> Généralités

Définition

Définition

Le système d’exploitation contrôle les ressources de l’ordinateur, et fournit la base sur laquelle seront construits les programmes d’application.

Deux tâches sans rapport l’une avec l’autre :

I soustraire le matériel au regard du programmeur

I gérer les ressources

(10)

Systèmes d’exploitation

> Généralités

Définition

Définition

Le système d’exploitation contrôle les ressources de l’ordinateur, et fournit la base sur laquelle seront construits les programmes d’application.

Deux tâches sans rapport l’une avec l’autre :

I soustraire le matériel au regard du programmeur I gérer les ressources

(11)

Systèmes d’exploitation

> Généralités

Présentation générale Utilisateur

Logiciel

Développeur

Interface de programmation (API)

Système d’exploitation

Matériel (ordinateur)

(12)

Systèmes d’exploitation

> Généralités

Définition (Programme)

Un programme est une séquence d’instructionsqui spécifie étape par étape les opérationsà effectuer pour obtenir un résultat.

Définition (Logiciel)

Ensemble composé d’un ou plusieurs pogrammes, ainsi que les fichiers nécessaires pour les rendres opérationnels.

I Le système d’exploitation est donc un logiciel particulier.

(13)

Systèmes d’exploitation

> Architecture matérielle

Plan

1 Généralités

2 Architecture matérielle

3 Fonctions de base du système d’exploitation

4 Historique

5 Unix/Linux

(14)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Processeur (CPU)

Mémoire centrale

Écran Disque

Clavier

bus

(15)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Écran Disque

Clavier

bus

Processeur (CPU)

Mémoire centrale

Un calcul de base

(16)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Mémoire centrale

Écran Disque

Clavier

bus

Processeur (CPU)

Un calcul de base

(17)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Écran Disque

Clavier

bus

Processeur (CPU)

Mémoire centrale

Un calcul de base

(18)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Processeur (CPU)

Mémoire centrale

Écran Disque

Clavier

bus

(19)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Mémoire centrale

Écran

Clavier

bus

Processeur (CPU)

Disque

Charger des données

(20)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Processeur (CPU)

Mémoire centrale

Écran

Clavier

bus

Disque

Charger des données

(21)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Processeur (CPU)

Écran

Clavier

bus

Mémoire centrale

Disque

Charger des données

(22)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Processeur (CPU)

Mémoire centrale

Écran Disque

Clavier

bus

(23)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Mémoire centrale

Écran Disque

bus

Processeur

(CPU) Clavier

Gérer des Entrées/Sorties

(24)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Mémoire centrale

Écran Disque

Clavier

bus

Processeur (CPU)

Gérer des Entrées/Sorties

(25)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Écran Disque

Clavier

bus

Processeur (CPU)

Mémoire centrale

Gérer des Entrées/Sorties

(26)

Systèmes d’exploitation

> Architecture matérielle

Ordinateur (représentation simplifiée)

Mémoire centrale

Disque

Clavier

bus

Processeur (CPU)

Écran

Gérer des Entrées/Sorties

(27)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (I)

Processeur

Registres

Unité de

commande UAL

Contrôleur

de bus Mémoire

Disque dur

Clavier .. .

(28)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (I)

Processeur

Registres

Unité de

commande UAL

Contrôleur

de bus Mémoire

Disque dur

Clavier .. .

Registres : emplacements mémoire internes au processeur.

(29)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (I)

Processeur

Registres

Unité de

commande UAL

Contrôleur

de bus Mémoire

Disque dur

Clavier .. .

Unité de commande : chargée de l’enchainement des opérations dans le

(30)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (I)

Processeur

Registres

Unité de

commande UAL

Contrôleur

de bus Mémoire

Disque dur

Clavier .. .

UAL (unité arithmétique et logique) : Unité de calcul (opérations arith-

(31)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (II)

Mémoire centrale

Registres Unité de commande

UAL

3 1

2

Interaction des éléments d’un microprocesseur

1. L’unité de commande (UC) active certains registres pour :

I Lireen mémoire I Écrireen mémoire

I Transférer des donnéesvers l’UAL

I Transférer des donnéesdepuis l’UAL

2. L’UC commande l’action de l’UAL 3. L’état des registres permet de

choisir la prochaine commande

(32)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (III)

Chargement – Décodage – Exécution

Répéter indéfiniment (tant que le processeur est alimenté) : 1. Récupérer l’instruction couranteen mémoire

2. Modifier la valeur ducompteur ordinal pour qu’il désigne la prochaine instruction

3. Si besoin, localiser un mot en mémoire(donnée/prog.) (charger le registre d’adresse)

4. Si besoin, charger le mot mémoiredans un registre de données 5. Exécuter l’instruction

(33)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (IV)

Exemples d’instructions

I instructions dedéplacement de données (entre les registres ou entre la mémoire et les registres)

I manipulation de lapile(mettre une donnée sur la pile, enlever une donnée de la pile)

I instructionsarithmétiques etlogiques, addition, soustraction, et, ou, négation,. . .

I sautset boucles I appels de fonctions

(34)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (IV)

Exemples d’instructions

I instructions dedéplacement de données (entre les registres ou entre la mémoire et les registres)

I manipulation de lapile(mettre une donnée sur la pile, enlever une donnée de la pile)

I instructionsarithmétiques etlogiques, addition, soustraction, et, ou, négation,. . .

I sautset boucles I appels de fonctions

(35)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (IV)

Exemples d’instructions

I instructions dedéplacement de données (entre les registres ou entre la mémoire et les registres)

I manipulation de lapile(mettre une donnée sur la pile, enlever une donnée de la pile)

I instructionsarithmétiques etlogiques, addition, soustraction, et, ou, négation,. . .

I sautset boucles I appels de fonctions

(36)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (IV)

Exemples d’instructions

I instructions dedéplacement de données (entre les registres ou entre la mémoire et les registres)

I manipulation de lapile(mettre une donnée sur la pile, enlever une donnée de la pile)

I instructionsarithmétiqueset logiques, addition, soustraction, et, ou, négation,. . .

I sautset boucles I appels de fonctions

(37)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (IV)

Exemples d’instructions

I instructions dedéplacement de données (entre les registres ou entre la mémoire et les registres)

I manipulation de lapile(mettre une donnée sur la pile, enlever une donnée de la pile)

I instructionsarithmétiqueset logiques, addition, soustraction, et, ou, négation,. . .

I sautset boucles

I appels de fonctions

(38)

Systèmes d’exploitation

> Architecture matérielle

Microprocesseur (IV)

Exemples d’instructions

I instructions dedéplacement de données (entre les registres ou entre la mémoire et les registres)

I manipulation de lapile(mettre une donnée sur la pile, enlever une donnée de la pile)

I instructionsarithmétiqueset logiques, addition, soustraction, et, ou, négation,. . .

I sautset boucles I appels de fonctions

(39)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Plan

1 Généralités

2 Architecture matérielle

3 Fonctions de base du système d’exploitation

4 Historique

5 Unix/Linux

(40)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Fonctions du système d’exploitation

I Permettre l’utilisation des périphériques

I Gérer lesressources (processeur, mémoire, périphériques) : droits d’accès, partage d’accès

I Gérer le stockage(volatile : mémoire vive, persistant : fichiers) I Gérer l’exécution des programmes

(41)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Fonctions du système d’exploitation

I Permettre l’utilisation des périphériques

I Gérer lesressources(processeur, mémoire, périphériques) : droits d’accès, partage d’accès

I Gérer le stockage(volatile : mémoire vive, persistant : fichiers) I Gérer l’exécution des programmes

(42)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Fonctions du système d’exploitation

I Permettre l’utilisation des périphériques

I Gérer lesressources(processeur, mémoire, périphériques) : droits d’accès, partage d’accès

I Gérer le stockage(volatile : mémoire vive, persistant : fichiers)

I Gérer l’exécution des programmes

(43)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Fonctions du système d’exploitation

I Permettre l’utilisation des périphériques

I Gérer lesressources(processeur, mémoire, périphériques) : droits d’accès, partage d’accès

I Gérer le stockage(volatile : mémoire vive, persistant : fichiers) I Gérer l’exécution des programmes

(44)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(45)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(46)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(47)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(48)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(49)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(50)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains périphériques. . . )

(51)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Architecture générale (système monolithique) Noyau (Kernel)

Partie centrale du système.

I Réside en mémoire vive

I Inaccessible aux autres programmes

I Assure les fonctions de base (accès aux fichiers, à la mémoire, au processeur)

I Peut être étendu par des pilotes de périphérique (drivers)

Fonctions utilisateur

Ensemble de programmes complétant le système.

I Interpréteur de commandes

I Commandes de base (accès aux fichiers, aux processus, à certains

(52)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Organisation de la mémoire centrale (schématique)

programme utilisateur 1 programme utilisateur 2

. . .

Noyau

(53)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Organisation de la mémoire centrale (schématique)

programme utilisateur 1 programme utilisateur 2

. . .

Noyau

Exécutionenmodeutilisateur Exécutionenmodenoyau

(54)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Organisation de la mémoire centrale (schématique)

programme utilisateur 1 programme utilisateur 2

. . .

Exécutionenmodeutilisateur Exécutionenmodenoyau

appel système

(55)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Organisation de la mémoire centrale (schématique)

programme utilisateur 1 programme utilisateur 2

. . .

Exécutionenmodeutilisateur Exécutionenmodenoyau

appel système

table des appels système

(56)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Organisation de la mémoire centrale (schématique)

programme utilisateur 1 programme utilisateur 2

. . .

Exécutionenmodeutilisateur Exécutionenmodenoyau

appel système

table des appels système

fonction système

(57)

Systèmes d’exploitation

> Fonctions de base du système d’exploitation

Organisation de la mémoire centrale (schématique)

programme utilisateur 1 programme utilisateur 2

. . .

Exécutionenmodeutilisateur Exécutionenmodenoyau

appel système

table des appels système

fonction système

retour

(58)

Systèmes d’exploitation

> Historique

Plan

1 Généralités

2 Architecture matérielle

3 Fonctions de base du système d’exploitation

4 Historique

5 Unix/Linux

(59)

Systèmes d’exploitation

> Historique

Traitement par lot

1950 1960 1970 1980 1990 2000 2010

Batchs

(60)

Systèmes d’exploitation

> Historique

Traitement par lot

1950 1960 1970 1980 1990 2000 2010

Batchs

Problème

I Données + Programme = fiches perforées(blanches) I Une tâche = Une manipulation(par un opérateur humain)

→ Configuration de l’ordinateur pour la tâche I Chargement des données

I Chargement du programme I Exécution

I Écriture des sorties sur l’imprimante I etc.

(61)

Systèmes d’exploitation

> Historique

Traitement par lot

1950 1960 1970 1980 1990 2000 2010

Batchs

Fiche de traitement par lot (batch)

Décrire les opérations de manipulation par une fichier perforée (rouge) I Chargement des données

I Chargement du programme I Exécution

I Écriture des sorties sur l’imprimante I etc.

L’opérateur insère toutes les fiches

(62)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

(63)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Problème

Un seul composant de l’ordinateur utilisé à la fois

→ On pourrait utiliser en parallèle le disque, l’imprimante, le processeur. . .

À condition de munir chacun d’une petite mémoire vive locale (cache)

(64)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Mémoire centrale

Écran

Clavier

bus

Processeur (CPU)

Disque

(65)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Écran

Clavier

bus

Processeur (CPU)

Mémoire centrale

Disque

(66)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Écran

Clavier

bus

Processeur (CPU)

Mémoire centrale

Disque

(67)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Mémoire centrale

Disque

Clavier

bus

Processeur (CPU)

Écran

(68)

Systèmes d’exploitation

> Historique

Multiprogrammation

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Multiprogrammation

Utiliser plusieurs composants en parallèle

I Gestion de la priorité (quel processus accède à quelle ressource) I Mémoire partagée (stocker les données de plusieurs processus en

mémoire centrale) Exemple : MULTICS (1965)

(69)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Les fiches perforées, c’est fini. . . Problème

Certains processus sont longs : les mettre en pausepour permettre à des processus plus petits d’accéder au processeurtout de suite.

→ Plusieurs processus se partageraient le processeur!

(70)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Écran Disque

Clavier

bus

Processeur (CPU)

(71)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Écran Disque

Clavier

bus

Processeur (CPU)

(72)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Écran Disque

Clavier

bus

Processeur (CPU)

(73)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Écran Disque

Clavier

bus

Processeur (CPU)

(74)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Écran Disque

Clavier

bus

Processeur (CPU)

(75)

Systèmes d’exploitation

> Historique

Temps partagé

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation Temps partagé

Temps partagé

Plusieurs processus actifs alternent sur le processeur : I Gestion des interruptions

I Cycle de vie d’un processus

I Synchronisation de processus, programmation concurrente Exemple : UNICS (1969)−→ UNIX

(76)

Systèmes d’exploitation

> Historique

Temps réel

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Temps partagé Temps réel

Années 80–90

Gestion des délais : contraintes de temps de réponse

I Apparition des micro-ordinateurs (Ex. : CP/M, puis MS/DOS) I Apparition des interfaces graphiques

I Xerox Apple Lisa, puis Macintosh (1984) I Windows (2.0, puis 3.1, puis Windows 95) I Linux + X-Windows (1991)

(77)

Systèmes d’exploitation

> Historique

Systèmes réseau & répartis (I)

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Temps partagé Temps réel

Systèmes réseau & répartis

Années 80–90 — systèmes réseau

Les ordinateurs comminiquent pour échanger des données.

I Arpanet, 1967 (DARPA)

I E-mail, 1972 (Ray Tommlinsonn) I TCP/IP (1972)

I Client-Serveur années 80. Ex : NFS (Sun, 1984)

I Arpanet ouvert fin 80, Web début 90 (CERN, Tim Berner-Lee)

(78)

Systèmes d’exploitation

> Historique

Systèmes réseau & répartis

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Temps partagé Temps réel

Systèmes réseau & répartis

Années 80–90 — systèmes répartis

I Le système apparait comme un système traditionnel à l’utilisateur. . . I . . . mais il est composé de plusieurs ordinateurs physiques

I Les programmes s’exécutent n’importe où I Les fichiers résident n’importe où

I Plan9 (Bell labs, fin 80), Amoeba (Andrew Tanenbaum, fin 80)

(79)

Systèmes d’exploitation

> Historique

Smartphones

1950 1960 1970 1980 1990 2000 2010

Batchs

Multiprogrammation

Temps partagé Temps réel

Systèmes réseau & répartis Smartphones

Smartphones

Les ordinateurs de poche existent depuis les années 80 (ex : PalmOS, 1996)

I 2007 : iphone (iOS)

I 2008 : OS android (noyau linux)

I 2016 : 1.5 milliards de smartphones vendus

(80)

Systèmes d’exploitation

> Unix/Linux

Plan

1 Généralités

2 Architecture matérielle

3 Fonctions de base du système d’exploitation

4 Historique

5 Unix/Linux

(81)

Systèmes d’exploitation

> Unix/Linux

1969–1979 — Création d’UNIX

I Été 1969 : version expérimentale (Ken Thompson, Bell labs) : système de fichiers, environnementmono-utilisateur,multitâches.

I 1974 : Distribution aux universités (Berkeley & Columbia notamment)

I Système de fichiers modulaire et simple

I Interface unifiée d’accès aux périphériques (à travers le système de fichiers)

I Interpréteur de commandes souple et interchangeable

(82)

Systèmes d’exploitation

> Unix/Linux

1979–1984 — Commercialisation

I 1979 : version 7 d’UNIX. Microport (1985) et Xenix-Microsoft achètent les sources et le droit de distribution.

I 1979–1984 : apparition de variantes avec noyaux réécrits. Portage vers différentes plateformes :

I VAX I PDP-11 I HP-UX

(83)

Systèmes d’exploitation

> Unix/Linux

1984–1993 — Standardisation

I 1984 : système V.2 : adopté comme standard. Consortium X/Open chargé d’organiser la portabilité d’UNIX.

I 1985 : AT&T publie SVID (System V Interface Definition) : définition de l’interface applicative du système et non son implantation

I 1986 : premiers pas vers un système distribué (flux, bibliothèques partagées, accès distant au système de fichier).

I 1993 : COSE (Common Open Software Environment) : accord au sein de l’X/Open pour un environnement commun.

(84)

Systèmes d’exploitation

> Unix/Linux

1994–20xx — Linux & logiciel libre

I 1985 : SystèmeMinix (Andrew Tanenbaum) I 1991 : Linus Torvalds publieFreax, basé sur Minix.

I 1991 :Linux (nouveau nom de Freax) publié comme un noyau associé aux outils GNU (consortium de logiciels libres). Premières distributions. (SLS, Yggdrasil, MCC Iterim)

I 1994 : première version stable (1.0) du noyau

I Aujourd’hui : nombreuses distributions (Redhat, Debian, Ubuntu. . .) + utilisation du noyau linux dans d’autres contextes que le PC (Android, Raspberry. . .).

(85)

Systèmes d’exploitation

> Unix/Linux

Caractéristiques

Multi-tâches, multi-utilisateurs

I Plusieurs utilisateurs peuvent lancer simultanément plusieurs programmes

I Chaque programme s’exécute dans un environnement propre et séparé

I Exécution des programmes protégée, synchronisée, et acceptant des communications inter-programmes

I Capacité d’exécution de programmes temps-réel

(86)

Systèmes d’exploitation

> Unix/Linux

Caractéristiques

Périphériques, Entrées/Sorties I Arborescence unique de fichiers

/

/home /usr

/usr/lib

/dev /dev/lp0 I Tout périphérique est un fichier

I Communication inter-programme via des fichiers

(87)

Systèmes d’exploitation

> Unix/Linux

Intérêt

Gratuité, open-source I Noyau libre I Applications GNU Modularité

I Réponse aux besoins spécifiques (noyau recompilable) I Extensibilité

Multiplateforme

I à la base de nombreux systèmes (Android,. . .)

Références

Documents relatifs

Ces quatre types de repères interprétatifs sont construits autour de la notion d’innovation responsable, perspective selon laquelle les enjeux éthiques de

c) Lister à nouveau les fichiers et dossiers du répertoire : on constate la présence d’un nouveau dossier appelé dossierExemple ... Se rendre dans le dossier dossierExemple. Lister

Le système d’exploitation (operating system OS) est un ensemble de programmes permettant l’exploitation de toutes les ressources matérielles et logiciels

Dans le système d’exploitation, les pro- grammes présents en mémoire sont répertoriés dans une table des processus, qui contient leur état (actif, prêt, bloqué), et les

On fera donc attention à la distinction entre système multitâche (de type temps partagé) et application temps réel (multitâche, aussi, mais soumis à des contraintes temporelles).

PARTIE A : EXPLOITATION D’U ENVIRONNEMENT NUMERIQUE (12 PTS) L’aire du numérique oblige les chefs d’établissement à se familiariser avec l’outil informatique.. Lorsqu’elle

Les procédures de contrôle interne à codifier dans le manuel seront de ce fait les suivantes : - Contrôle interne institutionnel et de gestion du personnel;. - Contrôle interne

 Déplace plusieurs fonctions de l’OS vers des « processus serveurs » s’exécutant en mode utilisateur  réduction au maximum de la taille du code privilégié.  Gérer