Vous êtes sur la page 1sur 101

INF 122 : Introduction à l’architecture

des ordinateurs et aux systèmes


d’exploitation
(40 H)

JP NZALI, février 2013 1


Objectifs
• Comprendre et expliquer la représentation de toute
information à l’intérieur de l’ordinateur (nombre,
texte, image, son, instruction, …)
• Comprendre le fonctionnement de base des
ordinateurs et apprécier les caractéristiques de
performance : vitesse, volume, précision.
• Comprendre le rôle de facilitateur joué par le
système d’exploitation pour l’utilisation du hardware;
apprécier les caractéristiques de spécialisation et de
performance.
JP NZALI, février 2018 2
Plan du cours
I Introduction à l’architecture des ordinateurs
- Rappels et généralités
- Représentation de l’information
- Unités fonctionnelles d’un ordinateur
- Processeur, mémoire, langages, programmes
II Introduction aux systèmes d’exploitation
- Fonctions du système d’exploitation
- Historique
- Gestion de la mémoire, du processeur, des unités
périphériques, des utilisateurs
- Exemples de système d’exploitation (Windows, Unix)
JP NZALI, février 2018 3
Représentation de l’information
I Introduction
Dans l’ordinateur toute information est représentée par une suite de
« 0 » (zéro) et de « 1 » un:
- lampe éteinte, lampe allumée
- circuit ouvert, circuit fermé
- absence de courant, présence de courant
- condensateur déchargé, condensateur chargé (DRAM)
- cuvette, relief (CD, DVD)
- orientation des microparticules (support magnétique)
- transistor bloqué, transistor passant (semi-conducteur)
- diode bloquée, diode passante (ROM)
L’ordinateur sait faire uniquement du calcul sur des nombres binaires. On
dit parfois qu’il travaille sur des données discrètes (composées d’un
nombre fini d’éléments) par opposition aux données continues. Il ne sait
rien faire d’autre.
JP NZALI, mars 2015 4
Représentation de l’information
I Introduction
Dans l’ordinateur on peut représenter les informations
suivantes :
- Texte simple (ex: commandes), texte avec mise en forme
(gras, italique, soulignement, police, taille, couleur)
- Son, musique (échantillonnage)
- Image fixe, couleur, animée (pixel, x images/s)
On parle du tout numérique
Toutes ces informations sont représentées dans l’ordinateur par
une suite de « 0 » et de « 1 ». Ces deux chiffres étant les chiffres
utilisés dans la numération en base 2, il est important de bien
connaître cette numération pour saisir les notions de base
concernant le fonctionnement de l’ordinateur.
JP NZALI, février 2011 5
Représentation de l’information
I Introduction
Dans l’ordinateur on peut représenter les informations suivantes
pour faire différents calculs (addition, soustraction, multiplication,
division, exposant, moyenne, variance, minimum, maximum, …) :
- entier sans signe (court ou long)
- entier avec signe (court ou long)
- Réel en simple, double précision ou précision étendue
Dans l’ordinateur on doit aussi représenter les ordres ou
instructions sous forme de 0 et de 1: additionner, soustraire,
multiplier, diviser, élever à une puissance, trier, tester, affecter, lire,
écrire, ….
Dans cette partie du cours nous allons aborder ces différents
aspects.

JP NZALI, février 2020 6


Représentation de l’information
II Numération en base 2
a) Rappel en base 10 (10 chiffres)
543,687 = 5*102+4*101+3*100+6*10-1+8*10-2+7*10-3

500,000

40,000
+ 3,000
0,600
0,080
0,007
______________
543,687

Le principe est exactement le même pour la base 2.


JP NZALI, février 2014 7
Représentation de l’information
II Numération en base 2
a) Rappel en base 10

La valeur d’un chiffre dépend de sa position


JP NZALI, février 2014 8
Représentation de l’information
II Numération en base 2
b) Rappel en base 2
1011010,11011 = 1*26+0*25+1*24+1*23+0*22+1*21+0*20+1*2-1+1*2-2+0*2-3+1*2-4+1*2-5

1011010,11011 = 1*26+1*24+1*23+1*21+1*2-1+1*2-2+1*2-4+1*2-5

En base 2 on a :
20 = 1 = (1)10 2-1 = 0,1 = (0,5)10 = 1/2
21 = 10 =(2)10 2-2 = 0,01 = (0,25)10 = 1/4
22 = 100 =(4)10 2-3 = 0,001 = (0,125)10 = 1/8
23 = 1000 =(8)10 2-4 = 0,0001 = (0,0625)10 = 1/16
24 = 10000 =(16)10 2-5 = 0,00001 = (0,03125)10 = 1/32
Les puissances de deux sont appelés des poids.
JP NZALI, février 2018
9
Représentation de l’information
II Numération en base 2
c) Rappel en base 2
2-1 = 0,1 = ½ =(0,5)10
2-2 = 0,01 = 1/22 = 1/(2*2) = 1/4= (0,25)10
2-3 = 0,001 = 1/23 = 1/(2*2*2) = 1/8 =(0,125)10
2-n = 0,00…01 = 1/2n = 1/(2*2*….*2)

JP NZALI, février 2011 10


Représentation de l’information
II Numération en base 2
d) Correspondance base 10, 2, base 8, base 16

JP NZALI, février 2011 11


Représentation de l’information
II Numération en base 2
e) Passage de la base 2 à la base 8

On constitue des groupes de 3 bits en partant


de la virgule. Chaque groupe est ensuite traduit
en base 10 et donne un chiffre de la base 8.
JP NZALI, février 2011 12
Représentation de l’information
II Numération en base 2
f) Passage de la base 8 à la base 2

On écrit chaque chiffre de la base 8 sur 3


positions binaires. La virgule reste au même
endroit. Les « 0 » complètement à gauche ne sont
pas significatifs. On peut les omettre.
JP NZALI, février 2011 13
Représentation de l’information
II Numération en base 2
g) Passage de la base 2 à la base 16

On constitue des groupes de 4 bits en partant


de la virgule. Chaque groupe est ensuite traduit
en base 10 et donne un chiffre de la base 16.
JP NZALI, février 2011 14
Représentation de l’information
II Numération en base 2
g) Passage de la base 16 à la base 2

Exercice 1 : convertir en base 2 et en base 8 les nombres suivants écrits en base 16 :


AB123; 7C1E,45; 25AF,FA418

Exercice 2: Convertir en base 8 et en base 16 le nombre suivant écrit en base 2

11010011110001011001,1010110111101011
JP NZALI, février 2011 15
Représentation de l’information
II Numération en base 2
h) Passage de la base 10 à la base 2
Pour trouver la représentation binaire d'un nombre, on
le décompose en somme de puissances de 2. Par
exemple avec le nombre dont la représentation
décimale est 42 on a : 

JP NZALI, février 2011 16


Représentation de l’information
II Numération en base 2
h) Passage de la base 10 à la base 2

42 =

Cette représentation est souvent qualifiée de binaire pur et permet


de représenter les entiers positifs.

Exercice :Convertir en base 2 les nombres suivants écrits en base 10 :


67; 131; 255; 358; 203,75; 11,125
JP NZALI, février 2015
17
Représentation de l’information
II Numération en base 2
h) Passage de la base 2 à la base 10

 Remarque : avec n bits on peut représenter un nombre entier m


tel que : 0<=m<=2n-1
JP NZALI, février 2018 18
Représentation de l’information
III Opérations en base 2
a) Addition et soustraction
• 0+0=0 0+1=1 1+0=1 1+1=0 avec 1 de retenue
• 0-0=0 0-1=1 avec 1 de retenue 1-0=1 1-1=0

ainsi:
11
+ 1
____
100
JP NZALI, février 2011 19
Représentation de l’information
III Opérations en base 2
b) Complément à 1, complément à 2
Le complément à 1 d’un nombre binaire est obtenu
en remplaçant les « 0 » par des « 1 » et
inversement.
Le complément à 2 d’un nombre binaire est obtenu
en ajoutant 1 à son complément à 1.
Pour obtenir le complément à 2 d’un nombre on
peut aussi parcourir le nombre de la droite vers la
gauche, laisser passer les « 0 » de tête ainsi que le
tout premier 1, puis complémenter le reste à 1.
JP NZALI, février 2013 20
Représentation de l’information
III Opérations en base 2
b) Complément à 1, complément à 2
10010110 nombre binaire
01101001 complément à 1
01101010 complément à 2
Les ordinateurs utilisent souvent la convention du
complément à 2 pour représenter les entiers positifs
et négatifs (éléments de Z).
Dans la convention du complément à 2, le bit le plus
à gauche est le bit de signe (0=positif; 1=négatif)
JP NZALI, février 2013 21
Représentation de l’information
III Opérations en base 2
b) Complément à 1, complément à 2
Avec n bits on peut représenter dans la
convention du complément à 2 les entiers relatifs
m tels que : -2n-1<=m<=2n-1-1
Exemple : n=3
000  0 111  -1
001  1 110  -2
010  2 101  -3
011  3 100  -4
JP NZALI, février 20118 22
Représentation de l’information
III Opérations en base 2
b) Complément à 1, complément à 2
Vérifier que le complément à 2 dans ce cas revient à
multiplier le nombre par -1.
-2n-1 est le seul nombre qui n’a pas sa valeur absolue
dans la machine concernée.
Exercices : 1) Effectuer les opérations suivantes sur 3 bits en utilisant la convention du
complément à 2 : 1-4; 1+2; -2+3; 3-4; 1-3;-2-2
2) Proposer un organigramme qui lit n puis n bits et imprime le complément à 1.
3) Proposer un organigramme qui lit n, puis n bits, les place dans un vecteur, calcule et
imprime le complément à 2.
4) Proposer un organigramme qui lit n et imprime le plus grand entier pouvant tenir sur
n bits en binaire pur d’une part, dans la convention du complément à 2 d’autre part.

JP NZALI, février 2018 23


Représentation de l’information
IV Codage

Ce type de code permet de représenter le texte sans


mise en forme.
JP NZALI, février 2018 24
Représentation de l’information
IV Codage
a) Exemple de code
- Code ASCII (American Standard Code for Information Interchange)
- EBCDIC (Extended Binary Decimal Interchange Code)
- BCD ( binary coded decimal )
- UNICODE
- UTF-8
OCR (optical character recognizer) transforme un caractère
représenté en image en un caractère ASCII par exemple.

JP NZALI, février 2018 25


Représentation de l’information
IV Codage
b) code ASCII
Le code ASCII de base adopté en 1960 représentait les caractères
sur 7 bits (c'est-à-dire 128 caractères possibles, de 0 à 127). Le
huitième bit est un bit de parité.
Exemple : En écrivant GRAY en ASCII nous obtenons :

Avec la parité paire le résultat est le suivant :

JP NZALI, février 2015 26


Représentation de l’information
IV Codage
b) code ASCII
A est codé : 1000001
soit 41 en base 16
Ou 65 en base 10
a est codé 1100001
soit 61 en base 16
L’espace ou SP est
0100000
soit 20 en base 16
ou 32 en base 10

EXO : écrire CAFE en


machine, base 2 et
base 16.
JP NZALI, février 2018 27
Représentation de l’information
IV Codage
b) code ASCII
Nous utilisons
maintenant
le code ASCII
étendu. Chaque
caractère est
codé sur 8 bits.
256 possibilités

JP NZALI, février 2011 28


Représentation de l’information
IV Codage
c) code EBCDIC
Le code EBCDIC (Extended Binary Decimal
Interchange Code) est un code dans lequel
chaque caractère tient sur 8 bits, soit 256
combinaisons possibles. Ce code était utilisé sur
les très gros ordinateurs (IBM 370 par exemple).

JP NZALI, février 2011 29


Représentation de l’information
IV Codage
c) code EBCDIC

JP NZALI, février 2011 30


Représentation de l’information
IV Codage
d) Code BCD
Dans ce code chaque chiffre de la base 10 est codé
sur 4 bits représentant sa valeur en binaire.
Exemple :
1974 = 0001 1001 0111 0100
1×1000 + 9×100 + 7×10 + 4×1
Exercice : Proposer un organigramme qui lit un
nombre en base 10 de n chiffres et imprime son
code BCB.
JP NZALI, février 2015 31
Représentation de l’information
IV Codage
e) UNICODE
Le code UNICODE permet de représenter tous les
caractères spécifiques aux différentes langues. De
nouveaux codes sont régulièrement attribués pour
de nouveaux caractères: caractères latins (accentués
ou non), grecs, cyrillics, arméniens, hébreux, thaï,
hiragana, katakana (Japon)... L'alphabet Chinois Kanji
comporte à lui seul 6 879 caractères.
En UNICODE chaque caractère est généralement
codé sur 2 octets (16 bits).
JP NZALI, février 2018 32
Représentation de l’information
IV Codage
f) UTF-8
Un texte en UTF-8 est simple: il est partout en ASCII, et
dès qu'on a besoin d'un caractère appartenant à
l'Unicode, on utilise un caractère spécial signifiant
"attention, le caractère suivant est en Unicode".
Par exemple, pour le texte "Bienvenue chez
Sébastien !", seul le "é" ne fait pas partie du code ASCII.
On écrit donc en UTF-8:

JP NZALI, février 2011 33


Représentation de l’information
IV Codage
g) Représentation des réels

La partie après la virgule peut être représentée de cette façon. Le problème


de la représentation du point se pose surtout quand il faut faire des calculs.
JP NZALI, février 2011 34
Représentation de l’information
IV Codage
g) Représentation des réels
La représentation des réels en machine est
souvent imparfaite:
14526987452861025896123124 (fini, très grand)
1/3 =0,3333333….. (infini avec tous les chiffres connus)
π = 3,14159…… (infini avec les chiffres dans un ordre aléatoire)
√2=1,41421356…..
0,1 en décimal a plusieurs chiffres après la virgule en base 2.

JP NZALI, février 2018 35


Représentation de l’information
IV Codage
g) Représentation des réels
Les réels sont représentés en virgule flottante :
x=smxbe
s est le signe, m est la mantisse, b une base
fixée et e est l’exposant.
Comme pour les entiers, un réel peut être trop
grand (overflow) ou trop petit (underflow) pour
entre représentable.
JP NZALI, février 2011 36
Représentation de l’information
IV Codage
g) Représentation des réels
La norme IEEE 754 permet d’assurer la compatibilité entre les
machines:
- Un réel en simple précision est représenté sur 32 bits
- la base est 2
- le signe de la mantisse est le bit poids fort.
- l’exposant est sur 8 bits sous forme biaisée (le biais est 127 =2 8-1 -1).
L’exposant n’a pas de signe.
- la mantisse est sur 23 bits sous forme normalisée et en virgule fixe. Le
premier bit poids fort de la mantisse est égal à 1. il n’est pas représenté
dans les 23 bits. La virgule n’est pas représentée. Elle est supposée se
trouver entre l’exposant et la mantisse.

JP NZALI, février 2011 37


Représentation de l’information
IV Codage
g) Représentation des réels
L'interprétation d'un nombre (autre qu'infini) est donc :
valeur = signe × 1,mantisse × 2exposant − biais
avec signe = ±1, le biais étant 127.
Le bit de poids fort de la mantisse est déterminé par la valeur de l'exposant.
Si l'exposant est différent de 0 et de 2e − 1, le bit de poids fort de la mantisse
est 1, et le nombre est dit "normalisé". Si l'exposant est nul, le bit de poids
fort de la mantisse est nul, et le nombre est 'dé-normalisé'. Il y a trois cas
particuliers :
• si l'exposant et la mantisse sont tous deux nuls, le nombre est ±0 (selon le bit
de signe)
• si l'exposant est égal à 2e − 1, et si la mantisse est nulle, le nombre est
±infini(selon le bit de signe)
• si l'exposant est égal à 2e − 1, mais que la mantisse n'est pas nulle, le nombre
est NaN (Not a Number: pas un nombre)
JP NZALI, février 2011 38
Représentation de l’information
IV Codage
g) Représentation des réels
Le réel en double précision est codé sur 64 bits :
1 bit de signe de la mantisse
11 bits pour l’exposant
52 bits pour la mantisse
Il existe aussi une représentation en précision
étendue sur 128 bits.

JP NZALI, février 2011 39


Représentation de l’information
IV Codage
g) Représentation des réels
Conversion décimal IEEE 754 32 bits
35,5 10= 100011,1 Virgule fixe
= 1 ,000111 x 2 5 (mantisse normalisée)
eb= 5+127=132 (exposant biaisé)
Le nombre sera représenté comme suit :
0 10000100 0001110000…..0
s exposant mantisse (le 1 poids fort n’est pas représenté)
Montrer que -118,625 se représente sous la forme :
11000010111011010100000000000000
JP NZALI, février 2011 40
Représentation de l’information
IV Codage
g) Représentation des réels
Conversion IEEE754 au Décimal
0 10000001 11100000000000000000000
le signe c’est le +
l’exposant c’est : (eb -127)=129-2  e=2
M=111  + 1,111 x 2 2 = (111,1) 2 = (7,5)10
Que représente la chaîne de bits suivante :
11000010001000000000000000000000
JP NZALI, février 2011 41
Représentation de l’information
IV Codage
h) Représentation des instructions
Une instruction est un ordre donné par l’homme à la
machine. Comme tout ce qui est dans l’ordinateur, elle
doit aussi être sous forme de 0 et 1. Elle a
généralement deux parties, une partie code opération
qui indique l’opération à effectuer (obligatoire) et une
partie opérande qui précise les données à utiliser.
Elle est donc en langage machine interne. Le langage
machine interne diffère souvent d’un processeur à un
autre.
JP NZALI, février 2015 42
Représentation de l’information
IV Codage
h) Représentation des instructions

JP NZALI, février 2011 43


Représentation de l’information
IV Codage
h) Représentation des instructions
On peut avoir des instructions de base pour faire entre autres :
- l’addition
- la soustraction
- la multiplication
- la division
- le saut (aller à)
- le test
- la lecture
- l’écriture
- les opérations logiques (ou, et, ou exclusif..)
JP NZALI, février 2011 44
Représentation de l’information

JP NZALI, juillet 2019 45


Représentation de l’information
IV Codage
i) Code détecteur et correcteur d’erreur
Un code correcteur est une technique de codage basée
sur la redondance. Elle est destinée à corriger les
erreurs de transmission ou de conservation d'une
information sur une voie de communication ou un
support peu fiable.
Si en français on écrit bannane, il ne peut s’agir
que du mot banane. Si on écrit dute ?? (date, dite, doute, …)
Code des aviateurs : William Alpha Tango Olga
JP NZALI, février 2015 46
Représentation de l’information
IV Codage
i) Code détecteur et correcteur d’erreur
Le code de Hamming est un exemple de code détecteur
et correcteur d’erreur. La distance minimale entre deux
mots du code est égale à trois. Si une unique altération
se produit, alors le message reçu est à une distance de
« 1 » d'un unique point du code. Il est ainsi possible de
corriger automatiquement une erreur, si l'on sait que
l'erreur est unique.

JP NZALI, février 2011 47


Représentation de l’information
IV Codage
i) Code détecteur et correcteur d’erreur

JP NZALI, février 2011 48


Représentation de l’information
IV Codage
i) Code détecteur et correcteur d’erreur

JP NZALI, février 2011 49


Représentation de l’information
IV Codage
i) Code détecteur et correcteur d’erreur
La distance minimale d est le minimum de distance
entre deux mots du code. C’est la distance de
Hamming. Elle permet de déterminer le nombre
maximal d'erreurs E qu’on peut corriger de
manière certaine. La valeur de E est en effet celle
du plus grand entier strictement inférieur à d/2.
d=2 on détecte une erreur, on ne peut la corriger
d=3 on détecte 2 erreurs, on peut corriger une.
JP NZALI, février 2015 50
Représentation de l’information
IV Codage
J) Codage vectoriel
C’est une forme de codage qui permet
d’économiser beaucoup de place :
- Un segment est représenté par 2 points qui sont
ses extrémités. On peut de même représenter un
rectangle ou un cercle par deux points.
- On décompose une figure complexe en des
figures simples si c’est possible.

JP NZALI, février 2011 51


Représentation de l’information
V Numérisation
a) Du son

JP NZALI, mars 2017 52


Représentation de l’information
V Numérisation
b) De l’image

Original Analyse Conversion A/N Restitution

JP NZALI, mars 2017 53


Représentation de l’information
V Numérisation
b) De l’image

JP NZALI, mars 2017 54


Structure d’un ordinateur
I Schéma général
C’est le plus petit réseau en terme de distance séparant les différentes composantes.

JP NZALI, février 2015 55


Structure d’un ordinateur
I Schéma général
Le bus est une voie de communication qui permet
aux différentes parties d’échanger les informations
binaires. On distingue :
a. Le bus de données pour le transport des
données (nom, date, prix, note, lieu de naissance…)
b. Le bus d’adresses pour le transport des adresses
c. Le bus de commandes pour le transport des
commandes (lecture, écriture, interruption, …)

JP NZALI, septembre 2017 56


Structure d’un ordinateur
I Unité centrale
L’unité centrale (UC) encore appelée processeur
ou microprocesseur (parfois unité de traitement
ou CPU) est comme le cœur de l’ordinateur.
Exemples : 8086, Z80, 6500, 68000, 80286,
80386, 80486, Pentium I, Pentium II, Pentium
III, Pentium IV.
Processeur CISC, Processeur RISC
Processeur 8 bits, 16 bits, 32 bits, 64 bits.

JP NZALI, février 2018 57


Structure d’un ordinateur
I Unité centrale
L’unité centrale effectue les différents calculs, lit
ou écrit les informations sur les autres unités:
a. Quatre opérations (+ - * /)
b. Opérations logiques (ou et ou exclusif, décalage…)
c. test, saut, ….
d. lecture
e. écriture
Ce sont des instructions de base codées en langage machine interne (LMI)
dans les programmes.
JP NZALI, février 2015 58
Structure d’un ordinateur
I Unité centrale
Pour effectuer les opérations, l’unité centrale possède :
- Une unité arithmétique et logique (UAL ou ALU en anglais),
- Une unité de calcul en virgule flottante pour les nombres
réels,
- Une unité de commande,
- Un ensemble de registres (mémoires de très petite capacité
et d’un temps d’accès très petit: 16, 32, 64, 128 bits),
- Un bus interne pour connecter ces différents éléments
Elle utilise une horloge pour « cadencer » ses différentes
actions. Sa fréquence est généralement en Ghz. (ex: 2 Ghz, 3 Ghz).

JP NZALI, février 2018 59


Structure d’un ordinateur
I Unité centrale
Exemples de registres :
- le registre compteur ordinal (CO ou PC)
- Le registre adresse
- Le registre accumulateur
- Le registre des indicateurs
- Le registre instruction
Le processeur sur certaines machines anciennes est
assisté par un coprocesseur.
Un microcontrôleur est un petit microprocesseur
contenant en plus au moins la RAM et la ROM.
JP NZALI, février 2018 60
Structure d’un ordinateur
II Mémoires
Ce sont des dispositifs permettant de ranger, de conserver
et de restituer les informations (nombre, texte, son, image
fixe, image animée, programme). Une mémoire peut être :
- Volatile ou non,
- Adressable ou séquentielle (accès direct ou séquentiel),
- Vive ou morte,
- Magnétique, optique ou à semi-conducteur
- Amovible ou non,
Sa capacité se mesure en octets ou en multiples d’octets.

JP NZALI, février 2015 61


Structure d’un ordinateur
II Mémoires
Les multiples d’octets sont les suivants :
• 1 Ko = 1 024 octets (210 octets)
• 1 Mo = 1 024 x 1 024 octets
• (≈ 1 000 000 d’octets)
• 1 Go = 1 024x1 024x1 024 octets
• (≈ 1 000 000 000 d’octets)
• 1 To = 1 024x1 024x1 024 x 1 024 octets
• (≈ 1 000 000 000 000 d’octets)
Kilo ≈103, Méga ≈106, Giga ≈109, Téra ≈1012, Péta ≈1015, Exa
≈1018, Zetta ≈1021, Yotta ≈1024. (Mille, Million, Milliard, Billion, Billiard,
Trillion, Trilliard)
JP NZALI, février 2018 62
Structure d’un ordinateur
II Mémoires
Les multiples d’octets sont les suivants :
Attention !!
Pour un constructeur de disques durs,
• 1 Go = 1 000 000 000 d'octets
donc 200 Go = 200 000 000 000 octets.

mais en réalité 200 Go ne font que  :  


200 000 000 000 / (1 024^3) = 186.264515 Go ~ 186 Go

JP NZALI, février 2018 63


Structure d’un ordinateur
II Mémoires
a) Mémoire Centrale ou RAM
C’est une mémoire à semi-conducteur, vive,
volatile, adressable. Elle contient généralement
les programmes en cours d’exécution ainsi que
leurs données et résultats. Elle est constituée
d’octets. Chaque octet (ensemble de 8 bits) a
une adresse qui lui est propre et permet de
l’identifier.
Un octet ne contient pas son adresse.
JP NZALI, septembre 2017 64
Structure d’un ordinateur
II Mémoires
a) Mémoire Centrale ou RAM

La signification du contenu dépend du contexte


d’utilisation.
JP NZALI, février 2011 65
Structure d’un ordinateur
II Mémoires
b) Autres mémoires
- Mémoire morte (semi-conducteur)
- Mémoire cache (semi-conducteur)
- CMOS (semi-conducteur)
- Disque dur (magnétique)
- Disquette (magnétique)
- Bande magnétique (magnétique)
- CD-ROM (optique)
- Mémoire flash (semi-conducteur)
JP NZALI, février 2011 66
Structure d’un ordinateur
II Disque dur

JP NZALI, février 2016 67


Structure d’un ordinateur
III Autres unités périphériques
b) Imprimante
- à impact (aiguille, marguerite, barre, corbeille)
plusieurs copies à la fois, bruyante
- à jet d’encre
- laser
c) Clavier : 102, 105, azerty, qwerty, qwertz (allemand), dvorak (une
disposition des touches de clavier optimisée pour la saisie de l’anglais), IMPR écran,
touche spéciale : alt 4, alt 6, alt 146, alt 1.
d) Souris
e) scanner
f) réseau
g) capteur
JP NZALI, février 2017 68
Structure d’un ordinateur
III Objets connectés
Un objet connecté est un matériel électronique qui peut
communiquer avec un smartphone, une tablette ou un ordinateur.
Il peut envoyer et recevoir des informations, ceci généralement par
le biais d’une liaison sans fil (Bluetooh, Wifi). L’intérêt principal est
l’interactivité, la possibilité de récupérer les informations très
rapidement.
Vocabulaire de base : IOT, IOE, IOX, Fog computing, PYTHON, JAVA,
Big Data,…
Exemple d’objets connectés : lampe, porte, bracelet, frigo, cuisinière,
thermostat, balance, maison (température, eau, gaz, CO2, garage,
fenêtre, humidité, éclairage, détecteur de feu, détecteur de fumée,
détecteur de chute, détecteur de mouvement,…) , montre, caméra,
pot de fleur, réverbère, fourchette,
JP NZALI, février 2018 69
Structure d’un ordinateur
IV Architecture en couches

JP NZALI, février 2011 70


Structure d’un ordinateur
IV Vue de l’intérieur d’un bloc unité centrale

JP NZALI, février 2016 71


SYSTÈME d’EXPLOITATION
I Introduction
Le système d’exploitation est le patron de la partie software de
l’ordinateur. C’est un programme qui s’installe en mémoire
centrale tout au début de chaque session de travail et qui
assure la bonne marche de la session de travail.
Exemples: OS/360, OS/VS, VM/370, UNIX, SYSMIC (sur Micral en
73), CP/M, MS-DOS, LINUX, Mac OS, Solaris, WINDOWS 95,
WINDOWS 98, WINDOWS NT, Système 7, OS/2, AIX,
WINDOWS CE ou WinCE, ANDROID, SYMBIAN (pour équipements
embarqués)

Les systèmes d’exploitation rendent transparents à l’utilisateur


(masquent la complexité) certains aspects du fonctionnement des
ordinateurs et assurent un certain niveau de sécurité.
JP NZALI, février 2011 72
SYSTÈME d’EXPLOITATION
II Architecture en couches

JP NZALI, février 2011 73


SYSTÈME d’EXPLOITATION
III Caractéristiques d’un SE
- Mono-tâche
- Mono-utilisateur
- Batch ou traitement par lot
- Conversationnel (interactif, dialogue avec le SE)
- Multi-conversationnel ou temps partagé (plusieurs utilisateurs)
- Multiprogrammation
- Temps réel (contrôle de processus)
- Multitraitement (plusieurs processeurs)
- Hyperviseur (peut gérer d’autres SE, dans un environnement virtualisé)
- Transactionnel (SGBD)

Les systèmes d’exploitation d’aujourd’hui ont la plupart de ces caractéristiques


(general purpose).

JP NZALI, février 2017 74


SYSTÈME d’EXPLOITATION
III Composants d’un SE
- Noyau : s’installe en RAM au début de la session de
travail et y reste jusqu’à la fin. Traite particulièrement
les interruptions, gère la RAM et le temps unité
centrale, charge les autres programmes.
- Le module de traitement des commandes : reconnait
les commandes des utilisateurs, recherche et lance les
modules du SE chargés de les exécuter (LS, CD, COPY,
FORMAT, ….). Dialogue par menu ou par icône avec
l’utilisateur. Le système de menu et d’icône est plus
convivial et demande moins de mémorisation que le
langage de commande.
JP NZALI, février 2017 75
SYSTÈME d’EXPLOITATION
III Composants d’un SE
- Chargeur : Se trouve dans le noyau, permet de
charger en RAM et de lancer l’exécution des
autres programmes.
- Editeur de texte : permet de saisir du texte
sans mise en forme (commandes du SE par
exemple)
- Pilotes ou drivers : spécifiques à chaque unité
périphérique (gestion des E/S)
- Gestion des utilisateurs (administrateur, invité …)
JP NZALI, février 2017 76
SYSTÈME d’EXPLOITATION
III Composants d’un SE
- Gestion des fichiers : permet de créer et de maintenir des fichiers
sur des supports permanent comme le disque, le CD_ROM, la
mémoire flash et la bande magnétique. Les fichiers peuvent contenir
des données ou des programmes.
- Gestion des ressources : Une ressource est tout ce dont un
programme a besoin pour s’exécuter :
a) temps unité central (obligatoire),
b) espace mémoire,
c) unité périphérique (disque, imprimante, espace écran, …
d) données, fichiers,…
Une ressource peut être partageable ou critique (exclusive).
Un fichier peut être partagé en lecture. Un seul programme peut se
trouver en exécution au niveau de l’unité centrale à un moment donné.
JP NZALI, février 2017 77
SYSTÈME d’EXPLOITATION
III Composants d’un SE
- Gestion des erreurs: Pendant une session de travail des
erreurs peuvent survenir. Le système d’exploitation doit les
détecter, chercher à les résoudre ou les passer à l’utilisateur.
* Division par zéro
* Appel utilisateur (CRTL - ALT- SUPPR)
* Bourrage sur une imprimante
* Erreur sur le disque (tenter de relire, déclarer le secteur
défectueux)
- Gestion des processus: Un processus est un programme qui
s’exécute.
Exercice : Proposer un organigramme qui lit 9 bits et imprime en
sortie une éventuelle erreur de parité.
JP NZALI, février 2017 78
SYSTÈME d’EXPLOITATION
IV Créer et exécuter un programme
- Poser le problème à résoudre
- Analyser le problème (solution existant déjà? …)
- Trouver l’algorithme et le représenter
- Traduire l’algorithme dans un langage (écrire le programme
correspondant en C, en JAVA, en Python,…)
- Saisir le programme en utilisant un éditeur dans un environnement
de développement
- Compiler le programme (en utilisant un compilateur) et obtenir un
module exécutable (.EXE)
- Le système lui trouve de la place en RAM, le charge (utilise le
chargeur), lance son exécution
- L’unité centrale l’exécute instruction par instruction (sous la
supervision du SE) et fournit les résultats.
JP NZALI, février 2011 79
WINDOWS
I Généralités
Le système d’exploitation WINDOWS a plusieurs
versions : 95, 98, 2000, NT, XP, VISTA, seven.
En plus du pilotage par ligne de commande, il
offre le pilotage par menu déroulant et par icône.
Les mémoires de masse sont organisées en
arborescence de répertoires ou dossiers. Les
répertoires contiennent des fichiers (texte,
programme, son, image) ou d’autres répertoires.

JP NZALI, février 2011 80


WINDOWS
II Caractéristiques d’un fichier
Chaque fichier est caractérisé par :
- son nom
- son extension (type de fichier, programme qui a permis de le créer)
- sa localisation (chemin)
- sa taille
- ses attributs : lecture, système, archivé, caché, chiffré, compressé, icône, indexé
- sa date de création
- date de dernière modification
- qui a fait la dernière modification
- date du dernier accès
- ses mots clés
- partageable ou nom
- son propriétaire
- Numéro de la dernière version
- Mot clé
- Commentaire
- aspect sécurité (utilisateurs autorisés et autorisations)
Eviter un arbre trop profond qui donne un nom complet de plus de 255 caractères (nom, extension et
chemin compris)
JP NZALI, février 2011 81
WINDOWS
III Compte d’utilisateur
Un compte d’utilisateur est un ensemble d’informations indiquant à Windows les
fichiers et les dossiers auxquels vous pouvez accéder, les modifications que vous
pouvez effectuer sur l’ordinateur ainsi que vos préférences personnelles, comme
un arrière-plan du Bureau ou un écran de veille. Grâce à l’utilisation des comptes
d’utilisateurs, vous pouvez partager un ordinateur avec d’autres personnes tout en
conservant les fichiers et paramètres qui vous sont propres. Chaque personne
accède à son compte d’utilisateur à l’aide d’un nom d’utilisateur et d’un mot de
passe.
Il existe trois types de comptes. Chaque type fournit à l’utilisateur un niveau de
contrôle différent sur l’ordinateur :
- le compte d’utilisateur standard est réservé à ceux qui ont une utilisation
quotidienne de l’ordinateur ;
- le compte Administrateur fournit le contrôle le plus complet sur l’ordinateur et
ne doit être utilisé qu’en cas de besoin. Il est créé à l’installation du SE. Il peut
créer les autres.
- le compte Invité est principalement destiné aux personnes qui utilisent
l’ordinateur de manière temporaire.
JP NZALI, février 2011 82
WINDOWS
IV Ligne de commande (invite)
Au prompt ou invite l’utilisateur peut taper des
commandes WINDOWS. Ces commandes sont
reconnues par l’interpréteur de commande qui
cherche et lance l’exécution du programme associé.
Le programme peut se trouver dans le noyau
(commande interne: dir, cd,), hors du noyau
(commande externe : format, edit, …). Il peut aussi
être un programme utilisateur (word, excel, …) ou un
fichier de commande (extension .BAT)
Que se passe-t-il si la commande n’est pas reconnue?
JP NZALI, février 2011 83
WINDOWS
V Quelques commandes en ligne
Les commandes se tapent en minuscule ou en majuscule.
dir /?
cd
cls
attrib
Help donne la liste des principales commandes
PING
TRACEROUTE ou TRACERT
IPCONFIG ou IFCONFIG

Exercice : créer deux fichiers avec EDIT, utiliser la


commande comp pour comparer les deux fichiers
exemple : comp fiche1 fiche2 /A /n=6
Utiliser comp /? Pour comprendre les options. (différence en ASCII sur les 6 premières
lignes)
JP NZALI, septembre 2017 84
WINDOWS
V Quelques commandes en ligne
Exercices :
- Créer un fichier avec EDIT ou bloc-notes, visualiser ses attributs avec la
commande attrrib, le rendre caché et vérifier avec dir, l’afficher avec dir et le
paramètre approprié.
- Rechercher sur l’ordinateur le fichier WINWORD.EXE, aller dans le répertoire
qui le contient, taper la commande WINWORD et voir ce qui se passe.
- Ecrire un fichier de commande permettant d’ouvrir word en tapant la
commande word.
- Taper la commande echo date et la commande echo %date% et commenter
les résultats
- Ecrire un fichier de commande qui lance word si on tape word monword.
- Qu’imprime le fichier de commande contenant la ligne suivante :
if %date%==17/04/2018 (echo bien) else (echo mauvais)

JP NZALI, février 2017 85


LINUX
I Généralités
Linux est un système d’exploitation multi-tâches, conversationnel,
multi-utilisateurs, libre (code source disponible donc modifiable). Son
ancêtre UNIX est propriétaire. il n'y a plusieurs distributions linux :
ubuntu, mandriva, fedora, debian,….

Il intègre un utilisateur privilégié appelé administrateur ou root qui


possède tous les droits. Il peut créer, modifier, fournir des droits et
détruire d’autres utilisateurs. Il administre le système (l’installe, le
configure et le met à jour).
Il peut exécuter plusieurs processus en « même temps » sur la base de
quantum de temps. Quand un processus quitte l’unité centrale son
contexte est sauvegardé. Quand il revient son contexte est restauré.
Un processus peut créer des processus fils.

Unix et Linux font la différence entre majuscule et minuscule.


JP NZALI, février 2011 86
LINUX
II Exécution des processus

Fin quantum

JP NZALI, février 2011 87


LINUX
II Exécution des processus
Exemple : le processus interpréteur des commandes
shell peut en s’exécutant créer à la demande le
l’utilisateur un processus qui exécute WORD. Word peut
à son tour créer un autre processus fils pour imprimer
un document par exemple.
Sous LINUX chaque unité périphérique est vu comme un
fichier. Imprimer un document revient à lire le fichier
qui le contient et à écrire dans le fichier imprimante.
La commande ps donne la liste des processus actifs.

JP NZALI, février 2011 88


LINUX
III Notion de fichier LINUX
Un fichier est une collection d’informations
indépendante du matériel qui le contient. Les
appels systèmes permettent de créer, de supprimer,
de lire, d’écrire, d’ouvrir, de fermer les fichiers.
Les fichiers sont généralement rangés dans des
répertoires organisés en structure arborescente
(répertoire père, répertoire fils). La racine de l’arbre
est appelée répertoire racine ou root directory. Tout
répertoire ( ou tout fichier) peut être atteint en
spécifiant son chemin d’accès à partir de la racine.
JP NZALI, février 2011 89
LINUX
III Notion de fichier LINUX

JP NZALI, février 2011 90


LINUX
III Notion de fichier LINUX
Un chemin d’accès absolu commence par un
slash.
doc/lettre/auprefet est un chemin relatif de
auprefet à partir du répertoire prive.
… désigne le répertoire père
. désigne le répertoire courant d’un processus
~ Désigne le répertoire principal d’un utilisateur.
cd ~ renvoie à /root si c’est l’administrateur qui tape cette commande.
renvoie à /home/lolita si c’est l’utilisateur lolita.
JP NZALI, février 2011 91
LINUX
III Notion de fichier LINUX
Chaque fichier LINUX possède un code de protection de 9 bits
répartis en trois groupes de trois bits:
- Le premier groupe concerne le propriétaire du fichier
- Le deuxième groupe concerne les membres du groupe du
propriétaire
- Le troisième groupe concerne les autres utilisateurs du
système
Chaque groupe est formé des trois bits rwx (r pour read, w
pour write et x pour execute)
Exemple : rwxr-xr-- Le propriétaire peut lire, écrire et exécuter le
fichier. Les membres du groupe peuvent lire et exécuter. Les
autres ne peuvent que lire. Le tiret indique une interdiction.
JP NZALI, février 2011 92
LINUX
III Notion de fichier LINUX
Le propriétaire d’un fichier (ou le root) peut
modifier les autorisations ou permissions d’accès
au fichier à l’aide de la commande chmod.
Exemple : chmod a+rwx toto.txt Cette commande
donne tous les droits (lecture, écriture, exécution) à tous les
utilisateurs sur le fichier toto.txt. Le a est mis pour
all, le + accorde les droits, le – supprime les droits.
A la place de a on peut mettre u (pour accorder seulement
au propriétaire) g (pour accorder seulement au utilisateur du groupe)
ou o (pour accorder uniquement aux autres).
JP NZALI, février 2011 93
LINUX
III Notion de fichier LINUX
la commande ls -l toto.txt permet de voir les
permissions en cours.
Avec la commande chmod u-x toto.txt le propriétaire ne peut pas
exécuter le fichier toto.txt

Chmod go-rw supprime le droit de lecture et d’écriture au groupe et


aux autres

Chmod u=rwx,g=rx,o= toto.txt donne tous les droits au


propriétaire, donne le droit de lecture et d’exécution au groupe et
aucun droit aux autres.
L’ordre des droits n’est pas important dans la commande. On peut écrire
u=wr ou u=rw.
JP NZALI, février 2011 94
LINUX

Résultat d’une commande ls –l : Type(- d ou l), permissions, nombre d’entrée,


propriétaire, groupe, taille en octets, nom du fichier.

JP NZALI, février 2011 95


LINUX
IV Tube
Le tube ou pipe permet d’envoyer le résultat
d’une commande comme entrée d’une autre.
Exemple : ls –l | more affiche la liste des fichiers du répertoire
courant page par page à l’écran

ls –l | grep ^d affiche la liste des répertoires


contenus dans le répertoire courant.

ls -l | grep ^d | less affiche la liste des répertoires


contenus dans le répertoire courant à l’écran page par page.

JP NZALI, février 2011 96


LINUX
V Redirection
La redirection permet de ranger le résultat d’une
commande dans un fichier.
Exemple : ls –l > fiche.txt range la liste des fichiers du répertoire courant
dans le fichier de nom fiche.txt. Les messages d’erreur seront affichés à l’écran

ls –l 2> fiche.txt range l’intégralité des message de la commande


dans le fichier fiche.txt.

ls –l > fiche.txt 2>erreur.txt range la liste des fichiers (sortie


standard) dans fiche.txt et les erreurs éventuelles dans erreur.txt

ls /yde/mokolo –l >fiche1.txt
ls /dla/kululu –l >> fiche1.txt
Fiche1.t xt contient la liste des deux répertoire mokolo et kululu. L’entrée d’une
commande peut aussi être un fichier au lieu du clavier. On utilise le signe <
JP NZALI, février 2011 97
LINUX
V Redirection
L’entrée d’une commande peut aussi être un
fichier au lieu de venir du clavier. On utilise le
signe <
Exemple : mail lolita@yahoo.cm < message.txt
permet d’envoyer le contenu du fichier message.txt à la personne qui a pour
adresse de messagerie lolita@yahoo.cm

JP NZALI, février 2011 98


LINUX
VI Shell et script de LINUX
Le shell (interpréteur de commande) permet de
programmer un enchaînement de commande à
l’aide d’un langage de programmation interprété
et récursif (il peut s’appeler lui-même). Un script
est un fichier ASCII contenant un tel programme
que le shell peut interpréter. Un script peut être
perçu comme une nouvelle commande qu’on
peut exécuter en tapant son nom au prompt. Il
existe plusieurs shell sous Linux : bash, kom shell,
C shell, tcsh,
JP NZALI, février 2011 99
LINUX
VI Shell et script de LINUX
Un script peut s’écrire à partir d’un éditeur comme emacs.
La première ligne d’un script doit toujours indiquer le shell
correspondant:
Exemple :
#!/bin/bash nom du shell

# mon premier script ligne de commentaire

echo « bonjour a tous » affiche un message


Echo $PATH affiche le contenu de la variable PATH

Echo « bonjour $USER » affiche bonjour suivi du nom de l’utilisateur

Si le fichier porte le nom essai, il faut le rendre exécutable en utilisant la


commande chmod. En tapant ensuite essai au prompt les commandes
contenues dans ce fichier vont d’exécuter.
JP NZALI, février 2011 100
LINUX
VI Shell et script de LINUX
Les scripts peuvent avoir des paramètres.
Exemple :
#!/bin/bash
# utilisation des paramètres
echo « $0 est le nom du script »
echo « $1 est le nom du premier argument »
echo « $2 est le nom du deuxième argument »
echo « $# est le nombre total d’argument »
echo « $* est la liste des arguments »
Saisir et exécuter ce script avec des arguments ou paramètres.
JP NZALI,mars 2013 101

Vous aimerez peut-être aussi