Vous êtes sur la page 1sur 98

SYNTHÈSE D’INFORMATIQUE DE

GESTION

Bertrand Lebichot
Année 2020-2021

Remise en page par Sophia Bokoko

Sources : slides du cours


Table des matières
Chapitre 1 : Introduction........................................................................................................... 5
1. L’ordinateur ........................................................................................................................ 5
1.1 Historique ........................................................................................................................... 5
1.2. Première génération .......................................................................................................... 5
1.3 Deuxième génération ......................................................................................................... 6
1.4 Troisième génération ......................................................................................................... 6
1.5 Nouvelles générations ........................................................................................................ 7
1.6 Evolution : quelques dates ................................................................................................. 7
1.7 Tendances générales de l’évolution des ordinateurs. ........................................................ 7
2. L’information ...................................................................................................................... 8
3. L’informatique ........................................................................................................................ 8
Chapitre 2 : Langage binaire et logique informatique ................................................................ 9
1. Les systèmes de numération................................................................................................... 9
1.1. Historique ........................................................................................................................... 9
1.2 Les marques numériques ................................................................................................... 9
La numération figurée ................................................................................................................... 9
La numération écrite ................................................................................................................... 10
Numérotation additive ................................................................................................................ 10
Numération de position .............................................................................................................. 10
Les bases...................................................................................................................................... 11
1.2. Et en informatique ? .......................................................................................................... 12
Ø Opérations arithmétiques .................................................................................................... 14
Addition binaire ........................................................................................................................... 14
Soustraction binaire .................................................................................................................... 14
Multiplication binaire .................................................................................................................. 14
Division binaire ............................................................................................................................ 14
Ø Opérations logiques/booléennes ......................................................................................... 15
Première loi de Morgan............................................................................................................... 16
Disjonction exclusive ................................................................................................................... 17
Ø Autres représentations ........................................................................................................ 18
1.3. Conversions ....................................................................................................................... 19
2. Codage de l’information ....................................................................................................... 20
2.1. Les textes .............................................................................................................................. 21
Code ASCII ................................................................................................................................... 21
Unicode ....................................................................................................................................... 22
ISO ............................................................................................................................................... 22
2.2. Les images (numériques) ...................................................................................................... 22
• Composition ......................................................................................................................... 23
• Caractéristiques de l’image : ................................................................................................ 23
• Résolution ............................................................................................................................ 23
• Pixel ...................................................................................................................................... 23
2
• Restitution............................................................................................................................ 24
• Echantillonnage.................................................................................................................... 24
Amplitude du son ........................................................................................................................ 27
Mesure du niveau d’ambiance sonore ....................................................................................... 27
Fréquence du son ........................................................................................................................ 28
3. Compression des données .................................................................................................... 32
3.1 Définition .......................................................................................................................... 32
3.2 Compression sans perte ........................................................................................................ 32
3.3 Compression avec perte ...................................................................................................... 34
Chapitre 3 : matériel et logiciel ............................................................................................... 36
1. Introduction ......................................................................................................................... 36
§ Un outil ............................................................................................................................. 36
§ Un assemblage de composants ......................................................................................... 36
§ La carte mère .................................................................................................................... 36
2. Composants d’un ordinateur ................................................................................................ 37
2.1. Le processeur et son horloge .............................................................................................. 37
2.2. Le bus ................................................................................................................................... 38
2.3. La mémoire .......................................................................................................................... 39
2.4. Les périphériques ............................................................................................................... 42
Exemples : ................................................................................................................................... 43
3. Architecture d’un ordinateur ................................................................................................ 46
3.1. Fonctionnement ................................................................................................................. 46
3.2. Instruction / langage machine ( IMPORTANT) .................................................................... 46
3.3. Architectures ( IMPORTANT CONNAÎTRE LA DIFFERENCE) ................................................. 47
3.4. Application .......................................................................................................................... 48
Principes généraux composés de deux parties : ........................................................................ 48
Exemple : rappel .......................................................................................................................... 50
4. La couche logicielle ............................................................................................................... 51
4.1 le logiciel ................................................................................................................................ 51
4.2 systèmes d’exploitation ......................................................................................................... 51
Chapitre 4 : algorithmique et langages de programmation...................................................... 58
1. Algorithmique ...................................................................................................................... 58
1.1. Définition ............................................................................................................................ 58
1.2. Les 4 étapes fondamentales (IMPORTANT + exemples) ..................................................... 58
Exemple 1 - PGCD ..................................................................................................................... 59
1.3. Spécifications ...................................................................................................................... 60
Exemple 2 – Années bissextiles ................................................................................................ 60
1.4. Ordre des opérations .......................................................................................................... 60
Exemple 3 – Verglas ................................................................................................................. 61
1.5. Notions de variables ........................................................................................................... 61
1.6. Algorithme d’Euclide : pseudocode ...................................................................................... 62
1.6. Principaux types de problèmes........................................................................................... 63

3
Problème de la paire la plus proche : exemple ......................................................................... 66
1.7. Exemples ............................................................................................................................. 66
Calcul d’une somme.................................................................................................................... 66
Calcul d’une factorielle ............................................................................................................... 67
2. Langage de programmation .................................................................................................. 67
2.1. Définition ........................................................................................................................... 67
Ø Principe ................................................................................................................................ 67
Ø Définition ............................................................................................................................. 67
2.2 Les premiers langages ........................................................................................................... 67
Ø Compilateur : ....................................................................................................................... 68
Ø Interpréteur ......................................................................................................................... 68
Ø Exemple : ............................................................................................................................. 68
2.3. Types d’erreurs (IMPORTANT) ............................................................................................ 69
Chapitre 5 : Réseaux ............................................................................................................... 70
1. Les réseaux informatiques .................................................................................................... 70
1.1. Aspects physiques............................................................................................................... 70
1.2. Organisation logique........................................................................................................... 71
1.3 Différents réseaux ................................................................................................................. 73
2. Le réseau Internet ................................................................................................................ 74
2.1. Les règles de communication sur Internet ( IMPORTANT) ................................................. 74
2.2. Différents services = Différents protocoles ........................................................................ 78
Indexation.................................................................................................................................... 92
Réponse aux requêtes des utilisateurs ........................................................................................ 94
3. Les dangers d’Internet ....................................................................................................... 98

4
Chapitre 1 : Introduction
1. L’ordinateur
= machine automatique de traitement de l’information obéissant à des programmes formés par des
suites d’opérations arithmétiques et logiques.

ð D’abord utilisé pour le calcul (computer) en nombres entiers/ en nombres flottants (réels).

1.1 Historique
Il est devenu courant de classer les ordinateurs en fonction de la technologie matérielle fondamentale
employée :

• Première génération. : les tubes à vides


• Deuxième génération : les transistors
• Troisième génération : les circuits intégrés : intégration à petite et moyenne échelle
• Nouvelles générations : les circuits intégrés : intégration à grande et très grande échelle

1.2. Première génération


But militaire : élaborer les tables de portée et de trajectoire des nouvelles armes (sans ces tables, les
armes n’étaient pas utilisables). La préparation des tables pour une seule arme pouvait occuper une
personne pendant des heures, voire des jours. ENIAC, La machine de Von Neumann, Ordinateurs
commerciaux, …

1.2.1 ENIAC

Electronic Numerical Integrator And Computer


Premier ordinateur entièrement électronique
18.000 tubes à vide et 70.000 résistances
5 millions de joints soudés à la main
Poids : 30 tonnes
Surface au sol : 500 mètres carrés
Nombreuses pannes… ENIAC était inopérant la
moitié du temps.
Capacité de calcul : 5.000 additions/sec, 357
multiplications/sec et 38 divisions/sec.
A l’heure actuelle: plus de 20 milliards
instructions/sec
Principal inconvénient: ENIAC devait être
programmé manuellement (cartes électriques à
enficher: il fallait positionner des commutateurs
et brancher et débrancher des câbles)

5
1.2.2 Machine de Von Neumann
- Forme qui permet au programme d’être rangé en mémoire avec les données
- Programmation plus simple
- Utilisation de données binaires
ð À quelques rares exceptions près, tous les ordinateurs contemporains présentent la même
structure et le même fonctionnement général.

1.2.3 Ordinateurs du commerce


- Années 1950
- Entreprise prédominante : Sperry et IBM
Capacités :

• Calculs matriciels
• Calculs algébriques
• Problèmes statistiques
• Calculs de primes pour une compagnie d’assurance
• Problèmes logistiques

1.3 Deuxième génération


- Remplacement du tube à vide par le transistor (fin des années 1950)
- Transistor :
Plus petit

• Moins cher
• Produit moins de chaleur
• Fonctionnement du transitor : la tige du milieu est amovible. En fonction de ce que l’on
veut faire, la tige du milieu bouge ou pas pour faire passer le courant ou non.
ð Apparition de processeurs plus complexes
ð Utilisation de langages de haut niveau

1.4 Troisième génération


- 1958 : invention de circuit intégré (puce électronique)
• Intègre plusieurs types de composants électroniques de base dans un volume réduit
• Un bloc de silicium peut maintenant contenir un circuit entier

ð Intégration à petite et moyenne échelle (plus de 1000 composants sur un seul circuit intégré)

6
1.5 Nouvelles générations
- 1971 : Première puce intégrant tous les composants d’un CPU : naissance du microprocesseur
Intégration à grande échelle (plus de 10.000 composants sur un seul circuit intégré)

Intégration à très grande échelle (plus de 100.000 composants sur un seul circuit intégré)

(Loi de Moore : il présidait que le nombre de transitor sur un circuit intégré allé doubler tous les 18
mois. MIPS = million d’instructions par seconde.)

1.6 Evolution : quelques dates


- 1946 : ENIAC
- Fin des années 1950 : premiers ordinateurs entièrement « transistorisés »
- 1960 : apparition des premiers claviers
- 1968 : invention de la souris (Douglas Engelbart) commercialisée à partir des mid-80’s
- 1981 : apparition du premier ordinateur portable
- Années 1980 : apparition des systèmes d’exploitation
- 1994 : apparition des premiers GSM en Belgique
- Début 2000 : premiers smartphones

1.7 Tendances générales de l’évolution des ordinateurs.


- Augmentation constante de la vitesse des processeurs
- Miniaturisation de la taille des composants
- Augmentation de la taille de la mémoire
- Capacités et débits accrus du matériel d’entrée/sortie

7
2. L’information

Donnée Information
= description élémentaire, souvent codée, d’une = moyen pour un individu de connaître son
chose, d’une transaction, d’un événement, … environnement (au sens commun du terme).

ð Elles peuvent être conservées et classées = données qui sont présentées sous une forme
sous différentes formes : papier, numérique, utile et utilisable par les personnes.
alphabétique, image son, …
ð Elles n’ont pas encore été organisées de
façon à ce que les utilisateurs puissent les
comprendre et s’en servir.

3. L’informatique
= contraction des mots « information » et « automatique »
- 1976 : l’Académie Française a adopté ce terme afin de désigner la « science du traitement de
l’information ».
Définition actuelle : « ensemble des sciences et techniques en rapport avec le traitement de
l’information »
Définition populaire : « tout ce qui se rapporte au matériel informatique »
Edsger Dijkstra (mathématicien) : « L’informatique n’est pas plus la science des ordinateurs que
l’astronomie n’est celle des télescopes ».

8
Chapitre 2 : Langage binaire et logique informatique

Quels types de données manipule-t-on en réalité lorsque l’on réalise les opérations suivantes : appuyer
sur une touche du clavier, sauvegarder un fichier de données, imprimer une image, envoyer un e-mail,

ð À partir du moment où des images, des sons, des textes peuvent être convertis en série de
nombres, ils peuvent être facilement traités, stockés et transférés par l’ordinateur, capable de
gérer uniquement des nombres.

1. Les systèmes de numération


1.1. Historique
Les premières traces numériquees datent de 30.000 ACN, elles correspondent au système binaire
de Leibniz (1646-1716).

1.2 Les marques numériques


• Quoi : entailles sur un bâton ou un os
• Pour quoi : de manière à mémoriser le nombre d’éléments dans un ensemble de choses (bêtes,
hommes ou objets)
• Problème : capacité visuelle limitée car au-delà de 4 éléments tout se brouille (5 devient quatre
entailles traversées par une barre)

La numération figurée
- Après l’usage des encoches, ce sont les numérations figurées qui font leur apparition. Chaque
nombre est à présent représenté par un signe physique (symbole sur un support en dur ou bien
un objet particulier comme un caillou, un coquillage, une ficelle, l’utilisation du corps, … )
- Ces dispositifs ne permettent pas de garder une trace du passé : chaque étape du calcul
supprime les précédentes.

9
La numération écrite
• Nouvelle façon de représenter les nombres (en 2000 ACN ) avec des clous
et des chevrons (sur une tablette d’argile).
• L’établissement d’une comptabilité a nécessité un enregistrement des
comptes .
• Numération écrite et écriture semblent être contemporaines .

Règles de construction :

§ La lecture doit être sans ambiguïté, une même écriture ne peut pas représenter des nombres
différents.
§ Il faut représenter un maximum de nombres avec un minimum de symboles.

Pour répondre à ces contraintes, la solution a été de compter « par paquets », c’est-à-dire de privilégier
un groupement particulier (comme la dizaine, la douzaine, la soixantaine, etc.) et d’organiser la suite
régulière des nombres selon une classification organisée fondée sur ce groupement originel.

C’est le principe de la base = nombre d’unités qu’il est nécessaire de grouper, à l’intérieur d’un ordre
donné, pour former une unité de l’ordre supérieur.

Numérotation additive
Dans les numérations additives, chaque chiffre a une valeur intrinsèque, qui ne dépend pas de sa
position.
ð Ni existence, ni utilité d’un « 0 »
Exemple : Numérotation égyptienne

- Il existe une notation particulière pour 1, 10, 100, 1000, 10.000, …


- Pour tous les autres nombres, la notation est additive (pour écrire 50, on reproduit 5 fois le
symbole utilisé pour écrire 10
- Le résultat est la somme des nombres représentés par des pictogrammes (petits dessins
hiéroglyphiques).

Numération de position
Pour remédier aux problèmes de calcul posés par la numération additive (écriture de nombreux signes),
on imagina une autre numération (2 000 ans ACN) dite de « position », où la localisation d’un chiffre
dans un nombre lui confère une valeur particulière.
10
Ainsi, si l’on utilise une base 10, 242 est composé de 2 centaines, 4 dizaines et 2 unités. Le chiffre 2
a donc deux valeurs en fonction de sa position.

Exemple : Numération babylonienne

Utilisation de clous et de chevrons (base 60)


Au-delà de 59, l’écriture devenait positionnelle
Le nombre 69 s’écrivait :

Comment différencier 2 de 1*60 + 1 ? Solution : utilisation de colonnes.

Mais… manque de rigueur des scribes. Les espaces entre les colonnes ne sont pas respectés.
Solution concernant les colonnes vides : trouver un signe pour remplir ces colonnes vides.

ð Utilisation d’un signe particulier : le double clou incliné :


= « il n’y a rien dans cette colonne » ; c’est le premier « zéro » de l’histoire.

Les bases
Ø Le système décimal (base = 10)
Notre système actuel est positionnel : la position d’un chiffre dans l’écriture d’un nombre exprime la
puissance de 10 présente et le nombre de fois qu’elle intervient. L’absence de puissance est notée par
un petit rond, c’est le zéro.

Un nombre naturel est représenté par une suite de chiffres choisis parmi 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9.
(Inventés en Inde et ont cheminés pendant environ 1000 ans : Inde, Moyen-Orient, Afrique du Nord,
Espagne).

Exemple :
2468 = 2*1000 + 4*100 + 6*10 + 8*1
2468 = 2*103 + 4*102 + 6*101 + 8*100

11
Ø Le système sexagésimal ( base = 60)
Utilisations :
• La mesure du temps (une heure comporte 60 minutes)
• Les coordonnées géographiques : degré d’angle (1 tour complet = 360°), minute d’angle (1° =
60’), seconde d’angle (1’ = 60’’)
• Exemple : latitude 45°23’12’’
Ø Le système duodécimal (base = 12)
Utilisations :
• Mesure de quantités de nourriture :
• Exemples : une douzaine d’œufs, deux douzaines d’huîtres, …

1.2. Et en informatique ?
A partir du moment où des images, des sons, des textes,... peuvent être convertis en une série de
nombres, ils peuvent être facilement traités, stockés et transférés par l’ordinateur, capable de gérer
uniquement des nombres. è le système binaire

Pour l’ordinateur, tout est noir ou blanc, vrai ou faux, bon ou méchant.

La raison tient à la simplicité et l’économie de conception.


Le binaire s’accomplit facilement, en constatant si, oui ou non, un courant circule dans un fil.

Physiquement : utilisation de transistors.

Ø Le transistor (1947)
- La réalisation électronique d’un fonctionnement binaire se fait à l’aide de transistors.
- Transistor = interrupteur qui permet de relier ou non 2 fils.
- L’état d’un transistor (courant qui passe ou non) est commandé par un troisième fil.
- Les transistors sont au cœur de tout ce qui est électronique (horloges, montres, thermostats,
fours, TVs, réfrigérateurs, portes de garage, … )
- Nombre de transistors sur un processeur d’ordinateur : 1971 : 2.300 transistors è 2012 : 2,3
milliards de transistors

Ø Le système binaire ( base = 2)


- Un nombre naturel est représenté par une suite de chiffres choisis uniquement parmi 0 et 1.
- Un nombre binaire est une suite finie de chiffres binaires.
- Exemple: la suite 01001101 représente le nombre naturel (77 en nombre décimal) égal à :
64 + 8 + 4 + 1
ou encore 1*26 + 1*23 + 1*22 + 1*20

12
ð Les fractions en binaire (même principe que pour le décimal) :

Le point sépare la partie entière (« exposants positifs ») de la partie fraction (« exposants négatifs »)

ð Et en informatique ?
« Bit » (signifiant « binary digit ») = plus petite unité d’information pouvant être reconnue ou
manipulée par l’ordinateur.

Cellule de mémoire = unité de mémoire (typiquement 8 bits = 1 byte ou 1 octet)

• Bit le + significatif = le bit à l’extrême gauche de la série de bits d’une cellule de mémoire.
• Bit le - significatif = le bit à l’extrême droite de la série de bits d’une cellule de mémoire.

Ø Adresses en mémoire
= « nom » qui identifie de manière unique une cellule de la mémoire de la machine :

• Les noms sont en fait des nombres


• Ces nombres sont assignés consécutivement, en commençant à 0
• Cette manière de numéroter les cellules permet d’associer un ordre aux cellules de la mémoire

Ø Mesures de capacité de mémoire


Attention aux différences entre les préfixes traditionnels et les préfixes binaires :

Préfixes traditionnels Préfixes binaires

Kilobyte : 10³ bytes = 1000 bytes Kilobyte : 210 bytes = 1024 bytes
Megabyte : 106 bytes = 1,000,000 bytes
Megabyte : 220 bytes = 1,048,576 bytes
Gigabyte : 109 bytes = 1,000,000,000 bytes
Gigabyte : 230 bytes = 1,073,741,824 bytes

13
Ø Opérations arithmétiques
Addition binaire
Même principe que pour l’addition en base 10

Quatre règles : Exemples :

Soustraction binaire
Même principe que pour la soustraction en base 10

Quatre règles : Exemples :

Multiplication binaire
Même principe que pour la multiplication en base 10 : utilisation de l’addition.

Quatre règles : Exemples :

Division binaire
Même principe que pour la division en base 10 : utilisation de la soustraction.

Exemples :

14
Ø Opérations logiques/booléennes
Algèbre de Boole
George Boole (1815-1864)

But = « traduire des idées et des concepts en équations, leur appliquer certaines lois et retraduire le
résultat en termes logiques ».

Manipulent 2 « valeurs de vérité » : vrai et faux.

Combinent une (paire de) valeur(s) (= input) de manière à produire une autre valeur (= output).

Opérations de base
Toute expression logique peut se décrire à l’aide des 3 opérations de base : NOT, AND, OR.

Priorité des opérations : 1.NOT 2. AND 3. OR

à astuce : utiliser les parenthèses

• Conjonction : AND, . , Λ, &, &&, …


a a AND b b
0 0 0
0 0 1
1 0 0
1 1 1

• Disjonction : OR, +, Ѵ, |, ||, …


a a OR b b
0 0 0
0 1 1
1 1 0
1 1 1

• Négation : NOT a, ā, non-a, !a, ¬a, …


a NOT a
0 1
1 0

15
Propriétés
Associativité Commutativité

(a + b) + c = a + (b + c) = a + b +c a+b=b+aa.b=b.a

(a . b) . c = a . (b . c) = a . b . c

Distributivité Idempotence

a . (b + c) = a . b + a . c a + (b . c) = (a + b) . (a + c) a + a + a + *…+ + a = a a . a . a . *…+ . a = a

Eléments neutres Absorption

a+0=a a.1=a 0.a=0

1+ a = 1

Complémentarité a = NOT (NOT a)

« la lumière est allumée » = « la lumière n’est pas non-allumée » a + NOT a = 1

«VRAI » si « la lumière est allumée » OU « si la lumière n’est pas allumée » a . NOT a = 0

«VRAI » si « la lumière est allumée » ET « si la lumière n’est pas allumée »

Première loi de Morgan


NOT (a + b) = NOT a . NOT b
Table de vérité

a b a+b NOT (a + b) NOT a NOT b NOT a .


NOT b
0 0 0 1 1 1 1
0 1 1 0 1 0 0
1 0 1 0 0 1 0
1 1 1 0 0 0 0

Deuxième loi de Morgan


NOT (a . b) = NOT a + NOT b
Table de vérité

a b a.b NOT (a . b) NOT a NOT b NOT a +


NOT b
0 0 0 1 1 1 1
0 1 0 1 1 0 1
1 0 0 1 0 1 1
1 1 1 0 0 0 0
16
Disjonction exclusive
ð (exemple de fonction logique) XOR, ⃝+
« l’un ou l’autre, mais pas les deux »
a a XOR b b
0 0 0
0 1 1
1 1 0
1 0 1
- a XOR b = (a + b) . NOT(a.b)
- a XOR b = a . NOT b + NOT a . b

Equivalence et implication (exemple de fonction logique)

a a b b a a => b b
0 1 0 0 1 0
0 0 1 0 1 1
1 0 0 1 0 0
1 1 1 1 1 1

Expression logique à 3 variables

Exemple du téléphone :
• a = « Le téléphone sonne »
• b = « On a envie de répondre »
• c = « On a envie d’appeler quelqu’un »

• d = « on décroche » : fonction logique des variables a, b et c.

• è d = a . b + c : on décroche quand ça sonne et qu’on a envie de


répondre OU quand on a envie d’appeler quelqu’un.

17
L’observation de la table précédente montre que l’analyse contient une
situation absurde : le téléphone sonne, on a envie d’appeler quelqu’un mais
on n’a pas envie de répondre et on décroche quand même. ( a = 1 ; b = 0 ; c =
1 ; d = 1)

La variable d2 = « on décroche » correspond plutôt à : d2 = NOT a . c + a . b

Expression logique à 4 variables


Un bon élève s’interroge s’il est sage de sortir un soir. Il doit décider en fonction de 4 propositions :
• a = « il a assez d’argent »
• b = « il a fini ses devoirs »
• c = « le transport en commun est en grève »
• d = « la voiture de son père est disponible »

Cet élève pourra sortir si


• Il a assez d’argent (a = vrai)
• Il a fini ses devoirs (b = vrai)
• Le transport en commun n’est pas en grève (c = faux) ou si la voiture de son père est disponible
(d = vrai)

ð Expression logique : a . b . (NOT c + d)


Ø Autres représentations
La représentation binaire :

- peut parfois être difficile à lire,


- particulièrement dans le cas de valeur élevée ayant un grand nombre de positions différentes.
ð Utilisation fréquente, en informatique, de représentation alternatives : la notation octale (base
= 8, utilisant les chiffres de 0 à 7) ou la notation hexadécimale (base = 16).
ð Nécessité de conversion des données

La notation octale (base = 8)


- Utilise les chiffres de 0 à 7
- Ne nécessite pas de symbole supplémentaire que des chiffres
- Code plus compact que le binaire
- Utilisations : Langage C , Langage Java
- Tend à disparaître

18
La notation héxadécimale ( base = 16 )
- Il n’existe pas de symboles spécifiques pour représenter les 6 valeurs de 10 à 15.
- Solution retenue universellement : utiliser les chiffres de 0 à 9 et des symboles de l’alphabet,
les lettres de « A » à « F ».
- Utilisation de triplets hexadécimaux pour le codage
des couleurs dans les pages Web : une couleur est
définie par sa proportion (variant, par exemple, de 0 à
255) de chacune des 3 couleurs primaires
(Red/Green/Blue).

Table de conversion :
Binaire Décimal Hexadécimal Binaire Décimal Hexadécimal
0000 0 0 1000 8 8
0001 1 1 1001 9 9
0010 2 2 1010 10 A
0011 3 3 1011 11 B
0100 4 4 1100 12 C
0101 5 5 1101 13 D
0110 6 6 1110 14 E
0111 7 7 1111 15 F

1.3. Conversions
Il est important de bien comprendre les différentes représentations des nombres.

Pour passer de l’une à l’autre : on utilise des algorithmes de conversion :


• du
binaire au
décimal
• du
décimal au
binaire
• du décimal à l’hexadécimal
• …

Du binaire au décimal
Dans le système binaire, il s’agit des puissances successives de 2.

La valeur d’un nombre binaire en décimal peut être calculé de la même manière.

Quelle est la valeur décimale du nombre binaire 1010101? 85

19
Du décimal au binaire
Pour convertir une valeur décimale en valeur binaire, il faut simplement procéder de la manière inverse
et factoriser la valeur.

Pour la valeur 145 :

- Différentes puissances de 2 (1, 2, 4, 8, 16, 32, 64, 128, 256)


- 145-128 = 17 → 1 pour 128 (27)
- 17-16 = 1 → 1 pour 16 (24)
- 1-1 = 0 → 1 pour 1 (20)
è 0 pour les autres puissances
è 10010001

Du décimal à l’hexadécimal

2. Codage de l’information
L’ordinateur peut stocker et manipuler des informations de toutes sortes: textes, images, sons, …

Sa mémoire ne peut contenir que des nombres binaires.

C’est pourquoi toute donnée devant être traitée sur ordinateur est convertie en une suite de nombres
binaires :

- pour les textes, utilisation d’un traitement de textes


- pour les images, utilisation d’un logiciel de traitement d’images
- pour les sons, utilisation d’un logiciel de traitement du son

20
2.1. Les textes
Un problème Une solution

Input = suite de caractères (un texte) Chaque caractère doit se voir assigner un «
Output = suite de « 1 » et de « 0 » (rappel: les motif » binaire unique.
ordinateurs ne comprennent que le langage binaire) Un texte sera alors représenté par une suite
de bits, chaque motif successif représentant
- Input = le mot « INFORMATIQUE » les symboles successifs du texte original.
- Output = Années 40 et 50 : prolifération de ce genre de
01001001010011100100011001001111010 codes ET des problèmes de communication
1001001001 dus à un manque d’uniformisation.
10101000001010101000100100101010001
0101010101000101 è Uniformisation des codes
ð Comment passer de l’un à l’autre?

Ø Les codes

Code - Contient les caractères nécessaires pour


ASCII « écrire en anglais
American - Utilise des motifs de bits de longueur 7
Standard Code
for Information- Définit 128 caractères :
Interchange » - numérotés de 0 à 127
- codés en binaire de 0000000 à
Défini par l’ « 1111111 (7 bits)
American National ð Une extension stockée sur 8 bits a
Standards Institute également été définie
» (ANSI)
ð Caractères du code ASCII :
o Les lettres majuscules et miniscules
o Les chiffres décimaux
o L’espace (caractère blanc)
o Les symboles de ponctuation (, ; . : …)
o Des caractères spéciaux (& # @ …)
Les caractères de contrôle (pour, par
exemple, structurer les fichiers de texte)

21
- Développé en coopération par
plusieurs leaders sur les marchés du
matériel et du logiciel informatiques.
- Utilise un motif binaire unique stocké
sur 16 bits (2 bytes)
Unicode - Code plus étendu que le code ASCII
- 2 bytes contiennent 65.536 motifs
différents
- Permet de stocker beaucoup plus de
symboles (symboles spéciaux chinois,
japonais, hébreux, …)

- Défini par l’ « International


Organization for Standardization »
ISO - Utilise des motifs de 4 bytes (32 bits)
- Permet de stocker des milliards de
symboles différents.

Ø Les fichiers « texte »


- Un fichier consistant en une longue séquence de symboles encodés (en utilisant le code ASCII
ou l’Unicode) est couramment appelé un fichier « texte ».
- Attention à bien différencier les fichiers « texte » simples (manipulés par des éditeurs de texte)
et les fichiers manipulés par des programmes plus élaborés (tels que Word).
- Ce dernier type de fichier contient, en plus d’un encodage (caractère par caractère) du texte,
des codes propriétaires représentant des changements dans la police de caractère, des
informations sur l’alignement des caractères, …

2.2. Les images (numériques)


Toute image (dessin, icône, photographie,…) acquise, créée, traitée ou stockée sous forme
binaire :
• Acquise par un scanner, un appareil photo numérique,…
• Créée par un programme informatique
• Traitée grâce à des outils informatiques
• Stockée sur un support informatique

22
Ø Image matricielle
= image en mode point ou image bitmap

= image composée d’un tableau de points de couleur (pixels) ;


ð peut se visualiser sur un écran d’ordinateur ou tout dispositif d’affichage RGB (Rouge-Vert
Bleu)

• Composition
- Une image numérique matricielle est composée d’unités élémentaires, les pixels
(= picture elements), qui représentent chacun une partie de l’image.
- Une image numérique est définie par
o le nombre de pixels qui la composent (largeur et hauteur)
o l’étendue des teintes de couleur que peut prendre chaque pixel (échantillonnage –
profondeur)

• Caractéristiques de l’image :
Caractéristique Unités Exemple
Définition Pixels 640 x 480
Taille réelle Centimètres ou Pouces 13cm x 9cm
Pixels par pouce (ppp)
Résolution Dot per inch (dpi) 300 dpi
Pixels par centimètre
Relations :
Définition (pixels) = Résolution (pixels/cm) * Dimensions (cm)
1 pouce = 2,54 cm
è

• Résolution
= nombre de pixels par unité de longueur de l’image à numériser.
+ le nombre de pixels est élevé par unité de longueur, + la quantité d’information est importante,
et + la résolution est élevée.
ð Elle définit donc le degré de détail qui va être représenté sur cette image.

• Pixel
ð N’a pas de taille bien définie.
ð Pour représenter la taille d’un pixel, il faut connaître la résolution utilisée pour représenter
ce pixel.

23
• Restitution
La résolution maximale utilisée pour un écran dépend de la carte graphique (qui détermine comment
afficher les images) ainsi que de l’écran.

L’œil humain ne permet pas de voir une différence de qualité au-delà de 300 ppp (dpi); les imprimeurs
ont donc généralisé cette règle.

• Echantillonnage
Echantillonnage Niveaux
1 bit / pixel (exemple 1) Noir et blanc
8 bits / pixel (exemple 2) 256 niveaux de gris
8 bits / couleur primaire / pixel (exemple 3) 256*256*256 couleurs
16 bits / couleur primaire (/pixel) 65536*65536*65536 couleurs

§ Exemple 1
Une image en noir et blanc peut être stockée à l’aide d’un bit par pixel (0 = blanc, 1 = noir).

§ Exemple 2
- Une image en niveaux de gris ou en couleur nécessite plus d’information.
- On ne code que le niveau d’intensité lumineuse
ð Intensité codée sur 1 octet
- Convention
o 000 = noir (intensité lumineuse nulle)
o 255 = blanc (intensité lumineuse maximale)

24
§ Exemple 3

Ø Image vectorielle
= image numérique composée d’objets géométriques
individuels.
- Objets géométriques (décrits de manière mathématique) :
o Segments de droite, polygones, arcs de cercle, ….
o Pouvant subir différentes transformations (rotation,
écrasement, mise à l’échelle, ... )
o Possédant divers attributs (position, couleur, etc.)

- Une image vectorielle est dessinée à nouveau à chaque visualisation


- Formats : PDF, EPS, SVG, …

• Applications
- Cartographie :
o Possibilité de superposer des couches
o Possibilité de « zoomer »
- Dessins (architecte, ….)
- Animations flash :
o Bannières publicitaires
o Sites Web

25
• Avantages / Inconvénients
Avantages Inconvénients
- Possibilité de redimensionner l’image à - Nécessité d’une puissance de calcul
volonté sans aucun effet d’escalier importante.
(possibilité de zoom infini). - Nécessité d’une mémoire importante.
- Possibilité de travailler avec plusieurs
couches de dessin.
- Précision des tracés.

• Affichage
Les moyens actuels de visualisation d’images reposent sur des images matricielles.

Nécessité de convertir un fichier vectoriel en un fichier matriciel pour être affiché sur un système
RGB.

ð À « résolution » égale, une image vectorielle est généralement moins lourde qu’une image
matricielle, car elle ne comprend pas la description de chacun des pixels qui la composent mais
seulement des éléments.

• Stockage
Exemple : • Taille de l’image = 64.000*8 = 512.000
• Définition de 320*200 bits
• Niveaux de gris • Conversion : 512.000 bits = 62,5 KB (=
• Nombre de pixels = 320*200 = 64.000 512.000 / (8*1024))

Compléter les cases « ? »


Couleur : Couleur :
Noir et blanc Niveaux de gris
Définition 8 bits/couleur 16 bits/couleur
(1 bit/pixel) (8 bits par pixel)
primaire primaire
320x200 ? 62.50 KB 187.50 KB 375 KB
640x480 37.50 KB 300 KB 900 KB 1.76 MB
800x600 58.59 KB ? 1.37 MB 2.75 MB
1024x768 96 KB 768 KB 2.22 MB ?
1280x1024 160 KB 1.25 MB ? 7.5 MB

26
2.3. Les sons
Ø Définition et propagation
Son = vibrations dans un support

Concepts clés : émission, transmission, réception


émission transmission réception

= nécessité d’une énergie = vitesse de propagation du son Récepteurs :


permettant de mettre en dépend du support. - Oreille : communique au
mouvement un corps pour
- Le support est un milieu cerveau les vibrations
produire une vibration.
compressible : air (~ 341 m/s), sonores sous forme de
Les producteurs de telles
eau (~ 1482 m/s), acier (~ 5050 signaux nerveux.
énergies : larynx, membrane
d’un haut-parleur, machines, … m/s), vide, … - Micro : transforme les
vibrations sonores sous
forme de signaux
électriques, …

Amplitude du son
= variation de la pression de l’air

Variation de la pression en fonction du temps (représentation


graphique)

Mesure du niveau d’ambiance sonore


= Décibel (dB)
ð Lié à l’amplitude du son
- Utilise le rapport entre la puissance d’une onde sonore et une
valeur de référence (seuil d’audibilité 0.00002 Pa)
- Seuil de douleur = 200 Pa

27
Fréquence du son
= nombre de répétions d’une période par seconde

- Fréquences audibles par l’oreille humaine : entre 20 Hz et 20.000 Hz


- Fréquences inaudible : infrasons ( < 20Hz) et ultrasons (>20 000 Hz)
- En musique, fréquence = hauteur (note) ; exemple: octave 3
§ Numérisation
- Input = onde sonore
- Output = une série de bit
- Opération = numérisation
- Principe : relever des échantillons de son (c’est-à-dire des différences de pressions) à des
intervalles de temps précis (et réguliers)

§ Taux d’échantillonnage
= intervalle de temps entre 2 échantillonnages

ð De manière pratique, l’on résonne plus souvent sur le nombre d’échantillons par seconde
• fréquence d’échantillonnage
• exprimée en Hertz (Hz)

§ Résolution
= le nombre de valeurs que l’échantillon peut prendre.

ð Déterminez le nombre de bits sur lesquels on code les valeurs :

8
- 8 bits à on a 2 = 256 valeurs possibles
16
- 16 bits à on a 2 = 65.536 valeurs possibles
24
- 24 bits à on a 2 = 16.777.216 valeurs possibles

§ Qualité de numérisation
- Dépend de
o la fréquence d’échantillonnage
o la résolution (= le nombre de bits sur lesquels on code les valeurs)

28
• Exemple de résolution : 4 bits (valeurs possibles : de 0 à 15)

Exemples réels
Type de son Fréquence d’échantillonnage Résolutions

Prise de son professionnelle Entre 96.000 et 192.000 HZ 24 / 32 bits


Qualité DVD / Télévision 48.000 Hz 24 bits
Qualité CD 44.100 Hz 16 bits
Qualité radio 22.050 Hz 16 bits
Qualité téléphone 8.000 Hz 8 bits

Stockage
Taille en bits d’un extrait sonore =

Fréquence d’échantillonnage

*
Résolution (donne la taille en bits pour 1 seconde de son)

*
Nombre de secondes (donne la taille en bits pour la totalité du son)

*
Nombre de voies

ð En effet, la taille finale est à multiplier par le nombre de voies : la taille sera 2 fois plus
importante pour un son stéréo que pour un son mono.

Remarque : la numérisation permet de garantir ou de réduire volontairement la qualité d’un signal


pour diminuer le coût de stockage et/ou le temps/coût de la numérisation en fonction de l’utilisation
prévue.

29
2.4. Les vidéos
2.4.1. Signaux

Signal analogique = onde Signal numérique = binaire


• Séparé en 2 signaux : luminance (quantité de • Succession d’images matricielles
blanc par rapport au noir) ou chrominance • Compromis entre :
(couleurs) - résolution,
• ou en 3 signaux : (RGB) - fréquences d’image,
- volumes de stockage et
- vitesse de traitement des données.

2.4.2. Affichage
Résolution
= définition des images qui composent la vidéo
• Largeur et hauteur en pixels
• Exemple : 1024 * 768

Format
= le rapport entre la largeur et la hauteur de l’image : 4/3 ou 19/9 (écran large)

Formats standards internationaux : indiquent uniquement la largeur : 720p (1280 * 720)

Fréquence d’images
= nombre d’images par seconde / Frames per second (fps)

ð définit la vitesse d’une animation


- Sensation de mouvement :
• il faut au moins 16 images par seconde
• phénomène de la « persistance rétinienne » : phénomène attribuant à
l’œil une image rémanente durant 1/25ème de seconde sur la rétine ;
croyance selon laquelle la perception du mouvement chez l’homme
serait le résultat d’une vision persistante.

30
• effet phi : sensation visuelle de mouvement provoquée par l'apparition d'images perçues
successives, susceptibles d'être raccordées logiquement par un déplacement ou une
transformation.
- Fréquences standards :
• Cinéma : 24 fps
• Télévision : Europe = 25 fps ; Etats-Unis et Japon = 30 fps
• Dessins animés (bonne qualité): 12 fps

ð Les fréquences d’images peuvent fluctuer au cours d’une vidéo compressée.


ð Un plan fixe n’aura pas spécialement besoin d’énormément de changements d’images.
Techniques d’affichage
Historique :
• Les luminophores (qui émettent la lumière sur les écrans cathodiques) s’éclairent et
puis l’intensité baisse. Le bas de l’image s’allumait alors que le haut de l’image s’éteignait
déjà.
• Même si la technologie des luminophores a évolué, il est nécessaire de conserver la
compatibilité.

Entrelacé / Interlaced (i)


L’écran est balayé 1 ligne sur 2.

La variation de contraste a lieu entre 2 lignes voisines (non plus entre le haut
et le bas de l’écran).

Le confort visuel est meilleur car les lignes sont très petites et très resserrées.

Progressif / Progressive (p)


L’image est affichée dans sa totalité en une seule fois.

Uniquement pour écrans informatiques jusqu’à l’apparition des écrans LCD / Plasma.

Fréquence de rafraîchissement / balayage


= nombre d’images s’affichant par seconde sur un écran ; + cette fréquence est élevée, meilleur est le
confort visuel. Exemples :

• Ecrans cathodiques : 50 Hz – 60 Hz
• Ecran LCD / Plasma : Varie généralement entre 50 Hz et 120 Hz (mais fixe pour un écran)
Stockage
Dépend :
• des propriétés du son (cf. numérisation des sons)
• des propriétés des images (cf. numérisation des images)
• du nombre d’images par seconde
• des techniques de compression utilisées (sons et images)
31
3. Compression des données
La compression est due à l’évolution et aux différentes innovations technologiques.

Nous savons que la puissance des processeurs augmente plus vite que les capacités de stockage et
énormément plus vite que la bande passante d’Internet.

Il y a donc un déséquilibre entre :


• le volume des données qu’il est possible de traiter
• le volume des données qu’il est possible de stocker
• le volume des données qu’il est possible de transférer

3.1 Définition
La compression de données traite de la manière dont on peut réduire l’espace nécessaire
à la représentation d’une certaine quantité d’information.

Elle concerne donc aussi bien la transmission que le stockage des données.

Deux types :
1) La compression sans perte
2) La compression avec perte

3.2 Compression sans perte


- Il n’y a aucune perte de données sur l’information d’origine.
- Il y a autant d’information après qu’avant, elle est seulement réécrite de manière plus concise
- Appelée également « compactage »
- C’est le cas de la compression zip

3.2.1 Codage par plages


- Appelé également « run-length encoding »
- Mode de compression simple
- Processus de remplacement de séquences d’éléments d’information identiques par un code
indiquant l’élément qui est répété et le nombre de fois qu’il apparaît dans la séquence initiale
- Le résultat comporte en général moins de caractères, bien que ce ne soit pas une obligation
Exemple

Séquence de bits représentant un texte, une image, un son, etc.

«11111111111111111111111111111111111111111111100000000000000000000000000000000000
0000000000000000000000000111111111 1111111111111111111111 » (136 bits)

32
La place nécessaire pour stocker :

- 45 1 60 0 31 1
- càd 00101101 1 00111100 0 00011111 1
- càd 8 bits + 1 bit + 8 bits + 1 bit + 8 bits + 1 bit = 27 bits
ð est moindre que la place nécessaire pour stocker chacun des 136 bits.

3.2.2 Codage dépendant de la fréquence


= système dans lequel la longueur du motif de bits utilisé pour représenter un élément d’information
est inversement proportionnelle à la fréquence d’utilisation de cet élément d’information

ð Les éléments sont donc représentés par des motifs de différentes longueurs
ð C’est le cas des « codes de Huffman »
3.2.3 Illustration : données textuelles
Considérons la tâche qui consiste à coder un texte écrit en français

En français, les lettres e, a et i sont plus fréquentes que les lettres z ou x par exemple.

Etablissement du code :
• Utiliser des motifs plus courts pour représenter les lettres a, e ou i
• Utiliser des motifs plus longs pour représenter les lettres z ou x

ð Le résultat sera un code au sein duquel les textes en français auront une représentation plus
courte que ce qu’on aurait obtenu en utilisant un code à longueur uniforme (ASCII, Unicode,...)
Exemple concret : Le Macintosh d’Apple, dans les années 80, Utilisait un système inspiré de Huffman :

• Les 15 lettres les plus fréquentes étaient codées sur 4 bits


• La 16ème combinaison était un code d’échappement indiquant que la lettre était codée en
ASCII sur les 8 bits suivants.

ð permettait une compression des textes voisine en moyenne de 30% (à une époque où la
mémoire était extrêmement chère).
3.2.4 Codage par dictionnaire
1) Identifier les motifs récurrents
2) Les stocker dans un dictionnaire
3) Les remplacer dans le document par des références à leur première apparition
4) Les motifs rares sont encodés complètement

33
3.3 Compression avec perte
- S’applique aux données sonores et visuelles, qui peuvent subir une modification, parfois
importante, sans que cela ne soit perceptible par un humain.
- La perte d’information est irréversible : il est impossible de retrouver les données d’origine
après une telle compression.
- Adaptée pour le Web

è Problématique : identifier les transformations de l’image ou du son qui permettent de réduire la


quantité de données tout en préservant la qualité perceptuelle.

ð L’œil ne perçoit pas nécessairement tous les détails d’une image et seul un sous-
ensemble très faible de sons possibles est exploitable par l’oreille.
ð Possibilité de réduire la quantité de données de telle sorte que le résultat soit très
ressemblant à l’original, voire « identique », pour l’œil et l’oreille.

3.3.1 Compression MPEG-1/2 Audio Layer 3


Algorithme de compression audio capable de réduire drastiquement la quantité de données
nécessaire pour restituer de l’audio, mais qui, pour l'auditeur, ressemble à une reproduction du son
original non compressé, càd avec perte de qualité sonore significative mais acceptable pour
l'oreille humaine.

- Plus connu sous son abréviation MP3


- Compression approximative de 4:1 à 12:1
- Un fichier audio occupe ainsi 4 à 12 fois moins d’espace une fois compressé au format
MP3
- Cette réduction de taille facilite le téléchargement et le stockage de données musicales sur
un support numérique (disque dur, mémoire flash, etc.).
- Système de compression destructif
- Ne retransmet pas intégralement le spectre des fréquences audio
- Tente d’annuler d’abord les sons les moins perçus
- Objectif : les dégradations doivent se faire le moins remarquer possible
Compresser un fichier musical provenant d’un CD audio au format MP3 réduit la qualité

34
3.3.2 Compression DivX
- Compression approximative de 4:1 à 12:1
- Permet de compresser de longs et gros fichiers vidéo en fichiers bien plus légers (4-8 GB à
0.7 GB).
- Au centre de controverse suite à son utilisation pour copier et distribuer des films extraits
de DVD aux droits réservés.

3.3.3 Compression JPEG


- Permet de compresser des images
- Taux de compression de 3:1 à 100:1
- Très populaire sur Internet où la compression d’un fichier permet de réduire le coût de la
bande passante.

35
Chapitre 3 : matériel et logiciel

1. Introduction
§ Un outil
L’ordinateur est un outil qui permet d’automatiser des opérations de toute sorte en vue de faciliter
le travail, la vie des gens.

Un ordinateur ne réfléchit pas à votre place : il ne fait que vous assister et vous suggérer des solutions.

L’ordinateur ne fait rien sans ordre ou par lui-même : il lui faut des logiciels et des ordres pour le faire
fonctionner.

§ Un assemblage de composants

L’ordinateur correspond aussi à un assemblage de composants. C’est pourquoi les performances de la


machine sont liées à l’ensemble des composants et à leur aptitude à fonctionner correctement ensemble.

§ La carte mère
La carte mère sert à interconnecter tous les composants d’un ordinateur (« système nerveux » de
l’ordinateur).

Sont connectés par la carte mère :


• le processeur
• les mémoires
• les périphériques internes
• les périphériques externes

Remarque : si la carte mère ne fonctionne plus, plus rien ne fonctionne.

Eléments

La carte mère contient notamment :


• Un ou plusieurs connecteurs d’alimentation électriques : ils fournissent les diverses tensions
électriques nécessaires à son fonctionnement.
• Le support du processeur (« socket »)
• Une horloge
• Les différents bus (= permet de connecter 2 composantes = fil)
• Les connecteurs (2, 3 ou 4) de la mémoire vive (« memory slot »)
• Le BIOS (programme enregistré dans la mémoire morte – ROM)
• Les connecteurs d’entrée/sortie (ports USB, connecteurs RJ45, connecteurs VGA,
connecteurs audio, ....)
36
2. Composants d’un ordinateur
2.1. Le processeur et son horloge
2.1.1. Le processeur
Central Processing Unit (CPU) en anglais

= véritable cerveau de l’ordinateur, base de tous les calculs.

Composition physique : il regroupe sur un petit pavé de silicium de quelques cm² plusieurs millions
de transistors microscopiques interconnectés.

2.1.2 Les unités du processeur (IMPORTANT EXAM)


Le processeur est scindé en 3 unités :
1) L’unité arithmétique et logique dont la mission est d’assurer les opérations de type logique
(supérieur, inférieur, égal, intersection (ET), union (OU), ... ) ainsi que les opérations
mathématiques.
2) L’unité de contrôle permettant de contrôler le fonctionnement de l’ordinateur.
3) L’unité de registres contenant les registres (cellules similaires aux cellules de la mémoire
principale) utilisés pour le stockage temporaire d’information dans le CPU

2.1.3 Les rôles du processeur


§ Exécuter une série d’instructions appelées « programme »
§ Traiter les données d’un programme
§ Le processeur fonctionne grâce à un nombre très limité de fonctions logiques (ET, OU,...) et
mathématiques (+, -, x, ...)
ð on met en mémoire les données et on les programme

Remarque : quand le CPU souhaite ouvrir un fichier, les infos vont être dans les registres à
excécuter l’info

2.1.4 L’horloge
Toutes les opérations du processeur doivent être exécutées selon un ordre rigoureux. C’est pourquoi
le processeur est soumis à une horloge qui bat la mesure, tout comme un métronome.

37
L’horloge crée des impulsions (= à intervals réguliers en fonction de l’installation) qu’elle envoie
au processeur. Dans une montre bracelet, ces signaux servent à faire avancer les aiguilles ; dans le
processeur, chacune d’elles lance l’opération suivante.
En effet, à chaque top d’horloge (pour les instructions simples), le processeur :

• lit l’instruction à exécuter en mémoire,


• effectue l’instruction,
• passe à l’instruction suivante.

L’unité de mesure est le « hertz » qui indique le nombre de battements par seconde (1 gigahertz = 1
milliard de battements par seconde).

En théorie, plus la fréquence est élevée et plus le processeur est rapide.

2.2. Le bus
= ensemble des lignes de communication connectant les différents composants d’un ordinateur
(sorte d’autoroute de l’information par laquelle transitent les instructions et les données).

Le processeur est relié aux mémoires et aux autres circuits par des connexions électriques (fils) dans
lesquelles le courant circule..

Par exemple, pour transmettre un mot binaire d’un octet (8 bits) d’un seul coup, il faut utiliser 8 fils.
Chaque fil a un poid différent ( si 8 bits, il y aura 8 fils et le courant passera sur les fils où leur numéros
de place est 1).

2.2.1 Principe de fonctionnement :


Le bus sert à transmettre un entier informatique de la taille du bus.

Les différents bits du bus ont chacun un poids différent numéroté de 0 à n-1 où n est la taille du bus.
Par exemple pour un bus quatre bits on peut transmettre 16 valeurs différentes (24 = 16)

L'émetteur positionne au même instant tous les bits du bus. Au moment adéquat le composant lecteur
lira tous les bits en même temps

2.2.2 Caractéristiques
Sa largeur = nombre de bits qu’il peut traiter à chaque cycle de temps.
Exemple : un bus comportant 32 lignes est un bus 32 bits.

Sa fréquence = nombre de fois que le bus est accédé par seconde (exprimée en hertz). Exemple :
33,33 MHz
Sa bande passante = largeur du bus * fréquence
À partir de la valeur des 2 caractéristiques précédentes, il est possible de déterminer la bande passante
maximale d’un bus.
Exemple : 33,33 MHz x 32 bits = 1066 Mbits/s = 133,3 MB/s.

2.2.3 Exemples :
• Bus système : relie le processeur à la mémoire interne.

38
• Bus d’entrées/sorties : relie le processeur aux connecteurs d’entrées/sorties.
• Port Universal Serial Bus : un bus qui n’interconnecte que 2 dispositifs est appelé un port.

2.3. La mémoire
Principales caractéristiques
2.3.1 Emplacement
• Processeur : retient les choses avant de faire des opérations : registres
• Interne (principale) : retient ce que les programmes sont en train de faire : RAM, ROM,
mémoire cache, ..
• Externe (auxiliaire) : transporte la mémoire entre ordinateurs : disque dur, CD-ROM,

2.3.2 Méthode d’accès


Séquentielle : obligation de passer toute la Directe : on accède directement à l’endroit voulu.
bande pour arriver à l’info voulu.

• Obligation de passer par la lecture des • Pas besoin de lire les informations qui
informations qui précèdent précèdent
• Le temps d’accès à un enregistrement • Chaque enregistrement possède une
arbitraire est variable adresse unique associée à un emplacement
physique

2.3.3 Performance
§ Temps d’accès (latence) = temps pour se situer à l’endroit où l’on veut être.
= temps nécessaire au positionnement du mécanisme de lecture/écriture à l’emplacement
approprié.

§ Débit de transfert = à quelle vitesse la tête de lecture capte les infos.


= vitesse à laquelle les données peuvent être transférées depuis ou vers une unité de mémoire.

2.3.4 Caractéristiques physiques


§ Volatile (ou non)
= les données sont perdues à chaque coupure d’alimentation et lorsque l’ordinateur est éteint.

§ Effaçable (ou non)


= l’utilisateur est dans l’impossibilité de modifier des données « non-effaçables ».
39
2.3.5 Type physique (3 types de mémoire)
Objectif commun : représenter physiquement 2 symboles différents (l’un un « 1 », l’autre un « 0 »).

1. Mémoire à semi-conducteurs (USB ou carte SD)

Cellule = élément de base de la mémoire à semi-conducteurs

Propriétés :
• chaque cellule possède 2 états stables (pouvant représenter les « 1 » et les « 0 » binaires)
• on peut écrire les cellules pour définir leur état
• on peut lire les cellules pour détecter leur état

Des signaux électriques sont utilisés pour positionner l’état d’une cellule à 1 ou à 0 (présence ou
absence d’une charge électrique).

2. Magnétique (principe d’aimant)

La tête de lecture/écriture est composée de deux bobines permettant la lecture et l’écriture de bits.

Le disque est recouvert d’une couche d’oxyde magnétique.

Un bit est positionné ou pas suivant le sens de l’orientation des microparticules d’oxyde magnétique,
dans un sens, le bit est lu comme un « 0 », et dans l’autre sens comme un « 1 ».

Pour l’écriture, la tête impose un sens aux


microparticules grâce à un champ magnétique
créé avec une bobine ou l’autre suivant le sens
que l’on veut donner au bit écrit.

Remarque : on force les particules à être dans


un sens ou dans un autre (1 ou 0).

3. Optique (CD ou DVD)

Utilisation d’un rayon laser


• Un moteur fait tourner le disque sous le rayon laser
• L’intensité de la lumière réfléchie change lorsque le laser rencontre un creux
• Le début ou la fin d’un creux représente un « 1 ».
• Lorsqu’aucun changement n’est détecté, on enregistre un « 0 ».

40
2.3.6 Mémoire principale (IMPORTANT)
= mémoire à semi-conducteurs

A pour fonction de stocker (IMPORTANT)


• les instructions du ou des programmes en cours d'exécution

• les données en cours de traitement.


Il existe différents types de mémoire :
• Mémoire « random access » (RAM)
• Mémoire « read-only » (ROM)
• Mémoire cache

2.3.7 Mémoire RAM (random access)


= mémoire vive/système/volatile
ð Permet de stocker les informations pendant tout le temps de fonctionnement
de l’ordinateur (elle contient notamment le système d’exploitation, le(s)
logiciel(s) et le(s) document(s) en cours de traitement)
§ Caractéristiques :
- Rapidité d’accès pour accéder à une info située dans la mémoire vive (10 nanosecondes).
- Volatilité : données perdues à chaque coupure d’alimentation et lorsque l’ordinateur est éteint.
- Possède une capacité de plus en plus importante (plusieurs GB).

2.3.8 Mémoire ROM (read only)


= mémoire qui ne peut être ni programmée ni effacée par l’utilisateur (en lecture seule).

Contient : les informations nécessaires au démarrage d’un ordinateur + des tables de facteurs de
conversion.
§ Caractéristiques :
- Accès beaucoup plus lent que mémoire RAM : 150 nanosecondes.
- Non-volatilité : données conservées même après une coupure d’alimentation.
2.3.9 Mémoire cache (zappé en cours)
= stocke les informations les plus utilisées de la mémoire principale (plus grande et plus lente).

ð Utilisée ici entre le processeur et la mémoire principale pour accélérer les communications

Elle permet au processeur de se « rappeler » les opérations déjà effectuées auparavant. En effet, elle
stocke les opérations effectuées par le processeur, pour qu’il ne perde pas de temps à recalculer les
choses qu’il a déjà faites précédemment.

41
2.3.10 Hiérarchie mémoire
ð Le dilemme du concepteur :
Utiliser les technologies qui proposent une Répondre aux besoins en matière de
capacité de mémoire importante performance. Faire appel à des mémoires :
• besoin de cette capacité • plus chères
• faible coût par bit de cette mémoire • de capacités moins importantes
• à temps d’accès plus court

Petite mémoire
Ne pas se limiter à une technologie unique mais mais rapide
d’accès
employer une hiérarchie mémoire.
Grande
Descendre dans la hiérarchie implique : mémoire
1) Une baisse du coût par bit mais accès
lent
2) Une augmentation de la capacité
3) Une augmentation du temps d’accès
4) Une baisse de la fréquence d’accès *du processeur à la mémoire

* Facteur clé du succès de cette organisation hiérarchique.

Remarque : + l’info est haute, + on l’utilise souvent.

2.4. Les périphériques


2.4.1. Caractéristiques
La plupart des périphériques sont amovibles : peuvent être déconnectés de l’unité centrale sans
empêcher celle-ci de fonctionner.

Sur les micro-ordinateurs, tous les périphériques sont reliés à la carte mère par un connecteur que l’on
insère directement ou indirectement.

2.4.2. Avant les périphériques


Les cartes électriques à enficher :
• Programmation intégralement en langage machine
• Programmation faite en reliant électriquement des cartes
• Chaque utilisateur était programmeur

Les cartes perforées (IMPORTANT)


• 80 colonnes à 800 bits
• Coin tronqué (si la boîte, contenant 2000 cartes, tombait), il nous donne le sens dans lequel
on doit poser la carte)
• Principe: aiguille (brosse) métallique (le courant passe ou non)
• Fabriqués jusqu’au début des années 1980
42
è on insère la carte dans une borne métallique et une tige :

- si elle va dans un trou poinssonné à courant passe : 1


- si elle va dans un trou sans rien à courant ne passe pas : 0

2.4.3. Périphériques d’entrée


Les périphériques d’entrée servent à fournir de l’information au système informatique :

• classiques : souris, clavier, tablette, écran tactile, …


• audiovisuels : microphone, appareil photo numérique, caméscope, webcam, …
• optiques : scanner, lecteur de codes-barres, …

2.4.4. Périphériques de sortie


Les périphériques de sortie servent à faire sortir de l’information du système informatique.

• d’affichage : écran, écran LCD, …


• d’impression : imprimante à jet d’encre, imprimante laser, …

2.4.5. Périphériques d’entrée-sortie (stockage)


Ces périphériques opèrent dans les 2 sens : stocker des données (sortie) et charger ces données (entrée)

• La mémoire interne (RAM, ROM, cache) ne suffit généralement pas pour contenir toutes les
données.
• Les données sont alors stockées sur des mémoires externes périphériques moins coûteuses.

Exemples :

= supports de stockage à accès séquentiel


• Bande magnétique

• Supports de stockage à accès direct

• Disque dur
• Disquette 8 et 5,25 pouces (obsolète)
• Disquette 3,5 pouces (obsolète)
• CD-ROM, CD-R
• Digital Versatile Disk (DVD)
• Mémoire flash
• …

Ø Bande magnétique
= support permettant l'enregistrement d’informations analogiques ou numériques à l'aide d'un
magnétophone. On peut stocker beaucoup d’info, utile pour les archives.

ð Mémoire de type magnétique :

43
• Les informations sont lues en mesurant la polarisation de particules
magnétiques (oxyde de fer) incluse dans une base souple.
• Les informations sont écrites en modifiant cette orientation.

Ø Disque dur

ð Mémoire de type magnétique

Capacité de stockage : centaines de GB (disques durs actuels).

Temps d’accès moyen : temps nécessaire au disque dur pour positionner la tête de lecture/écriture au-
dessus d’un endroit désigné du support : quelques millisecondes (disques durs actuels : 6-12).

Vitesse de rotation : vitesse à laquelle les disques tournent à l’intérieur du lecteur : entre 5000 et
10000 tours par minute (disques durs actuels).

Taux de transfert des données : temps requis pour transmettre les données d’un périphérique à un autre :
entre 80 et 100 (voire plus) MB/s (disques durs actuels).

è Imaginons un axe de rotation avec 5 disques, on peut stocker les infos sur les deux faces.

L’info est stockée grâce aux têtes de lecture et positionnée grâce à l’axe de rotation.

1) Faire tourner

2) Positionner la tête de lecture à plus lent de ROM car il faut du temps pour positionner de la tête de
lecture.

Toutes les têtes sont alignées et bougent en même temps car on stocke une info en 1/10 car 10 faces du
disque. Les infos sont stockées sous forme de cylindre à on bouge l’axe à transfert de donnée plus
rapide.

Ø CD-DVD
ð Mémoire de type optique (différent des disquettes : mémoire de type magnétique)

Date d’introduction (CD) : 1983

Différents types : CD, CD-ROM, CD-R, CD-RW, DVD, DVD-R, DVD-RW, …

44
Ø Mémoire flash
- Caractéristiques :
• Mémoire à semi-conducteurs réinscriptible
• Mémoire de grande capacité
• Mémoire non volatile : les données ne disparaissent pas lors d’une mise hors tension
• Accès rapide et consommation faible (nulle au repos)

- Applications :
• Appareils photo numériques
• Téléphones cellulaires
• Baladeurs MP3
• Clefs USB
• Disques SSD (Solid-State Drive)

Ø Disques SSD vs Disques durs


• SSD + solides
• SSD - bruyants
• SSD beaucoup + rapides pour accéder aux données
• SSD + rapides en lecture/écriture
• SSD +/-10x plus chers (2014)
• SSD + légers et + petits
• SSD consomment -
• Capacités identiques

Composants d’un ordinateurs : résumé

45
3. Architecture d’un ordinateur
3.1. Fonctionnement
Un programme est encodé comme une série de bits et est stocké en mémoire principale.

De la mémoire principale, le CPU peut extraire les instructions et les exécuter.

Remarque : ce qui prend du temps ce sont les transferts, les accès de mémoire.

Toutes les données nécessaires au CPU sont stockées dans l’unité de registre.

Programme ayant pour objectif


d’additionner 2 valeurs stockées en
mémoire principale.

Exemple :

1) Chercher la 1ère donnée.

2) Chercher la 2ème donnée.

3) Activer l’addition : active le circuit correspondant.

4) Résultat en mémoire.

3.2. Instruction / langage machine ( IMPORTANT)


§ Instruction machine : instruction encodée comme une série de bits reconnaissable par le CPU.
§ Langage machine = ensemble de toutes les instructions qu’une machine (un CPU) est capable de
reconnaître.

Remarque : si on met 5 circuits précis dans un CPU, il est capable de faire que ces 5 opérations.

Chaque CPU est construit avec plusieurs circuits électroniques.

à Instructions machine = ce que le circuit est capable de faire.

46
Ø Types d’instruction machine :
§ Instructions de transfert de données : copie de données d’un endroit à un autre.

§ Instructions arithmétique et logique : utilise une série de bits existante pour calculer une
nouvelle série de bits.

§ Instructions de contrôle : dirige l’exécution du programme.

Ø Compatibilité ( IMPORTANT)
- Chaque processeur a son propre langage machine
- Si un processeur A est capable d’exécuter toutes les instructions d’un processeur B, on dit que
A est compatible avec B.
- L’inverse n’est pas forcément vrai, A peut avoir des instructions supplémentaires que B ne
connaît pas.
- Il existe 2 grands types d’architecture suivant le langage machine utilisé :
• Architecture RISC
• Architecture CISC

3.3. Architectures ( IMPORTANT CONNAÎTRE LA DIFFERENCE)


3.3.1. Architecture RISC (= instructions simples)
= Reduced Instruction Set Computer (RISC)
• Microprocesseur à jeu d’instruction réduit
• « Seul un jeu d’instructions très réduit était principalement utilisé dans les programmes »
• Très peu d’instructions simples et rapides
• Exemple: PowerPC d’Apple/IBM/Motorola

Objectif : exécuter une instruction à chaque cycle de l’horloge.


Mise en œuvre de plusieurs principes :
• Simplification des instructions
• Simplification du format des instructions : souvent 32 bits (toutes les instructions nécessitent
le même nombre de cycles d’exécution)
47
• Utilisation intensives des registres (très nombreux)
• Code moins « compact » (toutes les instructions (même les moins utilisées) ont la même taille)
• …

3.3.2. Architecture CISC (= instructions complexes)


= Complex Instruction Set Computer (CISC)
• Microprocesseur à jeu d’instruction étendu
• Beaucoup d’instructions pratiques et puissantes
• Exemple : Premiers Pentium d’Intel (1990)

Objectif : compléter une tâche en aussi peu de lignes que possible (le microprocesseur devra donc
comprendre des instructions plus complexes).
- Instructions « courtes » : quelques cycles d’horloge
- Instructions « longues »: jusqu’à 150-160 cycles d’horloge
- Difficile de prévoir la durée de certains calculs

3.3.3. CISC vs RISC


- A l’heure actuelle, les performances des 2 architectures sont comparables et les architectures
sont hybrides (CISC et RISC). Exemple : Pentium
- Pratiquement, certains processeurs traduisent les instructions CISC en suites d’instructions
RISC avant l’exécution.

3.3.4. Architecture ARM


= Advanced Risc Machine

Architecture plus simple

Faible consommation : dominant en informatique embarquée (téléphonie mobile, tablettes, …)

3.4. Application
3.4.1. Instruction machine ( IMPORTANT)
Principes généraux composés de deux parties :
1) Op-code (code opération) : spécifie l’opération à exécuter
Exemple : Stocké sur 4 bits

2) Opérande : fournit de plus amples informations sur l’opération


Exemple : Stocké sur 12 bits

Une instruction machine correspond donc à une série de 16 bits dans notre exemple.

48
Composition : exemple

3.4.2. Langage machine


OpCode Opérande Description
1 RXY LOAD le registre R avec XY
2 RXY LOAD R avec le motif XY
3 RXY STORE R dans XY
4 ORS MOVE le contenu de R sans S
5 RST ADD S et T dans R (2’s comp.)
6 RST ADD S et T dans R (floating pt.)
7 RST OR S et T dans R
8 RST AND S et T dans R
9 RST XOR S et T dans R
A R0X ROTATE registre R X fois
B RXY JUMP dans XY si R = registre 0
C 000 HALT

Voir TP

3.4.3. Architecture

Le registre : endroits mémoire dans le CPU.

Les cellules mémoire, contenant qqch. ont une adresse.

49
3.4.4. Exécution
- Contrôlée par 2 registres spéciaux :
• Le compteur du programme (program counter) contenant l’adresse de la prochaine
instruction à exécuter.
• Le registre d’instruction (instruction register) contenant l’instruction courante.

Le cycle de la machine
1. FETCH : retrouver la prochaine instruction en mémoire (comme indiqué par le compteur de
programme) et incrémenter ce compteur.
2. DECODE : décoder la série de bits du registre d’instruction.
3. EXECUTE : exécuter l’action spécifiée par l’instruction décodée.

Exemple : stockage

Le programme est stocké en mémoire principale.

Rappel : chaque instruction contient 16 bits tandis que chaque cellule de mémoire contient 8 bits.

Une instruction machine est stockée 2 par 2 dans les mémoires.

1ère étape

Au début de l’étape « aller chercher »,


l’instruction stockée à partir de l’adresse A0 est
retrouvée dans la mémoire et placée dans le
registre d’instruction

2ème étape
Le compteur de programme est incrémenté de manière à ce qu’il pointe vers la prochaine instruction
à exécuter

Exemple : rappel

L’horloge crée des impulsions qu’elle envoie au processeur ; chaque impulsion lance l’opération
suivante. En effet, à chaque top d’horloge (pour les instructions simples, c’est à- dire d’une taille égale
à 16 bits pour notre exemple), le processeur :

• lit l’instruction à exécuter en mémoire,


• effectue l’instruction,
• passe à l’instruction suivante.

50
4. La couche logicielle
4.1 le logiciel
(= Software >< Hardware)

= programme qui permet à un ordinateur de réaliser certaines tâches spécifiques.

Les logiciels sont chargés en mémoire RAM.

Les logiciels sont exécutés par le CPU (unité centrale).

Ø Place des logiciels

Ø Types de logiciels
Logiciel applicatif et système d’exploitation (OS)

Localisations différentes dans la machine

Complexités différentes
Les OS sont des programmes énormes et complexes : Windows = 5 millions de lignes de code, 100
volumes de 1000 pages de 50 lignes par page…

Ø Logiciels applicatifs
- Résolvent les problèmes spécifiques des utilisateurs : Excel, …
- Logiciel statistique
- Logiciel de traitement de texte : Word, …
- Tableur : Excel, …
- Système de gestion de bases de données (SGBD) : Excel, …

4.2 systèmes d’exploitation


= assurent un « bon fonctionnement » de l’ordinateur (Windows, Mac OS,...) et gèrent la mémoire.

51
4.2.1. Généralités
Ø Origine
Un ordinateur moderne se compose :
• d’un ou de plusieurs processeurs
• d’une mémoire principale

• de périphériques d’entrées/sorties, …

ð Sans ses logiciels, un ordinateur n’est qu’un morceau de métal inutile.

L’architecture (instructions, organisation de la mémoire, … ) de la plupart des ordinateurs,


au niveau du langage machine, est primitive et assez fastidieuse à programmer.

L’écriture de programmes qui prennent en compte tous ces éléments et les gèrent correctement
est un travail extrêmement difficile.

Il y a quelques années, il est apparu clairement qu’il fallait trouver un moyen de libérer les
programmeurs de la complexité du matériel.

Enrober le matériel avec une couche logicielle (= système d’exploitation) qui gère l’ensemble du
système

Ø Rôles de l’OS
- Cache les détails de fonctionnement du matériel.
- Présente à l’utilisateur une interface simple et élégante.
- Affranchit l’utilisateur de tâches pesantes (gestion de la mémoire, gestion du matériel E/S, …).

4.2.2. Composants
Ø La coquille ( = Shell )
= seule chose qu’on voit, avec laquelle on intéragit

= regroupe tout ce que le système d’exploitation peut faire


Afin d’exécuter les actions requises par les utilisateurs de l’ordinateur, un OS doit être capable de
communiquer avec ces utilisateurs.
ð Le shell est la partie de l’OS qui gère la communication avec les utilisateurs.
§ Messages textuels
Les « anciens » shell communiquaient avec les utilisateurs par l’intermédiairede messages textuels
ð Utilisation du clavier et de l’écran

52
Exemple: la fenêtre MS-DOS

Quelques commandes
• cd.. retour au répertoire racine
• dir montre tous les fichiers/répertoires
du répertoire courant
• cd xxx se positionne dans le répertoire xxx

§ Interface graphique
GUI (Graphical User Interface)

Les objets devant être manipulés (fichiers et programmes) sont représentés sur l’écran par des icônes.

Utilisation d’une souris (lancement des commandes en pointant et en cliquant sur ces icônes).

§ Gestionnaire de fenêtres
= système d’exploitation qui gère la fonction des pixels.

Quand je clique à un endroit, un pixel est associé à une icône qui me dirige vers quelque chose.

Window manager : alloue des blocs d’espace (appelés « fenêtres ») sur l’écran.

Garde trace de l’application est associée à chaque fenêtre.

Ø Le noyau ( = kernel)
= partie interne de l’OS

= programmes permettant d’assurer les fonctions de base de l’ordinateur

§ File manager : système de fichiers ( IMPORTANT)

= assure le lien entre le fichier et la série de 0 et 1.

Rôle : coordonner l’utilisation des possibilités de stockage de l’ordinateur.

Le système de fichiers stocke des informations sous forme de fichiers et maintient différents détails
sur ceux-ci:
• l’endroit où chaque fichier est situé
• les accès des utilisateurs aux différents fichiers
• les disponibilités pour le stockage de nouveaux fichiers ou l’extension de fichiers existants
• d’autres métadonnées (date de dernier accès, date de modification des données, taille, type,
etc.)

§ Vue abstraite

Les fichiers sont regroupés dans des répertoires.

Un répertoire contient soit des fichiers, soit récursivement d’autres répertoires.

53
Pour l’utilisateur, un système de fichiers est vu comme une arborescence, offrant à l’utilisateur une
vue abstraite sur ces données.

L’utilisateur peut localiser ses données à partir d’un chemin d’accès (directory path), en facilitant
l’accès et la manipulation.

§ Propriétés :

- Restriction pour nommer un fichier: pour éviter les caractères qui ont un sens particulier pour
le système d’exploitation (exemple: ‘\’ pour Windows)
- Extensions: « nomFichier.txt »
• en fonction du contenu du fichier
• certains programmes seulement (déterminés par l’extension) peuvent « comprendre » le fichier

L’extension permet à l’ordi d’ouvrir le fichier dans une application)

Exemples

Le choix du système de fichiers se fait principalement en fonction du système d’exploitation.

Les systèmes d’exploitation récents supportent un plus grand nombre de systèmes de fichiers.

Exemples:
• File Allocation Table (FAT-16, FAT-32, VFAT);
• NT File System (NTFS);
• Hierarchical File System (HFS, e.g., Mac OS X);
• Unix File System;
• …

§ Principe de stockage (FAT) ( IMPORTANT)

Pour associer un nom de fichier à son contenu

Principe : chaque répertoire contient


• une table associant le nom des fichiers ainsi que leur taille
• un indice pointant vers le premier bloc de données du fichier (chaque bloc de données contient
l’index du bloc suivant du même fichier)

Remarque : en mémoire, il y a une table, pour chaque particule, il y a une table avec toutes les infos.
Lorsqu’on clique sur une icône, le système va aller dans la table et trouver les infos.

Exemple : FAT-16

Les adresses sont stockées sur 16 bits

65.524 unités d’allocation possibles

54
• 65.536 – certaines qui ne peuvent pas être utilisées (Windows…)

La taille du bloc détermine donc la taille maximale d’une partition


• Pour rappel, un bloc est la plus petite unité de transfert d’une machine
• Bloc de 32 KB: partitions dont la taille maximale est de 2.048 MB (2 GB)

Remarque : si j’ai un fichier de 2,5KB, ça va me prendre 3KB car le système de fichiers travaille en
bloc à espace perdu

Exemple : FAT-32

Les adresses sont stockées sur 28 bits…

268.435.456 unités d’allocation possibles

La taille du bloc détermine toujours la taille maximale d’une partition


• Bloc de 4 KB: partitions dont la taille maximale est de 1 TB
• Bloc de 8 KB: partitions dont la taille maximale est de 2 TB

§ Gestionnaire de mémoire
- Coordonne l’utilisation de la mémoire vive (= en cours d’utilisation) de l’ordinateur.
- Difficulté accrue pour des environnements (les plus répandus) multi-utilisateurs (ex : serveur)
ou multitâches (ex : lancement de plusieurs applications simultanées).

Remarque : si on efface une ligne du tableau à le système d’exploitation n’a plus accès à l’info èil
est toujours là mais on ne le retrouve plus car on a effacé la référence. Lorsqu’on écrase un code à
pas de retour en arrière possible.

§ Notion de processus

Concept clé

Processus ~ programme en cours d’exécution

Exemple : 3 processus
• Vous convertissez un fichier en PDF
• Vous décidez de naviguer sur le web
• En tâche de fond, votre courrier électronique est relevé périodiquement

à Création d’un processus

Il existe essentiellement 3 événements provoquant la création de processus :


1. Initialisation du système.
2. Exécution d’un appel système de création de processus par un processus en cours d’exécution.
3. Requête utilisateur sollicitant la création d’un nouveau processus.

55
§ Etats d’un processus

• En cours d’exécution (running) : utilise le CPU en ce moment.


• Prêt (ready) : exécutable, temporairement arrêté pour laisser s’exécuter un autre processus.
• Bloqué (blocked) : ne pouvant pas s’exécuter tant qu’un événement externe ne se produit pas.

1. Le processus est bloqué en attente d’une donnée.


2. L’ordonnanceur (OS) choisit un autre processus.
( Il va dans l’ensemble des processus prêts
à ordonnanceur qui choisit)
3. L’ordonnanceur (= celui qui décide quel processus
utilisé) (OS) choisit ce processus.
4. La donnée devient disponible.

§ Terminaison d’un processus

Un processus peut s’arrêter pour diverses raisons :


1. Arrêt normal (volontaire) : tâche terminée
2. Arrêt pour erreur (volontaire) : ne trouve pas un fichier, etc.
3. Arrêt pour erreur fatale (involontaire) : bogue du programme
4. Arrêt par un autre processus (involontaire)

§ Rôle du CPU (IMPORTANT)


- Exécute les programmes (processus) lancés
- Ne peut exécuter qu’un processus simultanément
- Périodiquement, le système d’exploitation décide d’interrompre un processus et d’en faire
avancer un autre.
§ Notion de multiprogrammation
ð Possibilité offerte par un OS de faire coexister plusieurs processus simultanément en mémoire
et de mettre à profit les « temps morts » d’un programme (exemple, opérations d’entrée-sortie)
pour «faire avancer » les autres programmes.
ð En effet, 80 à 90 % du temps d’exécution d’un programme normal se passe en attente
d’opérations d’entrée-sortie (+ lentes).
§ Notion de simultanéité
ð Le CPU ne peut exécuter qu’un seul processus à la fois
ð Le CPU peut intervenir pour plusieurs programmes en l’espace d’une seconde : il donnera à
l’utilisateur l’illusion de la simultanéité, aussi appelé pseudo-parallélisme.
§ Gestionnaire des périphériques :
§ Rôles de l’OS
- Rendre les périphériques prêts à l’emploi (pilotes)
56
- Emettre des commandes vers les périphériques
- Gérer les erreurs
- Fournir une interface simple et facile à utiliser entre les périphériques et le reste du système
§ Pilotes

= drivers : tout est fait grâce à ça

- Outils de communication
- Unités logicielles permettant d’effectuer des
opérations sur des appareils périphériques
(imprimante, écran, … )
• Exemple : impression d’un document

- Chaque pilote est conçu spécifiquement pour un


type d’appareil
• Exemple : installation d’une nouvelle
imprimante

§ Lancement

= booting : 1er processus qui va lancer tout le reste

- Procédure exécutée par l’ordinateur à chaque fois qu’il est allumé.


- Transfère l’OS de la mémoire de masse (où il est stocké de manière permanente) vers la mémoire
vive (« vide » lors du démarrage de l’ordinateur).
- Le compteur de programme est modifié de manière à contenir la première instruction du lancement
de l’OS.

57
Chapitre 4 : algorithmique et langages de programmation

1. Algorithmique
1.1. Définition
= ensemble des activités liées aux algorithmes

Algorithme = énoncé, dans un « langage bien défini » d’une suite d’opérations permettant de résoudre
par calcul un problème.

« Langage bien défini » :

• Langage naturel (français, anglais, ... ) : pose souvent des problèmes (ambiguïté des termes)
• Pseudocode : mélange entre un langage naturel et des constructions utilisées dans les langages
de programmation ; permet une description plus succincte de l’algorithme.
• Organigramme
• Langage de programmation
ð Pourquoi étudier les algorithmes ?
- Importance théorique : les algorithmes constituent la base de tout ordinateur.
- Importance pratique :
• Création d’une « trousse à outils » contenant tous les algorithmes connus.
• Développement d’un cadre de travail pour concevoir et analyser des algorithmes pour
de nouveaux problèmes.

1.2. Les 4 étapes fondamentales (IMPORTANT + exemples)


1) Compréhension du problème
- Lire le problème attentivement
- Poser des questions si vous avez un doute quelconque sur le problème
- Tester quelques petits exemples à la main
- Réfléchir à d’éventuels cas particuliers

2) Conception de l’algorithme
- Définir une stratégie pour solutionner le problème
- Ecrire l’algorithme
• Utilisation d’un pseudocode
• Utilisation d’un organigramme

3) Analyse de l’algorithme
- L’algorithme est-il correct?
- L’algorithme est-il efficient? En terme de temps et d’espace ?
- L’algorithme pourrait-il être plus écrit plus simplement?
58
- L’algorithme est-il suffisamment général?

4) Codage de l’algorithme
- La plupart des algorithmes sont destinés à être finalement implémentés (transformés
en programmes informatiques)
- « Traduire » l’algorithme en un programme correct
- Utilisation d’un langage de programmation
- Tester/déboguer le programme obtenu.

Exemple 1 - PGCD
Trouver le plus grand commun diviseur (PGCD) de 2 nombres entiers non négatifs et non tous les 2
égaux à 0.

Exemples :
PGCD(60,24) = 12
PGCD(33,11) = 11
PGCD(60,0) = 60

Algorithme d’Euclide : pseudocode

Basé sur une application répétée d’égalités PGCD(m,n) = PGCD(n,m mod n) et ce, jusqu’à ce que le
second nombre soit égal à 0, ce qui rend le problème trivial.

Si n = 0, renvoyer m et arrêter; sinon, aller à l’étape 2

Diviser m par n et assigner la valeur du reste à r

Assigner la valeur de n à m et la valeur de r à n. Aller à l’étape 1.

Exemple :
PGCD(60,24) = PGCD(24,12)
= PGCD(12,0)
= 12
ð Autre méthode
1. Assigner la valeur du minimum de m et n à t
2. Diviser m par t
3. Si le reste est 0, aller à l’étape 3
Sinon, aller à l’étape 4
4. Diviser n par t
5. Si le reste est 0, renvoyer t et arrêter
Sinon, aller à l’étape 4
6. Diminuer t d’une unité et aller à l’étape 2

59
1.3. Spécifications
Input = données fournies au programme

Output = données générées par le programme

Exemple 2 – Années bissextiles

1.4. Ordre des opérations


2.4.6 1.4.1. La séquence
Les opérations sont exécutées l’une à la suite de l’autre, dans l’ordre où elles apparaissent.

2.4.7 1.4.2. La condition


Une opération (ou un groupe d’opérations) n’est exécutée que de manière conditionnelle.
« Déterminer si une année est bissextile uniquement SI l’année proposée est supérieure ou égale à 1582 »

SYNTAXE : IF (si ….. alors …. sinon … )


if condition then
write instruction(s)
else instruction(s)
end if

60
2.4.8 1.4.3. La répétition (boucle)
Une opération (ou un groupe d’opérations) est exécutée de manière répétitive.
« Continuer à déterminer si une année est bissextile tant que l’utilisateur le souhaite »

SYNTAXE : WHILE : nombre d’opérations inconnu (tant que …)


while not condition
do instruction(s)
end while

SYNTAXE : FOR : nombre d’opérations connu


for initialisation to condition do
instruction(s)
end for

Exemple 3 – Verglas
Demander à l’utilisateur d’entrer une valeur (entière) en degrés Celsius (°c) :
• Si la température est supérieure à 5°c, lui dire qu’il n’y a pas de danger !
• Si la température est comprise entre 1 et 5°c inclus, lui dire qu’il existe un danger de
plaques de verglas isolées !
• Si la température est en dessous de 1°c inclus, lui dire qu’il existe un danger de verglas
généralisé !

ð On demande d’écrire un algorithme en utilisant un organigramme :

1.5. Notions de variables


Les données reçues et traitées par le programme sont stockées dans des variables.

Variable = espace mémoire permettant de stocker différentes données de différents types (entiers,
réels, texte, … )

61
• Déclaration
Une variable est déclarée en fournissant son nom et son type. ATTENTION : on ne peut pas utiliser
les mots qui ont déjà une signification dans le language de programmation. ( type : entier,
réel,caractère,…)

• Initialisation (au moment où l’on crée la variable)


= on donne une valeur de départ à la variable ( en respectant le type donné à la base).

• Affectation
= on affecte une valeur particulière à la variable.

1.6. Algorithme d’Euclide : pseudocode


= suite d’égalité mais on ne sait pas combien il y en a.

1) On définit 3 variables (n,m,r)

2) Boucle

3) end while/for (en fonction de la boucle)

4) return m

Exemple Java

Temp. : Entier
Risque: chaîne de caractères
« Demander à l’utilisateur d’entrer une température (entier) en degré Celsius »

temp = valeur entrée par l’utilisateur

if temp > 5 then

risque ← « Pas de danger »


else if temps > 1 then

risque ← « Risque de verglas isolé »


else
end if

end if
return risque

62
Implémentation (Java)

1.6. Principaux types de problèmes


1.6.1. Tri
Objectif : trier les articles d’une liste donnée en ordre ascendant.

Condition : la nature des listes d’articles doit autoriser un tel ordre.

Exemples :
• Trier des listes de nombres
• Trier des caractères d’un alphabet
• Trier des chaînes de caractères
• Trier des enregistrements sur base d’un critère

Pourquoi ? Le tri rend beaucoup plus facile toute une série de questions sur des listes.
Exemples : dictionnaires, bottins téléphoniques, …

Il existe, à l’heure actuelle, des dizaines d’algorithmes de tris différents :


• Tri par sélection et permutation
• Tri par bulle
• Tri par décalage et insertion
• …
Exemple : spécifications du problème

• Input: un tableau T : T(0),…,T(n-1) (n éléments)


• Output: le tableau T trié dans un ordre non décroissant ( on ne dit pas croissant par
précaution si présence d’éléments égaux).

Exemple d’algorithme :

1. i : entier
2. for i=0 to n-2 do
3. échanger T[i] avec le plus petit élément de T(i), …,T(n-1)
4. end for

63
1.6.2. Recherche
- Objectif : trouver une valeur donnée dans un ensemble donné
Exemple : rechercher un nom dans un répertoire
- Méthodes :
o Recherche binaire
o Recherche séquentielle

Exemple d’une recherche séquentielle :

Spécifications du problème :

• Input : un tableau T : T(0),…,T(n-1) (n éléments) et une clé de recherche K.


• Output : l’indice du premier élément de T dont la valeur est égal à K ou -1 si aucun
élément n’a été trouvé.

Exemple d’algorithme :

1. T(n) ← K
2. i, indice : entier
3. i ← 0
4. indice ← -1
5. while T(i) ≠ K do
6. i ← i + 1
7. end while
8. if i < n then
9. indice ← i
10. end if
11. return indice

1.6.3. Traitement de chaînes de caractères


Objectifs : effectuer toute une série de traitements sur des chaînes de caractères (strings).

Exemples de données :
• Chaînes de caractères d’un alphabet particulier (lettres, chiffres, caractères spéciaux)
• Chaînes de bits (0/1)
• Séquences génétiques (comparaison d’ADN)

Traitement de chaînes de caractères : exemple (« string machine »)

Spécifications du problème
• Input :
o Un tableau T(0), …, T(n-1) représentant une chaîne de n caractères.
o Un tableau P(0), …, P(m-1) représentant une chaîne de m caractères.
• Output :
o «Vrai » si les 2 chaînes de caractères sont les mêmes.
o « Faux » si ce n’est pas le cas.

64
Exemple d’algorithme :

1. b : booléen
2. b← « Vrai »
3. i: entier
4. if m ≠ n then
5. b ← « Faux »
6. else
7. for i ← 0 to n-1 do
8. if T(i) ≠ P(i) then
9. b ← « Faux »
10. end if
11. end for
12. end if
13. return b

1.6.4. Problèmes sur graphes


Graphe :
• Ensemble de points (appelés nœuds // carrefours)
• Certains de ces points sont connectés par des segments de lignes (appelés arcs // routes)

Les graphes peuvent être utilisés pour modéliser bon nombre d’applications réelles :
• Réseaux de transport
• Réseaux de communication
• Web
• etc.
Exemples : (Savoir expliquer mais pas faire les algos)

• Estimation du « diamètre » du Web : nombre maximum de liens nécessaires


(chemin le plus court) pour atteindre une page Web à partir d’une autre page Web.
• Algorithmes de traversée : recherche d’un chemin permettant de traverser
tous les nœuds du graphe.
• Algorithmes du plus court chemin : quel est le chemin le plus court entre 2 noeuds du
graphe ( 2 villes, etc.)
• …

1.6.5. Problèmes combinatoires


Problèmes qui demandent de trouver un objet combinatoire qui satisfait certaines contraintes et
possède certaines propriétés

Exemples
• Maximiser une valeur (profit)
• Minimiser un coût => Voir cours de mathématique

65
1.6.6. Problèmes géométriques
= algorithmes qui traitent avec des objets tels que des points, des lignes et des polygones.

Exemples :
• Problème de la paire la plus proche : étant donné n points dans un espace,
trouver les 2 points les plus proches parmi les n points.
• Problème de la coque convexe : trouver le polygone convexe le plus petit qui inclut
tous les points d’un ensemble donné de points.

Problème de la paire la plus proche : exemple

Spécifications du problème
• Input: Une liste P de n (n ≥ 2) points P1 = (x1,y1),…, Pn = (xn,yn)
• Output: les indices index1 et index2 de la paire de point la plus proche (distance
Euclidienne)

1.6.7. Problèmes numériques


Problèmes qui impliquent des objets mathématiques de différentes natures

Exemples :
• Résoudre des équations et systèmes d’équations
• Calculer des intégrales
• Évaluer des fonctions mathématiques

• …

è voir cours de mathématique

1.7. Exemples
Calcul d’une somme

Ecrire un algorithme qui respecte les spécifications suivantes :

• Input : un nombre n de type « entier » > 0.


66
• Output : La somme des entiers positifs pairs strictement inférieurs à ce nombre.
• Exemple : Si l’utilisateur fournit la valeur 9 à l’algorithme, celui-ci devra fournir
8+6+4+2 = 20 comme résultat.

Calcul d’une factorielle

Ecrire un algorithme qui respecte les spécifications suivantes :

• Input: une variable n de type « entier » > 0.


• Output: la factorielle de n, si elle existe.
• Définition : « La factorielle d’un entier positif n (notée n!) est le produit des nombres
entiers strictement positifs inférieurs ou égaux à n.
• Exemple : la factorielle de 3, notée 3!, est égale à 3*2*1 = 6

2. Langage de programmation
2.1. Définition
Ø Principe
Les programmes :
• sont généralement écrits sur base d’algorithmes
• et suivent donc généralement un processus contenant 3 étapes:
1) Les données d’entrée (input) sont reçues
2) Certaines opérations sont effectuées sur ces données
3) Le résultat (output) est produit

Ø Définition
- Un langage de programmation est composé :
• d’instructions exécutées par l’ordinateur ;
• d’une syntaxe : règles qui précisent comment les mots et symboles peuvent être
rassemblés pour former des instructions valides.

Ø Traduction
- Le langage est traduit (par un compilateur ou un interpréteur) en une suite d’instructions
codées en langage machine.
ð programmer = fournir à l’ordinateur des instructions qu’il devra exécuter.
- Quelles que soient les apparences, l’ordinateur ne parle pas le même langage que l’utilisateur.
ð Nécessité d’un puissant système de traduction

2.2 Les premiers langages


Exemples : FORTRAN (encore utilisé actuellement) et assembleur

Pour éviter de devoir tout programmer avec des 0 et des 1 (seul langage « compris » par l’ordinateur),
les chercheurs ont développé des langages dits de plus haut niveau.

Le programmeur doit écrire le programme en FORTRAN :

67
- Il doit « retranscrire » ce programme FORTRAN sur des cartes perforées.
- Les cartes sont lues par la machine et les résultats sont imprimés.

Ø Compilateur :
- Traduit l’intégralité d’un code source en un code exécutable
- Le résultat est conservé sous la forme d’un fichier
- Ce fichier peut être utilisé sans ne plus faire aucune référence au code source
- Le compilateur prend deux fichiers de départ et les traduit pour qu’ils puissent être excécuter
par la machine.

Ø Interpréteur
- Traduit le code source au fur et à mesure de l’exécution du programme
- Utilise le code source au moment de l’exécution
- Moins efficace : le temps de traduction s’ajoute au temps d’exécution
- L’interprétateur excécute lignes par lignes.

Ø Exemple :

Outils de développement (rappel Partie II)


• Edition
• Compilation
• Exécution

Exemples :
• BlueJ, Eclipse (Java)
• Microsoft Visual Studio (Visual Basic, C#, J#)
• etc.

68
2.3. Types d’erreurs (IMPORTANT)
- Erreurs de syntaxe : compile-time errors, détectées par le compilateur
- Exemple : « aime J’informatique l’»

- Erreurs à l’exécution : run-time errors


- Exemple : division par 0

- Erreurs logiques : logical errors


- Exemple : formule incorrecte (utiliser (x + y – z)/3 pour calculer la moyenne des 3 nombres x,
y et z.

2.3.1. Niveaux des langages


- Langage de bas niveau: langage proche du langage machine (pour rappel, la machine ne «
comprend » que les « 1 » et des « 0 »).
- Langage de haut niveau: langage plus proche du langage humain (souvent en « pseudo-anglais
»).
- Langages intermédiaires (évolution des langages)

2.3.2. Utilisation des langages


Les langages sont souvent développés pour certaines applications.
• Langages «Web »: PHP, JavaScript, etc.
• Langages « statistiques »: R, SAS, etc.
• Langages « très spécialisés »: ABEL, CUDA, etc.
• Langages « pédagogiques »: LOGO, etc.
• …
Remarque : plus on se rapproche d’un langage humain, plus c’est un langage de haut niveau.

69
Chapitre 5 : Réseaux

Réseau social = ensemble de liens entretenus par des personnes avec leurs amis, leurs relations
d’affaire…

Réseau informatique = ensemble d’ordinateurs


o reliés entre eux,
o échangeant des informations,
o et partageant des ressources en temps réel.

- Aspect physique : manière dont sont représentés les 1 et 0 (en-dessous)


- Aspect logique : comment on voit ces 1 et 0 ( ce qui les recouvre)

1. Les réseaux informatiques


1.1. Aspects physiques
Ø Supports analogiques :
- Câbles : signaux électriques (courtes distances)
- Atmosphère : ondes radio (wifi)
- Fibres optiques : ondes lumineuses (longues distances)

signal analogique (dans la nature) signal numérique (dans l’ordinateur)

= possède une intensité qui varie de façon = emploie un nombre défini de niveaux et varie de
progressive (= continue) dans le temps, sans l’un à l’autre de façon abrupte en maintenant
variation brusque ni discontinuité. chaque niveau constant pendant une certaine
période de temps.

MODEM = sait transformer de l’analogique en numérique et inversement.

MOdulateur-DEModulateur
= périphérique servant à communiquer avec des utilisateurs distants, permet de :
• se connecter à Internet
• échanger des fichiers, des e-mails, de téléphoner,…transmissibles sur un support
analogique et réciproquement

70
Ø Organisation physique
= façon dont les machines sont connectées :

bus Moins cher car moins de câbles mais si


plante à il faut tout remplacer.

anneau Plus cher mais plus robuste : si défaut,


on remplace une pièce , pas tout le
mécanisme.

étoile Au milieu : switch = gestionnaire de


reseaux, nous connecte avec le reste du
monde.

ð Réseaux clients-serveur

è Ces organisations peuvent être combinées.

1.2. Organisation logique


= montre comment les informations circulent sur le réseau.

Deux modes de fonctionnement principaux existent :


Les réseaux « client/serveur Les réseaux « d’égal à égal » (peer to peer)
un ordinateur central fournit des services réseau il n’y a pas d’ordinateur central et chaque
aux différents utilisateurs. ordinateur a un rôle similaire.

1.2.1. Modèle client/serveur

71
Ø Serveur
= machine qui rend des services et qui possède des propriétés particulières dont assurer la meilleure
qualité de service possible.

ð Pas possible pour un PC portable car problème de stockage et de connexion, pas assez étendue
( bande passante à grande capacité de réception d’information) + doit être accessible 24h/24
car on a différents fuseaux horaires.

Exemples : serveur mails, serveur de bases de données, …


Ø Sécurisation du serveur :
physique logicielle
• Groupe électrogène (prend le relai en cas de • Mises à jour de sécurité
panne de courant) • Réparation en cas de panne
• Salle climatisée : les ordinateurs qui • Certificats : liste noire avec des ordinateurs
chauffent vont moins bien. avec qui ne pas communiquer car
antécédents d’attaques informatiques.
• Dispositifs anti-incendie
• Pare-feu (= contrôle le flux d’info entrant et
sortant sur un PC) Sur un réseau, on peut
mettre un pare feu sur une porte de sortie
d’un réseau à toutes les infos vont y passer
è Contrôle Totale

1.2.2. Modèle d’égal à égal (P2P)


Pas de serveur dédié, tous les nœuds ont une relation d’égalité entre eux.

Avantages Inconvénients
• Coût • Administration
• Simplicité et rapidité d’installation • Sécurité ( chacun est maître de sa machine,
si virus, on ne sait pas à l’avance )
• Aucun maillon fiable ( risque de virus
partout)

72
1.3 Différents réseaux
Ø Étendue géographique

permettent de : Technologie Exemple


relier des équipements USB Réseau d’un
informatiques à utilisation Bluetooth bureau
Personnal Area
personnelle. Infrarouge
Network (PAN)
réseaux
personnels
relier des équipements câbles RJ45 Réseau d’un
informatiques, partager certaines ou du Wi-Fi bâtiment
Local Area
ressources (les imprimantes, par
Network (LAN)
exemple) sur des distances limitées
(de quelques mètres à quelques
centaines de mètres)
réseaux locaux

Metropolitan relier des réseaux locaux sur des fibres optiques Réseau d’un
Area Network distances relativement limitées campus
(MAN)
réseaux
métropolitains
interconnecter (i.e., d’assurer Réseau Internet :
l’échange d’informations) ARPANET
Wide Area
plusieurs réseaux “courte distance” (1969) sous
Network (WAN)
à travers de grandes distances l’impulsion du
géographiques sur des distances qui Pentagone passe
se situent au niveau d’un pays, d’un de 4 nœuds
réseaux longue (machines) en
distance continent, voire de la planète
entière. 1969 à 37 en
1972...

73
2. Le réseau Internet
= réseau longue distance

WAN = ensemble d’ordinateurs reliés entre eux, échangeant des informations, et partageant des
ressources en temps réel.
WAN = qui interconnecte plusieurs réseaux locaux à travers de grandes distances géographiques.
Sa taille se situe au niveau d’un pays voire d’un continent.

2.1. Les règles de communication sur Internet ( IMPORTANT)


Ø Protocole de communication
- Protocole = ensemble de règles qui permettent d’assurer une communication entre 2 entités.
- Communication = transmission des informations : dialogue entre 2 interlocuteurs : les interlocuteurs
doivent parler un langage commun et respecter des règles d’émission et de réception des données.
ð Et pour internet ?

(Internet est diifférent du web = application qui utilise le réseau internet)

Ø Suite/modèle TCP/IP
= ensemble de protocoles utilisés pour assurer le transfert de données sur Internet, décrit les
fonctionnalités nécessaires à la communication.

Couche Applicative

Transmission Control Protocol ( + grande car + utilisée) UDP

Internet Protocol ( 2ème étape : on affecte une adresse sur chaque machine)

Couche Physique = point de départ, nature du média pour les communications


(cables, fibre optique, radio, wifi)

Chaque coupe dépend de celle qui est au-dessus.

CP = via quoi le message va être transmis : l’air qui permet de faire passer le son qui sort de mes cordes vocales

IP = à qui s’adresse le message ; quand je crie à une foule, la reception du message est plus délicate que si je
sais que je parle à un enfant et que mon langage est adapté.

TCP = comment je vais faire passer le message

CA = le message en question.

74
Rôles :

1) Fournir un transport fiable des données : comment ?


- convertir les messgaes en suites de paquets à la source : chaque paquet contiendra de
l’information, une adresse et un numéro.
- rassembler (mettre en paquets dans le bon ordre) en messages à la destination.
TCP
2) Handshaking : établit les paramètres d'une communication entre deux entités avant que la
communication commence (ils se mettent d’accord).
3) Indépendance des paquets : une congestion ou une interruption de service ne doit pas retarder
la transmission.
4) Détecter et corriger les erreurs :
- Perte de paquets (accusés de réception)
- Corruption de paquets (accusés de réception)
- Duplication de paquets (vérification des numéros)
- Congestion du réseau

1) Caractéristiques :
- Similaire à TCP
- Handshaking
- Non-fiable :
o Ne garantit pas la bonne livraison des paquets à destination
o Ne garantit pas l’ordre d’arrivée des paquets à destination
UDP
o Des paquets peuvent être reçus en plusieurs exemplaires
- Moins lourd : + rapide pour transférer une info
2) Utilité :
- Cas où la perte de paquets est moins importante que l’attente de sa retransmission : VoIP
(Voice on IP)
- Nécessité de transmettre rapidement de petites quantités de données depuis un serveur vers
de nombreux clients
- DNS : gère les noms de domaines et passe par UDP

75
• Adressage :
- Chaque ordinateur d’un réseau TCP/IP possède une adresse IP unique.
- Actuellement, chaque adresse est constituée d’une suite de 4 groupes de 8 bits.
- Version IPv4 : chacun de ces groupes est généralement écrit sous forme décimale:
xxx.xxx.xxx.xxx (xxx de 0 à 255).
- Epuisement des adresses disponibles dès 2011 pour certaines régions du monde : transistion de
IPv4 à IPv6 (fin prévue en 2025).
- Version IPv6 = écriture héxadécimale : sur 16 octets (3.4*10e38 = plus de 600 millions de
milliards d’adresses par mm2 de surface terrestre) ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff

Classes d’adresses (IMPORTANT)

L’adresse IP d’un matériel informatique contient à la fois un identifiant du réseau et un identifiant


IP
du matériel connecté au réseau.

On distingue deux parties dans l’adresse IP :

- partie de gauche = identifiant du réseau (net-ID)


- partie de droite = identifiant du matériel (host-ID)

Remarque à Sur 8 bits on peut stocker 28 données, soit 0 à 255.


Il existe 3 classes d’adresses pour les réseaux standards:

76
• Taille du réseau
Plus le nombre de bits réservés au réseau est petit, plus celui-ci peut contenir d’ordinateurs.

Exemples:
• Un réseau noté 108 peut contenir des ordinateurs dont l’adresse IP peut aller de 108.0.0.1 à
108.255.255.254 (256*256*256-2 = 16.777.214 possibilités).
• Un réseau noté 130.104 ne pourra contenir que des ordinateurs dont l’adresse IP sera comprise
entre 130.104.0.1 et 130.104.255.254 (256*256-2 = 65.534 possibilités).
• Un réseau noté 101.106.53 ne pourra contenir que des ordinateurs dont l’adresse IP sera
comprise entre 101.106.53.1 et 101.106.53.254 (256-2 = 254 possibilités). NB: Certaines
adresses IP sont réservées pour des besoins particuliers

• On est passé de l’adresse statique à dynamique.

• Routage
Les données transmises sur le réseau sont découpées en paquets

L’adresse IP du destinataire sera inscrite sur chaque paquet

Réseau organisé de manière hiérarchique en sous-réseaux (connectés entre eux par des routeurs)

ð Routages : direct ou indirect


• Routage direct
Les 2 machines voulant communiquer appartiennent au même réseau

- Quelqu’un de l’UCL Mons souhaite se connecter sur un site Web hébergé par l’UCL Mons.
- Numéros de réseaux identiques

è Le routeur expédie les paquets directement vers la machine réceptrice

• Routage indirect
Les 2 machines voulant communiquer n’appartiennent pas au même réseau

- Quelqu’un de l’UCL Mons souhaite se connecter sur un site Web hébergé par Google

è Le routeur le détecte et fait parvenir les paquets à tous les routeurs auxquels il est connecté

Les paquets passent de routeur en routeur jusqu’au moment où le paquet arrive au routeur de la
machine réceptrice

77
2.2. Différents services = Différents protocoles
Courrier électronique

Circuit orange à lors d’un envoi d’info à respect des règles – ligne de commande
- Principe ( tj un dialogue)à le client est
obligé d’attendre la réponse du seveur avant de continuer.

Circuit bleu à Réception à une fois les mails envoyés, le serveur les efface quand ils sont copiés en
local.

Couche Applicative : SMTP / POP ou IMAP

TCP UDP
IP

Couche physique

2.4.9
STMP POP ou IMAP

But : transférer des courriers ð permet de récupérer les courriers électroniques 2.4.1
électroniques (e-mail) d’un situés sur un serveur de messagerie électronique.
ordinateur vers un autre ordinateur
à travers le réseau Internet . Procédure :
1. Connexion au serveur
2. Identification et authentification
3. Utilisation de commandes

78
Simple Mail Transfert Protocol Post Office Protocol Internet Mail Access
Protocol

L’expéditeur : - Efface les messages sur le - Conserve les messages


• s’identifie, serveur une fois ceux-ci sur le serveur
copiés en local - Fournit une vue de ce qui
• précise le destinataire, et
se trouve sur le serveur
• transfère le courrier - Connexion nécessaire
- Obligation d’être
électronique. uniquement pour connecté à Internet
télécharger les messages - Typiquement utilisé en
Webmail

Transmission fiable Utile quand : Utile quand :


• L’expéditeur doit conserver • la connexion est • la connexion est peu
une copie du message tant que onéreuse ; onéreuse ;
le destinataire n’a pas • la connexion n’est pas • la connexion est
sauvegardé le message dans permanente ; permanente ;
une mémoire non-volatile. • accession aux • accession aux messages
messages depuis un seul depuis plusieurs
ð Permet à l’expéditeur de se
ordinateur. endroits.
renseigner sur l’existence
d’une boîte mail sur
l’ordinateur distant.

79
Le transfert de fichiers
= échange de fichiers numériques entre 2 ordinateurs d’un réseau

Exemple d’utilisation : alimenter un site web hébergé sur un ordinateur du réseau

Couche Applicative : FTP

TCP UDP
IP

Couche physique

Ø File Transfer Protocole

1) Caractéristiques
- S’inscrit dans un modèle client-serveur
- Permet :
• d’échanger des fichiers
• de supprimer ou de modifier des fichiers sur un ordinateur du réseau de manière
efficace.

2) Principe
Procédure :
1. Connexion au serveur
2. Identification et authentification
3. Utilisation de commandes

Pour chaque commande:


- Le client envoie une commande
- Le serveur
o reçoit la commande
o (effectue une action)
o renvoie une réponse.

80
Le world wide web

Ø Définitions
- Site web = ensemble de pages web, hypereliées entre elles , mises en ligne à une adresse web
- Les hyperliens permettent de consulter toutes les pages du site sans le quitter (i.e., sans devoir
consulter une page web hors du site).
- L’adresse web du site correspond en fait à l’adresse d’une page web prévue pour être la
première consultée : la page d’accueil.

Ø Evolution (vision utilisateur)

Web 1.0

Sites statiques Sites dynamiques

- Site Web = proposer l’accès à des documents - Le contenu des documents est reconstruit à
stockés sur un serveur chaque demande de consultation
- Changement de contenu = accéder physiquement - Le contenu varie en fonction d’informations
au serveur disponibles lors de la consultation (heure, nom de
- Consultation d’une page web = le serveur renvoie l’utilisateur, données fournies par l’utilisateur, etc.)
le contenu du fichier stocké - Toute modification se fait directement dans la base
- Contenu figé de données
- Toute modification se fait directement dans le - Les envois de données se font à l’aide de
fichier source formulaires

Base de données = collection de données reliées.

- « Données » = faits enregistrables et ayant une


signification commune (nom, téléphone, adresses,…)
- « Collection » = peut-être de taille variable.
- « Reliées » = il existe des liens entre les données.

Formulaires : permettent de transmettre des informations :

Saisir du texte

Sélectionner des options

Valider

Exemples : UCL, ULB, … Exemples : Amazon, Zalando, AliExpress,..

81
Web 2.0

Sites participatifs

- Les internautes ayant peu de connaissances techniques peuvent s’approprier les nouvelles
fonctionnalités du Web (grâce aus CMS)
- L’internaute est « acteur »
• Il crée du contenu (blogs, wikis, etc.)
• Il modifie la structure du Web
• Il crée son propre réseau
ð Facilité d’interaction

Exemple : Wikipedia

Content Management System = séparation entre contenu et présentation

1) Principe :
- Contenu stocké dans une base de données
- Présentation définie dans un gabarit
o Mise en page (feuilles de style)
o Informations extraites de la base de données
- Le rédacteur modifie le contenu dans la page Webà la base de données.

2) Avantages :
- Structure et présentation peuvent être gérées dans des documents différents : pas besoin de
se tracasser pour la présentation
- Choix du style : en fonction del’utilisation qui en est faite, des préférences du visiteur, … )

3) Exemples :
- Joomla! (http://www.joomla.fr/)

http: //www.joomla.fr/index.php?option=com_content&view=category&layout=blog&id=21&Itemid=46

http: //www. joomlaplates. com/ ; http://www.joomla.fr/screenshots

- Drupal (https://drupal.org)
- WordPress (https://fr.wordpress.com/)
- Mambo (http://mambo-foundation.org/)
- Wikipédia

82
Ø Evolution (vision technique) (IMPORTANT)
Web 1.0 et Web 2.0

• HyperText Markup Language : langage qui permet de faire des pages Web
o Evolution: 2.0, 3.2, 4.0, XHTML, 5 : mis à jour régulièrement
o XML : langagede programmation
• Feuilles de style en cascade (Cascading Style Sheets)
• Langages de programmation (ex: Javascript)
• Systèmes de Gestion de Contenu / Content Management Systems
HTML
= langage de balises
- Conu pour représenter les pages web :
o Mettre en forme du contenu des pages web
o Inclure des ressources multimédias (images, formulaires, …)
- Exemple :

1) Règles et définitions :
Page HTML = fichier texte

Balise HTML = élément de texte entouré des symboles < et >


• Exemple: <b> = gras

Les balises HTML fonctionnent habituellement par paire :


• Balise <ouvrante> ou </fermante>
• Le texte situé entre les 2 balises est formaté suivant la signification des balises
• Exemple: <b>Voici un texte en gras </b>

Les balises HTML peuvent être imbriquées pour cumuler leurs effets
• Attention, le chevauchement des balises est déconseillé
• Exemple: <b>Voici un texte en gras, <i> avec une partie en italique </i> </ b>

83
2) Principales balises HTML :
a. Structure du document

b. Formatage
- <h1> … </h1> : niveau de titre
- <p> … </p> : nouveau paragraphe
- <b> … </b> : bold/gras
- <i> … </i> : itallique
- <font size = 7> … </font> : taille de la police dans ce qui suit
- <center> … </center> : centrer le texte
- …

c. Hyperliens

<a href="…"> … </a> pour créer un lien

Exemple :
<a href="http://www.uclouvain.be/prog-2013gesm1ba"> Programme du Bachelier en Sciences
de Gestion </a>

d. Listes
- <ol> … </ol> : liste ordonnée
- <ul> … </ul> : liste non-ordonnée
- <li> … </li> : éléments d’une liste (list items)

Exemple :
Ce cours est centré sur la maîtrise des concepts de base de l’informatique <ol>
<li> Langage binaire et logique informatique; </li>
<li> Matériel et logiciel; </li>
<li> Réseaux; </li>
<li> <font size=6> Algorithmique et langages de programmation. </li> </ol>

84
e. Inclusion d’objets

<img src=…/> : rajouter des objets à côté des listes

Exemple : <img =DR_lavenirdotnet.jpg />

f. Scripts

<script> … </script>

Exemple :
En-tête:
<script type="text/javascript"> function hello(){ alert("Salut les sportifs") } </script>

Corps:
<button onclick="hello()"> Je veux vous dire bonjour </button> Boutons interactif qui fait
apparaître un texte

g. Style du document
1) Principe :

• HTML pour structurer le contenu


• CSS pour formater ce contenu structuré

2) Avantages :

• Séparer la « forme » (style) et le « fond » (contenu)


• Feuilles de style CSS réutilisables
• Beaucoup plus d’options et plus précis

3) Notions de cascade

85
CMS (= Séparation du contenu et de la présentation)

a. Notion de cascade (IMPORTANT)

Déclaration des styles dans une feuille de style externe : <link … >
Déclaration des styles dans une feuille de style interne (en-tête de page) : <style> … </style>

Déclaration des styles au sein des balises HTML : style dans une balise
Priorité en cascade à on va appliquer le style le plus proche qu’on veut formater.

Où je peux appliquer un style ?

à qqpart dans le fichier

à En en-tête ( applicable dans tout le fichier)

à sur CSS ( applicable sur toutes les pages) à je le réfère sur les pages que je choisis au lieu de
réécrire sur chaque page le style que je veux adopter.

b. Principe

= séparation entre contenu et présentation


• Contenu stocké dans une base de données
• Présentation définie dans un gabarit

- Mise en page (feuilles de style)


- Informations extraites de la base de données

Le rédacteur modifie le contenu dans la base de données, et non la page Web

c. Avantages

Structure et présentation peuvent être gérées dans des documents différents

Pas besoin de se tracasser pour la présentation dans un premier temps

Choix du style (en fonction de l’utilisation qui en est faite, des préférences du visiteur, etc.)

d. Rôles

Site web dynamique


• Géré de manière collective
• Par un ensemble d’individus

Chaque individu est responsable du contenu de certaines parties précises du site web

Les individus peuvent ajouter, enlever ou modifier le contenu en fonction des droits d’accès dont ils
disposent
86
Ø Le protocole HTTP

Couche Applicative : HTTP / HTTPS

TCP UDP
IP

Couche physique

HyperText Transfer Protocol = protocole de transfert hypertexte

Protocole de communication client-serveur

Protocole défini par une série de règles qui spécifient les modalités de communication entre les
serveurs et navigateurs web (clients).

Exemples de clients
• Internet Explorer
• Mozilla Firefox
• Google Chrome
• ETC.
1) Requête HTTP = ensemble de lignes envoyé au serveur par le navigateur
- Ligne de requête (= étapes quand on cherche une page)
o Méthode (Commande) = ce que je veux faire
o URL = savoir quelle page web
o Version du protocole utilisé par le client = quelle langue

- Lignes d’en-tête de la requête (= facultatives – informations supplémentaires sur le client)


o Navigateur
o Système d’exploitation
- Corps de la requête (facultatif)
o Permet l’envoi de données (lorsqu’on remplit un formulaire)
- Exemple :

GET www.uclouvain.be/mons HTTP/1.1


User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en- GB; rv:1.9.2.9) Gecko/20100824
Firefox/3.6.9
Accept: text/html

87
2) Réponse HTTP
= informations fournies

HTTP/1.1 200 OK
Date: Mon, 25 Jan 2016 23:59:59 GMT
Server: Apache/2.2.16
Content-Type: text/html
Content-Length: 59
Expires: Tue, 26 Jan 2016 00:59:59 GMT
Last-modified: Mon, 21 Dec 2015 12:23:51 GMT

<TITLE>Exemple</TITLE>
<P>Ceci est une page d'exemple.</P>

3) Codes de réponse
1xx Information
2xx Succès
...
404 – File not found

4) HTTPS
Hypertext Transfer Protocol Secure

Version sécurisée du protocole HTTP (utilisation d’un logiciel de cryptage)

Permet au visiteur de vérifier l’identité du site auquel il accède

Garantit la confidentialité et l’intégrité des données envoyées par l’utilisateur et reçues du serveur

Applications
• Transactions financières en ligne
• Consultation de données privées (courrier électronique,…)

88
Ø La gestion des domaines
Domaine = ensemble d’ordinateurs connectés à Internet et possédant une caractéristique commune

Exemples : .be
ð Ordinateurs hébergeant des activités pour des personnes ou des organisations ayant un certain
lien avec la Belgique

1) Domaines de premier niveau


L’ICANN fixe les codes (ccTLD et TLD) qui seront disponibles L’ICANN décide des organisations

chargées de les administrer ccTLD country code Top Level Domain: code indiquant le pays où est

situé la machine

Plusieurs centaines

Administrées par des organisations nationales (.be .fr .uk) ou internationales (.eu)

Top Level Domaine

= code composé de 3 lettres qui identifie le type d’activités du site

EXTENSION SIGNIFICATION ENREGISTREMENT OUVERT


.aero Aéronautique
.biz Buisness A tous (sauf aux particuliers
.com Commercial A tous
.edu Education Aux écoles supérieurs et universités
.gov Gouvernement Aux organismes gouvernementaux des Etats-Unis
.info Information A tous
.name Nom de famille Aux personnes physiques et morales
.mil Militaire Aux organismes militaires
.org Organisaion A tous
.tel Télécom Aux organismes de télécommunication
...

89
Uniform Ressource Locator

1) Définition

Moyen uniforme et universel pour référencer (et localiser) une information accessible sur Internet

3 conditions pour accéder à un objet quelconque sur un réseau


1. Pouvoir accéder à la machine (connaître son adresse IP ou son nom de domaine) et avoir un
droit d’accès
2. Savoir quel protocole va devoir être utilisé
3. Connaître le nom particulier de l’objet au sein du nom de domaine

2) Structure

Les adresses logiques respectent une certaine structure hiérarchique

Uniform Resource Name

Identifie une ressource par son nom dans un espace de noms

« Pour parler d’une ressource »

« Sans connaître son emplacement »

Exemple: International Standard Book Number (ISBN)


• Permet de faire référence à un livre
• Ne dit ni où, ni comment obtenir une copie

90
DNS

1) Définition

Associer à chaque machine (donc à chaque adresse IP) un nom appelé nom de domaine

Correspondance entre adresse physique (IP) et adresse logique (nom de domaine)

Analogie: Bottin téléphonique


ð « on connaît le nom, on cherche le numéro »

2) Principe

Utilisation d’une hiérarchie de serveurs DNS

Les serveurs racines (13) sont administrés et coordonnés par l’ICANN (Internet Corporation for
Assigned Names and Numbers)

Tables de correspondance entre les adresses IP et les noms maintenus à jour

Synchronisation des tables des différents serveurs

3) Exemple de connexion

Connexion à la machine dont le nom est www.uclouvain.be/mons

1. Le client demande au serveur DNS de lui fournir l’adresse IP de la machine dont le nom est
www.uclouvain.be/mons
2. Le serveur DNS lui envoie l’adresse 10.103.0.60
3. Le client peut ensuite se connecter à la machine

L’adresse d’au moins 1 serveur DNS doit être spécifiée lors de la configuration de son ordinateur.

91
La recherche sur le Web

Indexation
Recherche de nouvelles pages Représentation des documents
Web

Objectif = découvrir un Document = ensemble de mots-clés


maximum de pages Web Objectif = permettre une comparaison avec des requêtes de
inconnues du moteur de l’utilisateur
recherche Phases
Moyen = robots d’indexation : • Extraction de mots-clés discriminants :
= programme informatique Utilisation des balises HTML
Fonctionnement : <title>
• Choix d’un corpus initial META description
• Navigation à l’aide des …
hyperliens • Prétraitement des mots-clés extraits

Processus continu : Analyse lexicale : le but est de déterminer quelle chaîne de caractères
• Découverte de nouvelles forme un mot valide susceptible d’indexer un document. Le point de départ
pages est le mot (qui est une suite de caractères délimitée par des espaces). Mais en
• Mise à jour de pages pratique cela est plus compliqué avec les nombres, les tirets, les dignes de
existantes : ponctuation et les casses (Paris, La Panne,….). L’application des règles est

L’indexation d’un simple et le temps de pré-calcul est directement proportionnel au nombre de


document est relancée règles. Avec l’analyse lexicale, le temps de recherche est sensiblement plus
automatiquement en court et la qualité de recherche sensiblement meilleure. Les moteurs de
fonction de sa popularité recherche n’effectuent pas toutes ces opérations, chacun a sa propre politique
et de sa fréquence de d’analyse lexicale.
changement
Elimination des mots vides : la plupart des mots apparaissant souvent ne
Exploration complète impossible
sont pas des caractéristiques du contenu des documents. Les mots vides sont
regroupés dans une liste, éliminés du document (20 à 30% de gain) (et, ou, le,
etc.). Il y a des cas particuliers (to be or not to be).

Désuffixation des mots restants : plusieurs variantes du même mot


peuvent être contenues dans un document (pluriels, déclinaisons). Ces
variantes ne doivent pas être traitées comme des mots différents donc il faut

92
remplacer toutes les variantes d’un même mot par son unique racine (ni
préfixe, ni suffixe). Exemple : connect (connection, connections, connected,
connecting, disconnecting). Il faut une diminution du nombre de mots pour
représenter le document.

Construction de structures pour catégoriser les mots : une liste de


synonymes est associée à chaque mot.

• Détermination du poids de chaque mot-clé

Poids dépendant de la fréquence : le poids est un nombre


d’occurrences du mot-clé dans le document

Poids booléen : le mot-clé est présent / n’est pas présent dans le


document

Poids plus complexes :


• Poids faible pour un mot apparaissant dans presque tous
les documents
• Poids faible pour un mot n’apparaissant que dans un seul
document
• Poids fort pour un mot apparaissant très souvent dans un
sous-ensemble de documents

93
Réponse aux requêtes des utilisateurs

Recherche des documents


Input = index ou requête d’un utilisateur

Output = ensemble de documents les plus « proches » de la requête

ð Calcul de similarité entre les documents et la requête.

Principe = utilisation de différents algorithmes :

• opérations arithmétiques : fixation d’un seuil


• modèle basé sur la logique de 1er ordre : requêtes exprimées sous la forme d’expressions
booléennes
• modèle plus complexe : + un document contient de mots-clés utilisés dans la requête, + il
est considéré comme similaire à la requête ; + le poids d’un mot-clé utilisé dans la requête
est grand, + les documents contenant ce mot- clé seront considérés comme pertinents

Exemple de poids (basés sur la fréquence) corpus de 10 documents issus de 2 catégories :

- Une catégorie de 5 documents (d0-d4) traitant du groupe de rock « Deep Purple »

- Une catégorie de 5 documents (d5-d9) traitant du groupe de rock « The Beatles »

94
Exemples de requêtes :

- Requête Q1 : contient les 4 mots-clés « Deep Purple hard rock » utilisée par un utilisateur qui
recherche des documents sur « Deep Purple »

- Requête Q2 : contient les 4 mots-clés « Beatles Lennon McCartney rock » utilisée par un
utilisateur qui recherche des documents sur les « Beatles »

ð Les opérations arithmétiques sont simples, rapides et il y a la fixation d’un seuil (somme,
produit, etc.)

Le modèle basé sur la logique de 1er ordre est un modèle simple et intuitif. Les requêtes sont exprimées
sous la forme d’expressions booléennes (« et », « ou », « négation », etc.). Le poids d’un mot-clé est 1
ou 0 (présent ou absent). Pour Google, les expressions booléennes sont exprimées de la sorte : « », «
ou », « - ».

Exemple 1

Q3 = [beatles et (help ou ¬please)]

Renvoie tous les documents contenant le mot-clé beatles et soit le mot-clé help, soit pas le mot-clé
please

Renvoie les documents d6, d8, d9

Il y a une difficulté de trouver la bonne équation logique permettant d’obtenir tous les documents
pertinents et aucun document non-pertinent et aussi une difficulté pour maîtriser des équations

complexes. Il y a donc une utilisation principale du « et », cela devient donc un seuil trivial.
Exemple 2
Utilisation, pour Q1 et Q2, de l’opérateur « ET » avec les différents mots-clés

• Q1 = [Deep et Purple et hard et rock]

• Q2 = [Beatles et Lennon et McCartney et rock]

Utilisation, pour Q1 et Q2, de l’opérateur « OU » avec les différents mots-clés

• Q1 = [Deep ou Purple ou hard ou rock]

• Q2 = [Beatles ou Lennon ou McCartney ou rock] Résultats

95
Le modèle plus complexe est un calcul de similarité. Plus un document contient de mots-clés utilisés
dans la requête, plus il est considéré comme similaire à la requête. Plus le poids d’un mot-clé utilisé
dans la requête est grand, plus les documents contenant ce mot-clé seront considérés comme pertinents.

Classement des documents


Input = ensemble de documents les + « proches » de la requête

ð nombre de documents élevé

Oupout = classement de ces documents

ð documents classés du + au - pertinents

Principe : utilisation de différents algorithmes : opérations arithmétiques, modèle basé sur la


logique de 1er ordre, exploitation des hyperliens.

Exploitation des hyperliens

Utilisation de la structure du web : hyperliens riches en informations

Objectif = améliorer le classement proposé

Principe général : juges implicites sur des documents :

- Lorsqu’un créateur d’un page p inclut un hyperlien vers une page q, il confère une certaine
autorité à q. Lorsqu’une page est souvent considéré comme une autorité (c’est-à-dire possédant
beaucoup de liens entrants), elle devrait être intéressante (classée dans les premières).

Calculs d’indices : aides à classer les hyperlienes (pertinence)

Types de liens :

- Intrinsèques : pointant vers des documents appartenant au même domaine DNS (navigation
interne à un site)
- Transversaux : pointant vers des documents appartenant à d’autres domaines DNS.
ð Ne tenir compte que des liens (entrants et sortants) transversaux.

96
Page Rank Hits

- un seul indice Utilisation de 2 indices


- basé uniquement sur les liens entrants (liens Basé sur 2 concepts
sortants)
- Autorité: page ayant beaucoup de liens
- indices mis à jour régulièrement (Google : tous les entrants
mois)
Hubs: page ayant beaucoup de liens
sortants
Calcul des indices nécessaire à chaque
requête
Méthode plus lente
Ferrari Renault Ford

Authorities

People interested Car constructors


in car constructors

Hubs
Prost Schumacher

Utilisation de PageRank et HITS :

1. Emission d’une requête


2. Identification des documents correspondant à la recherche (en fonction des mots-clés
utilisés dans la requête)
3. Calcul des indices (uniquement pour HITS)
4. Classement des documents en fonction des indices
5. Proposition des documents à l’internaute sur base du classement

Inconvénients de l’exploitation des hyperliens :

- Multiplication du nombre de liens en sponsorisant d’autres sites web


- Existence d’arrangements « Si tu mets un lien vers mon site sur le tien, je ferais la même
chose. »
- Dépendance du classement à la popularité du site (et pas à la qualité objective du site)
- …
ð nécessité de corrections « manuelles »

97
3. Les dangers d’Internet

Les dangers financiers

- Danger sur les achats / ventes d’un bien ou d’un service.

- Divulgations de données personnelles :


• Volontaire : Phishing ou formulaires
• Involontaire : logiciels malveillants

- Escroqueries
- Logiciels malveillants :
• Virus
• Logiciel espion

• Cheval de Troie

Les dangers pour les personnes

- Atteintes à la personne et à la vie privée :


• Téléchargements illégaux
• Images choquantes
• Divulgations de données personnelles
• Pressions psychologiques
• Mauvaises rencontres (prédateurs),
• Cyberaddiction

ð Dangers particulièrement grands pour les enfants

La qualité des informations

- Désinformation
• Canulars
• Sites haineux
• Sites personnels véhiculant de fausses informations

• …

98

Vous aimerez peut-être aussi