You are on page 1of 68

Introduction aux systmes dexploitation

Principes et notions
Nicolas Belloir

Le systme informatique

Dfinition dun systme informatique


Ensemble des moyens logiciels et matriels fourni un utilisateur partir dun poste de travail Ouvert / ferm Mono / multi utilisateur(s) Administrateur / Utilisateurs

Description physique dun SI minimal


Unit centrale Priphriques de :
Traitements Conservation de linformation Communication avec lextrieur

Evolution des SI (1)


Premiers ordinateurs : une machine / un utilisateur Apparition des mcanismes dentre / sortie (carte/imprimante)
Plusieurs utilisateurs Un seul programme en mme temps

Accroissement de la puissance
Gestion des interruptions

Annes 70 : systmes centraliss / terminaux


Puissance et mmoire importante Paralllisme
5

Evolution des SI (2)


Annes 80 : apparition de PC (Personal Computer) Connexion entre PC et systmes centraliss Rseaux informatiques externaliss Fin annes 80 : Station de travail
Intermdiaire entre PC et systmes centraliss

Annes 90 : apparition des terminaux X

Evolution des SI (3)


Fin annes 90 : Internet, un retour aux systmes centraliss? Tendance annes 2000 : la miniaturisation
Ordinateurs portables Systmes distribus Tlphones portables / PDA

Et aprs ????

SI : dcoupage en couche
Programmes dapplication Systme bancaire, systme de rservation, jeu, calculateur Compilateurs, Editeurs, Interprteur de commandes Systme dexploitation Langage machine Matriel Micro-architecture Dispositifs physiques
8

Programmes systmes

SI : couche matriel
Dispositifs physiques
Priphriques, circuits intgrs, cables

Micro-architecture
Les priphriques sont regroups en units fonctionnelles Calculs logiques, traitement des registres, chemin de donnes

Langage machine
Entre 50 et 300 instructions Transfert de donnes entre registres, oprations arithmtiques,

SI : couche systme
Systme dexploitation
Couche logicielle cachant la complxit de la couche matriel Fournit au dveloppeur un jeu dinstructions plis pratiques Fonctionne en mode noyau

Logiciels systmes
Fournis avec le SE mais diffrent du SE Diffrence subtile

10

Le systme dexploitation

11

Systme dexploitation
Dfinition
Ensemble de tous les programmes permettant lutilisateur du systme informatique dexploiter au mieux les ressources de la machine de faon cohrente et coordonne dans des conditions raisonnables de confort Interface entre les utilisateurs du SI et la machine physique

12

Diffrentes catgories de programme des SE


Le noyau : programme de bas niveau
Allocation mmoire, gestion des E/S

Les commandes de base


Copie de fichier, listing des rpertoire, cration/destruction des fichiers

Utilitaires
Interprteur de commande, diteurs de texte, compilateurs

Les interfaces graphiques


X11, Motif, KDE, Gnome
13

Le noyau
Diffrents types de services assurs
Gestion du(des) processeur(s) Chargement et lancement des programmes Gestion de la mmoire (principale et secondaire) Gestion des entres/sorties (priphriques)

Diffrentes organisations logicielles


Monolithique Sructuration en couches Micro-noyaux

14

Les principaux SE (1/2)


Unix/Linux
le meilleur compromis : fiable, efficace, souple, portable, volutif, "customizable" reste (trs) difficile d'accs pour un novice, voire pour un informaticien

MacOS
dsormais peu rpandu car submerg par Windows ergonomie gniale (prcurseur en la matire), fiable, stable a dvelopp ses propres standards (y compris pour le hardware)et a perdu le match contre Windows (il lui reste quelques niches, telles que la photo numrique)

15

Les principaux SE (2/2)


Windows
le plus diffus, trs orient utilisateur lambda (configuration automatique toujours disponible), large gamme d'applicatifs (certains tant dsormais des standards de-facto), prise en main trs simple peu fiable mme si des progrs depuis Win2000/XP, scurit inexistante (virus, intrusions trs frquentes) peu ouvert, impose la plupart des choix technologiques et "enferme" les utilisateurs dans ces choix stratgie industrielle douteuse sur le plan de l'thique

D'autres systmes rservs aux gros serveurs


VMS (Digital), GCOS (Bull), MVS et AS400 (IBM),

16

Typologies des diffrents SE


Ordinateur individuel Centre de calcul Systmes transactionnels Systmes temps rel

17

Ordinateur individuel (1/5)

18

Ordinateur individuel (2/5)


Utilisation oriente bureautique
exploitation de programmes applicatifs

Fonctionnalits implanter
interprteur de commandes de plus en plus superflu car interface graphique suffisante interface graphique la nouvelle gnration dutilisateurs sait-elle quil fut un temps o on en avait pas ? gestion des entres/sorties grande varit de dispositifs (et de modes de fonctionnement) nombreux protocoles

19

Ordinateur individuel (3/5)


Fonctionnalits implanter (suite)
gestion des communications diffrents protocoles rseau gestion des fichiers utilitaires gestionnaire de fichiers, outils dadministration, environnement de programmation (outils) pour les dveloppeurs de solutions

20

Ordinateur individuel (4/5)


Qualits attendues
simplicit d'utilisation (matriel grand public) ergonomie procdures dinstallation/configuration automatique interactivit temps de rponse acceptables

Problmes simplifis
un seul utilisateur la fois configuration matrielle simple (poste client) peu d'activits parallles (quelques circuits spcialiss pour grer certains priphriques) algorithme dallocation des ressources simplifi

21

Ordinateur individuel (5/5)


Solutions retenues
dveloppement de systmes d'exploitation spcifiques monoutilisateur et mono-tche (MS-DOS, MacOS, ...) fiabilit mdiocre du fait de l'unicit du mode d'excution donc de l'absence de protection du systme utilisation de systmes d'exploitation plus gnraux, multiutilisateurs et multitches (UNIX, Windows NT/2000/Me/XP) meilleure fiabilit (thorique pour Windows car notion dutilisateur bidon sur versions client) mise en rseau (Intranet ou Internet) triviale requiert davantage de mmoire centrale (argument peu important aujourdhui)

22

Centre de calcul (1/6)

23

Centre de calcul (2/6)


Objectifs
offrir des services communs, qui ne seraient pas accessibles individuellement, un grand nombre dutilisateurs matriels onreux ou utiliss occasionnellement
supercalculateurs, tables traantes,

logiciels onreux ou utiliss occasionnellement ou ncessitant un environnement dexcution complexe


applicatifs orients mtiers,

24

Centre de calcul (3/6)


Objectifs (suite)
offrir les possibilits dcoulant d'une communaut d'usagers amortissement de matriel du fait dun grand nombre dutilisateurs
licences "volantes" centralisation de la gestion des contrats de maintenance

offrir une expertise au service des usagers service de maintenance voire de veille technologique sminaires de formation au outils assistance au dveloppement de projets ou prestation de service

25

Centre de calcul (4/6)


Modes de traitement
traitement par lots / mode diffr / mode batch non interactif justification : optimiser l'utilisation du matriel (hritage d'une poque rvolue car les systmes modernes le grent automatiquement) temps partag (time sharing) interactif objectif : assurer un bon niveau d'interactivit et donc assurer un temps de rponse court aux petits travaux (jobs) remarque : les systmes modernes sont capables d'assurer l'interactivit tout en grant des jobs en batch

26

Centre de calcul (5/6)


Fonctionnalits implanter
celles d'un ordinateur individuel allocation et partage des ressources communes processeurs, mmoires, priphriques gestion des informations communes et des droits d'accs outils de communication entre usagers de l'email aux outils de travail collaboratif

27

Centre de calcul (6/6)


Qualits attendues
protection des informations des utilisateurs sauvegardes rgulires, droits d'accs sret de fonctionnement disponibilit, fiabilit, scurit performance supporter la charge, assurer un bon niveau d'interactivit en toute situation adquation aux besoins des usagers coute, ractivit, adaptabilit, bonne stratgie (choix des quipements, adquation au budget, politique court comme long terme)

28

Systmes transactionnels (1/4)

29

Systmes transactionnels (2/4)


Objectifs
gestion de grandes quantits d'informations grer les accs d'un grand nombre d'utilisateurs connects simultanment notion de session utilisateur : diagramme d'tats mode interactif les utilisateurs sont gnralement en ligne : ncessit d'une rponse rapide sytme en rseau (Intranet, Internet) volutivit des outils faible mais fiabilit trs importante

Exemples
systmes d'information bancaires, rservation de billets (SNCF, AirFrance, ), magasins,

30

Systmes transactionnels (3/4)


Qualits attendues
scurit contrle d'accs aux donnes, prvenir tout acte de piratage fiabilit des oprations fiabilit des informations obtenues par les usagers fiabilit des modifications apportes
garantir tout moment l'intgrit du systme d'information contrler la validit des modifications demandes

disponibilit assurer le service, si possible y compris en cas de panne performance temps de rponse supporter la charge, si possible y compris en cas de panne

31

Systmes transactionnels (4/4)


Fonctionnalits implanter
outils pour le maintien de l'intgrit de la base de donnes gestion des utilisateurs enregistrs (ou non) et des droits d'accs synchronisation des transactions procdures de sauvegarde procdure de reprise sur erreur et sur panne

32

Systmes temps rel (1/4)

33

Systmes temps rel (2/4)


Objectifs
gestion en temps rel du flux d'informations provenant d'un appareil en fonctionnement raction aux vnements et ventuellement prise de dcision

Types de missions assurer


surveillance, scurit, aide au pilotage rgulation/contrle de production archivage d'informations plus traitements non prioritaires le cas chant

Exemples
centrale nuclaire, unit de fabrication, acirie, gestion de traffic arien, systmes embarqus (avions, TGV, bateaux)
34

Systmes temps rel (3/4)


Qualits attendues
fiabilit ne pas tomber en panne donner des informations fiables
exemple : toujours alerter si danger mais ne pas alerter si pas de danger

temps de raction le plus faible possible contraintes de temps pouvant tre trs svres

Evolutivit faible
car contrainte souvent orthogonale celle de fiabilit qui dans ce cas prime

35

Systmes temps rel (4/4)


Fonctionnalits implanter
mesures et comandes informatique industrielle, gestion des entres/sorties spcifique pour plus d'efficacit gestion des vnements gestion des priorits, valuation fiable des temps de rponse politique dcisionnelle claire, rigoureuse et fiable, cohrente avec la stratgie dcisionnelle de l'entreprise

36

Systmes embarqus
Objectifs
Gestion de trs petits ordinateurs

Types de missions assurer


Simples : pilotages des ressources, fonctions TR, gestion de lalimentation

Exemples
PDA OS : Palm Os, Windows CE

Qualits attendues
Faible utilisation des ressources

Evolutivit
Forte car dynamique importante des marchs
37

Historique des SE

38

4 gnrations
On distingue gnralement 4 gnrations :
1re gnration : 1950-1960 les dbuts de la rvolution technologique 2me gnration : 1958-1968 priphriques et traitement par lots 3me gnration : 1960-1970 multiprogrammation et temps partag 4me gnration : 1970-aujourd'hui rseaux / systmes rpartis

39

1re gnration
Matriel base de tubes
encombrant et peu fiable

Mode d'exploitation
l'utilisateur crit un programme en langage machine il rserve la machine pour une dure dtermine il rentre son programme en mmoire " la main" il l'excute si excution non conforme ses attentes alors excution pas pas et modification ventuelle nouvel essai jusqu' satisfaction ou temps de rservation atteint

Mode d'exploitation totalement inefficace

40

2me gnration (1/4)


Amlioration du matriel
mmoires tore de ferrite transistors et circuits imprims apparition et diversification des priphriques lecteurs de cartes perfores imprimantes supports magntiques (bandes, cartes, )

41

2me gnration (2/4)


Mode d'exploitation
travaux groups en lots par un oprateur chargement de l'utilitaire (compilateur) ncessaire l'excution d'un lot chargement du lot sur le lecteur de cartes lancement de l'excution du lot enchanement des travaux

42

2me gnration (3/4)


Premiers systmes d'exploitation
initialisation du systme : bootstrap puis squence cble moniteur d'enchanement des travaux avec le Job Control Language sous-programmes d'entres-sorties allgement du travail des programmeurs partager les mmoires secondaires viter les mauvais usages des priphriques contrle et gestion des temps d'excution permet de tuer les programmes trop longs permet de facturer l'utilisation du systme protection mmoire pour viter la destruction du systme

43

2me gnration (4/4)


Conclusion sur le traitement par lots
amliorations augmentation du taux d'utilisation du processeur
moins de chargements des utilitaires (compilateurs) diminution des temps d'entres/sorties simplification de la programmation (plus d'entres/sorties physiques programmer)

insuffisances
un seul compilateur la fois zone utilisateur restreinte inutilement par le compilateur processeur inutilis pendant les entres/sorties

44

3me gnration (1/5)


Amlioration du matriel
processeurs spcialiss d'entres/sorties accroissement des possibilits des machines et des priphriques protection mmoire par zones pagination ou segmentation sauvegarde et restauration cble des contextes de processus Entres/sorties en mode diffr tamponnement des E/S symbionts (spool system)

45

3me gnration (2/5)


Multiprogrammation
plusieurs activits progressent en parallle

une activit garde le CPU jusqu' la prochaine demande d'E/S traitement des fins d'E/S du processeur grce aux interruptions

46

3me gnration (3/5)


Conditions pour la multiprogrammation
mmoire centrale assez grande pour plus d'un programme temps d'affectation du processeur une activit faible

Avantages
bonne gestion des ressources (CPU, mmoire, priphriques) temps de rponse correct pour les travaux courts

Inconvnients
complexit du matriel et du systme d'exploitation partage et protection des ressources

47

3me gnration (4/5)


Temps partag
objectif garantir un bon niveau d'interactivit en assurant une rponse rapide aux travaux courts mode d'exploitation travail partir d'un terminal interactif solution allocation du processeur aux usagers tour de rle et pour un "quantum" de temps limit la fin du quantum est signale par une interruption d'horloge

48

3me gnration (5/5)

49

4me gnration (1/2)


Amlioration du matriel
apparition des composants haute intgration 1969 : premier microprocesseur dveloppement des matriels et techniques de transmission de donnes

Intgration pousse des fonctions de communication dans les systmes


rseaux d'ordinateurs htrognes faiblement coupls modle OSI, Internet rseaux locaux ordinateurs connects via des liaisons haut dbit
1975 : protocole Ethernet

50

4me gnration (2/2)


Systmes d'exploitation rpartis pour rseaux d'ordinateurs fortement coupls
Objectifs disposer en local pour une opration donne de la totalit de la puissance d'un microprocesseur rechercher une meilleure adquation entre architecture matrielle et application traite assurer, par l'existence de nombreux processeurs, une meilleure rsistance aux pannes partager des ressources distribues permettre l'accs un priphrique spcial gr par une autre machine exemples serveurs de fichiers, serveurs d'impression, serveurs de calcul
51

Structure matrielle dun ordinateur

52

Composants dun ordinateur simple

CPU

Mmoire

Contrleur Contrleur Contrleur Contrleur vido clavier disquette disque

Bus

53

Le processeur (ou CPU)


Cerveau de lordinateur Extrait les instructions de la mmoire centrale et les excute Chaque processeur possde un ensemble spcifique dinstructions excutables
Problmes de compatibilits entre processeurs diffrents

Temps daccs la mmoire bien plus long que lexcution dune instruction
Les CPU possdent des registres de stockage temporaires

54

La mmoire
2nd constituant fondamental Caractristiques importantes : rapidit daccs, capacit et cot
Aucune technologie ne remplit ces 3 critres
Temps daccs type 1 ns 2 ns 10 ns 10 ns 100 s Registres cache Mmoire principale Disque magntique Bande magntique Capacit type < 1 Ko 2 Mo 64-1024 Mo 10-120 Go 20-200 Go

55

Les priphriques
Lien entre un priphrique et son contrleur (carte) Ncessite un driver pour communiquer Temps daccs long => interrupteurs

3 CPU 1 4

Contrleur dinterruption

Contrleur disque 2

56

Composants du systme

57

Gestion des processus


Unit de traitement du systme Vu comme un programme en excution Utilise des ressources alloues par le SE
Au dmarrage du processus Dynamiquement Doivent tre libres en fin dexcution

Excution squentielle ligne par ligne Processus utilisateurs et processus systmes


58

Le systme est responsable des activits


Cration/suppression des processus Suspension et reprise du processus (temps partag) Mcanismes de synchronisation des processus Mcanismes de communication entre processus Traitement des interblocages

59

Gestion de la mmoire centrale


Peut tre vue comme un grand tableau doctets Chaque octet a une adresse identifie Accs rapide aux donnes
Les entres/sorties en mmoire sont gres par le DMA (Direct Acces Memory) Chargement des donnes physiques en mmoire avant leur utilisation Chargement des instructions des processus avant leur excution

Plusieurs processus en mmoire : amlioration des performances


60

Le systme est responsable des activits


Dterminer les zones mmoires utilises Choix des processus chargs en mmoire Allocation et dsallocation de lespace mmoire

61

Gestion des fichiers


Stockage de linformation sur diffrents supports physiques
Caractristiques propres, organisation physique propre ... (vitesse daccs, capacit, mthode daccs)

Vue logique des supports : le fichier Fichier = ensemble dinformations en relation


Format numrique ou texte Format (champs, enregistrements) ou texte

62

Le systme est responsable des activits


Cration et destruction des fichiers Cration et destruction des rpertoires Support de primitives pour la manipulation des fichiers Correspondance entre fichiers et mmoire de stockage Sauvegarde des fichiers sur support de stockage stable

63

Gestion des E/S


Le but du systme est de cacher les particularits de certains priphriques Sous Unix :
Composant de gestion mmoire Gestion du tampon Gestion du cache Spooling Interface gnrique de pilotes de priphriques Interface pour les matriels spcifiques

Exemple de la sortie vide (trou noir) /dev/null


cp * ~/sauv 2> /dev/null
64

Gestion du stockage secondaire


Par opposition la mmoire primaire Mmoire non volatile Gestion de lespace libre Allocation de stockage Programmation des disques

65

Gestion des rseaux


Non traite dans ce cours

66

Systme de protection
Protection des donnes
Droits daccs

Protection de lespace dadressage Protection de laccs CPU

67

Systme dinterprtation de commandes


Interface entre utilisateur et systme dexploitation Diffrence de convivialit (Unix/Linux Vs Windows) Accs aux rles du systme dexploitation (cration de processus, gestion de la mmoire de stockage

68