ENSEIGNEMENT DE PROMOTION SOCIALE
——————————————————————
Cours de
SYSTEMES D'EXPLOITATION
- Introduction -
——————————————————————
UF 75 52 03 U32 D2
H. Schyns
Septembre 2012
Version provisoire
Systèmes d'eploita
tion
Sommaire
H. Schyns S.1
Sommaire
1. INTRODUCTION
1.1. Le concept d'ordinateur
1.2. Les couches de fonctionnement
1.3. Les processus
2. DEFINITION ET ROLES D'UN SYSTEME D'EXPLOITATION
2.1. Definition
2.2. Rôles d'un système d'exploitation
2.2.1. Gérer les ressources
2.2.2. Créer des couches d'abstraction
2.2.3. Fournir une interface ergonomique
2.2.4. Autres fonctions
3. TYPES DE SYSTEME D'EXPLOITATION
3.1. Position du problème
3.2. Monotâche
3.3. Multitâche
3.3.1. Multitâche coopératif
3.3.2. Multitâche préemptif
3.3.3. Multiutilisateur
3.3.4. Multithreading
3.3.5. Syntse
3.4. Multiprocesseur
3.5. Multiordinateur
4. HISTORIQUE
4.1. Premiers essais
5. SOURCES
5.1. Internet
5.2. Autres
Systèmes d'exploitation
1
Introduction
H. Schyns 1.1
1. Introduction
1.1. Le concept d'ordinateur
Nous avons vu dans le cours de structure des ordinateurs que, d'un point de vue
matériel, celui-ci s'organise autour d'une unité de traitement des données (fig. 1.1) :
Unité de
Traitement
UAL
fig. 1.1 Unité Arithmétique et Logique
Cette unité de traitement contient notamment l'unité arithmétique et logique (ang.:
Arithmetic and Logical Unit).
L'ALU regroupe un certain nombre de circuits électroniques de base, construits
en combinant des portes logiques élémentaires (AND, OR, NAND, NOR, XOR).
Ces circuits réalisent les opérations mathématiques élémentaires (addition et
soustraction, multiplication et division) ainsi que les opérations logiques
élémentaires (plus grand que, égal).
Ces opérations élémentaires sont ensuite combinées au sein du processeur dans
des micro-programmes pour accomplir des fonctions plus avancées (logarithmes
et exponentielles, fonctions trigonométriques,).
L'unité de traitement doit échanger des informations avec son environnement grâce
à des périphériques d'entrée (clavier, scanner, souris, ) et des périphériques
de sortie (écran, imprimante, )
Elle doit aussi conserver les données et les résultats pendant les traitements ce qui
implique l'existence d'une mémoire (fig. 1.2).
Périphérique
d'entrée Périphérique
de sortie
Unité de
Traitement
Mémoire
(données) Mémoire
(programmes)
fig. 1.2 Architecture d'un ordinateur élémentaire
Un "vrai" ordinateur est capable d'exécuter tout seul des produres de
traitement, autrement dit, des programmes.
Tout cela est très joli, mais comment la machine sait-elle quand elle doit lire le
riphérique d'entrée ? Comme il existe différents types de riphériques d'entrée
(clavier, souris, CD, réseau, ), comment la machine sait-elle comment elle doit lire
l'information présentée sur tel ou tel riphérique ?
Systèmes d'exploitation
1
Introduction
H. Schyns 1.2
D'un autre côté, en supposant qu'un programme soit en cours d'exécution comment
sait-il se trouve tel ou tel fichier auquel il doit accéder ? Comment connaît-il les
emplacements de mémoire auxquels il peut accéder ?
Il est donc cessaire d'ajouter un processus de gestion et de contrôle pour
rer l'ensemble des ressources du système et les attribuer aux différents
programmes qui en ont besoin.
Ce processus, en réalité, un ensemble de processus, constitue le système
d'exploitation. (ang. Operating System)
Evidemment, ce processus de gestion est lui aussi un programme qui est aussi
exécuté par l'unité de traitement (processeur). Et ce programme doit aussi utiliser
certaines ressources. Mais comment sait-il Nous tournons en rond (fig. 1.3).
fig. 1.3 Le problème du système d'exploitation
Le truc consiste à mettre "en dur" dans la machine un petit programme qui
s'exécutera automatiquement s la mise sous tension : le programme
d'amorçage (ang.: boot process).
Le programme d'amorçage va à son tour lancer et laisser la main à des procédures
de plus en plus complexes jusqu'à ce que l'utilisateur puisse prendre la main et
effectuer le travail qu'il sire.
D' vient ce premier programme ? Comment va-t-il permettre de lancer tous les
autres ? Quels sont ces autres programmes ? C'est ce que nous verrons dans le
cadre de ce cours.
1.2. Les couches de fonctionnement
Il est commode de présenter la réalisation d'une tâche à l'aide d'un ordinateur selon
un modèle en couches superposées.
Chaque couche possède son langage particulier, c'est à dire un jeu d'instructions
qui lui est propre. Chaque couche se fonctionne comme un traducteur placé entre
la couche qui lui est supérieure et la couche qui lui est inférieure.
On s'adresse à un traducteur ou à un interprète dans un langage qu'il comprend
(son jeu d'instructions). Le traducteur transforme ces informations (instructions) en
les traduisant dans le langage qui est compris par le traducteur suivant.
Ce modèle en couches est aussi appelé hiérarchie de machines virtuelles. Pour
résoudre un problème à l'aide d'un ordinateur, on empile généralement huit couches
(fig. 1.4) :
Systèmes d'exploitation
1
Introduction
H. Schyns 1.3
Les programmes d'application sont tous les logiciels dont l'utilisateur se sert
couramment : tableur, traitement de texte, navigateur internet. Tous ces logiciels
ont leurs propres jeux de commandes et de fonction.
Pour velopper ces logiciels, un programmeur a du imaginer les fonctions qu'il
mettrait à la disposition de l'utilisateur puis les traduire dans l'une des nombreux
langages de programmation tels que Java, C++, FORTRAN et des centaines
d'autres.
Utilisateur 8 L'utilisateur doit résoudre un
problème
Programme
d'application 7 Il utilise un logiciel comme Excel
et ses instructions
Langage
de programmation 6 Excel est conçu en C ou C++
Assembleur 5
Les lignes de code C ou C++ sont
compilées en Assembleur (ASM)
Noyau du système
d'exploitation 4 Le code ASM est combi au SE
pour accéder aux ressources
Langage machine 3 Chaque famille de processeurs
a son langage numérique propre
Langage de
microprogrammation 2 Les instructions complexes sont
micro-programmées dans le
processeur
Logique électronique
et numérique 1 Les bits sont codés en tensions
(volts) qui commandent les
transistors
fig. 1.4 Modèle en couches de la réalisation d'une tâche sur un ordinateur
Tel quel, le langage de programmation n'est pas compréhensible par l'ordinateur.
Chaque instruction doit être composée et taillée dans un langage beaucoup
plus universel mais aussi plus limité : l'assembleur. C'est la compilation. Chaque
instruction symbolique en Assembleur correspond à une instruction du langage
machine.
Le logiciel va utiliser des ressources système : il doit lire la souris, scruter le clavier,
afficher des informations à l'écran, utiliser de la mémoire. Toutes ces ressources
sont rées de manière standard par le système d'exploitation. C'est lui par
exemple qui sait comment on ouvre un fichier sur le disque dur, comment on y
inscrit une information, comment on la relit. Le système d'exploitation a son propre
langage : on ne s'adresse pas à DOS comme à Windows ou à Linux.
1 / 17 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !