Vous êtes sur la page 1sur 14

Systèmes d'expoloitations

Younes CHIHAB

Ecole Supérieure de Technologie- Kénitra


Année 2020-2021

Réflexions?

 Comment faire pour dire à l’ordinateur de débuter


l’exécution d’un programme?

 Comment peut-on interagir avec un programme?

 Que doit-on faire quand un programme est terminé?

 Comment peut-on exécuter plus d’un programme?

1
Systèmes d'exploitations

 angl. « Operating System (OS) »


 Qu'est-ce que c'est?
« un ensemble de programmes assurant la gestion de l'ordinateur et de
ses périphériques »
 A quoi ca sert?

 à gèrer les ressources matérielles d’un ordinateur et qui endent ces


ressources disponibles à l’usager de telle sorte que l’usager peut utiliser
efficacement son ordinateur.
 à simplifier la vie des utilisateurs et des programmeurs.
 à gérer les ressources de la machine d'une manière efficace.

Systèmes d'exploitations

2
Exigences à un Système d'exploitation

 Généralités
 Satisfaire les utilisateurs et les programmeurs
 Gérer 2D, 3D, vidéo, audio, réseau, CD, DVD, clé USB, ...
 Plusieurs utilisateurs (itinérants) --> multi-utilisateurs
 ê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)

3
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

Les services d’un OS

 Un système d’exploitation doit fournir les services suivants:

 Une interface de commandes pour l’usager

 Un support pour la création de programmes

 Une gestion des fichiers

 Une gestion des programmes et applications

 Une façon de poursuivre le démarrage de l’ordinateur amorcé par le BIOS

 Un service des interruptions (Software et Hardware)

 Une gestion des entrées/sortie et du matériel qui y est relié.

 Des services pour les réseaux et pour le matériel qui y est associé.

 Une mesure des statistiques et performances de l’ordinateur.

4
Historique (avant les Systèmes d'Exploitations)

1945 - 55 : tubes et interrupteurs


• Pas de système d'exploitation
• volumineuses, très fragiles et très lentes
• Calculs simples (tables des sinus et cosinus)
• Programmation en langage machine
• Construction, programmation et maintenance effectuées
par un seul groupe
• Système mono-usager (réservation)
• Mauvaise utilisation de la CPU

Historique

1955 - 65 : Systèmes de traitement


par lots
• Machines à transistors fiables mais coûteuses
• Programmation en Fortran et Assembleur
• Premiers logiciels de base : chargeur et compilateur
Fortran
• Distinction entre opérateurs, constructeurs,
• programmeurs et utilisateurs
• Soumission des travaux
• Enchaînement des travaux par l'opérateur

5
Historique

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


• Multiprogrammation, temps-partagé, entrées/sorties

• Unix, version BSD (Berkeley Software Distribution), AT&T,

• interface POSIX (Portable Operating System Interface uniX)

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

6
Systèmes d'exploitations

 CP/M (depuis 1974), Digital Research


 Gestion de disque dur, mais pas d'arborescence

 Pas de graphisme

 Exemple:

 CPU 8088, 2 MHz

 64 KO de RAM

 5 MO de disque dur

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 (graphical user interface)

7
Systèmes d'exploitations

 MS-DOS (depuis 1981), Microsoft


 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..

Systèmes d’exploitations

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

Définitions: Processus

Un processus est un programme lors de l'éxécution

 Processus=programme en cours d'exécution

 Un processus est exécuté par un processeur

 Plusieurs processus peuvent être associés à un programme

 Chaque processus possède un espace de travail en mémoire, son


compteur ordinal et ses registres

9
Définitions: Processus

 Actif (élu): s'il est en cours d'exécution par le processeur

 Prêt: s'il est en attente du processeur pour s'exécuter

 Bloqué: s'il est en attente d'un événement extérieur

(lecture disque/clavier, données d’un autre processus…)

Définitions:
Traitement par lots (Batch processing)
 Un utilisateur 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

10
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
 parallèle
 vrai multi-tache
 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)

11
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:
 Administrateur (« root »)
 Groupes
 Utilisateurs

 pour gérer les droits

12
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

13
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

14

Vous aimerez peut-être aussi