Académique Documents
Professionnel Documents
Culture Documents
Université My Ismail
SMIA S1
Cours d’informatique I
1
L’informatique
Computer Science
INFORMATIQUE ? en anglais
INFORMATION AUTOMATIQUE
Art d’entraîner automatiquement des actions
Science de l’information
2
Chapitre I
Historique de l ’informatique
De la mécanique à l’électromécanique
3
Historique de l ’informatique
1833 : Babbage imagine une machine analytique contenant les concepts
d’unité de calcul, mémoire, registre et entrée des données par carte perforée
1854 : Boole démontre que tout processus logique est décomposable en une
suite d’opérations logiques (ET, OU, NON) appliquées sur 2 états (0-1, V-F, ...)
1884 : H. Hollerith crée une tabulatrice à cartes perforées pour faire traiter le
recensement américain de 1890, c’est la 1ière machine à traiter l’information
5
Historique de l ’informatique
6
Historique de l ’informatique
1937 : A.M. Turing résout des problèmes mathématiques à l’aide d ’une bande
de papier, de pions et d ’un trombone ! C’est la machine de Turing
1938 : Shannon dans sa thèse fait le parallèle entre circuit électrique et algèbre
booléenne. Il définit le chiffre binaire : bit (BInary digiT)
1938 : K. Zuse crée le Z1, ordinateur binaire programmable mécanique !
1939 : Z2, une partie de la mécanique est remplacée par des relais téléphoniques
7
Historique de l ’informatique
10
Historique de l ’informatique
11
Historique de l ’informatique
13
Historique de l ’informatique
1958 : 1er jeu vidéo (très similaire au jeu pong par Atari en 1972)
14
Historique de l ’informatique
1965 : G. Moore écrit que la densité des circuits intégrés doublera tous les 18
mois (loi de Moore)
• Le nombre de transistors intégrables sur une seule puce double tous les 2 ans
• « quelque chose » double tous les dix-huit mois, cette chose étant « la puissance »,
« la capacité », « la vitesse » et bien d'autres variantes mais très rarement la densité
des transistors sur une puce.
15
Historique de l ’informatique
1965 : G. Moore écrit que la densité des circuits intégrés doublera tous les 18
mois (loi de Moore)
1971 : Intel vend le premier microprocesseur : Intel 4004 (4 bits, 108 kHz, 200$)
1977 : Ken Olson, DEC : « Il n’y a aucune raison pour que tout le monde
veuille un ordinateur à la maison »
19
Historique de l ’informatique
Avril 1981 : Xerox vend le Star 8010. Caractéristiques : Ram 1 Mo, DD 8 Mo,
interface Ethernet, interface graphique, souris 2 boutons, Drag&Drop, copier-
coller, menus contextuels, tableur, traitement de texte WYSIWYG, et messagerie
électronique. Problème : 17 000 $
Il faudra 10 ans à Apple et 15 ans à Microsoft pour faire aussi bien !
20
Historique de l ’informatique
1981 : Bill Gates, Microsoft : « 640Ko devrait être suffisant pour tout le monde. »
21
Historique de l ’informatique
Janvier 1983 : Apple lance le Lisa. Caractéristiques : µP 68000 à 5Mhz, 1 Mo
RAM, 2 Mo ROM, écran graphique 12’’ 720x364, 2 x 5’’25, DD 5 Mo avec
interface graphique et souris. 10 000 $
Janvier 1984 : Apple lance le Macintosh. Caractéristiques : µP 68000 à 8Mhz,
128Ko RAM, 64 Ko ROM, 3’’50, écran N&B 9’’ 512x384 avec interface
graphique et souris. 2 500 $
Loi de Wirth : « Les logiciels deviennent plus lents de manière plus rapide que
le matériel ne devient plus rapide. »
22
Historique de l ’informatique
Actuellement…
23
Aspects d’un Système Informatique
25
Composants d’un ordinateur
Unité Centrale
26
Composants d’un ordinateur
Unité Centrale
La carte mère
La carte mère est l’élément central de l’ordinateur sur lequel sont assemblés et mis en
relation tous les composants matériels. Elle permet à tous ses composants de fonctionner
ensemble efficacement.
27
Composants d’un ordinateur
Unité Centrale
La carte mère
La carte mère est l’élément central de l’ordinateur sur lequel sont assemblés et mis en
relation tous les composants matériels. Elle permet à tous ses composants de fonctionner
ensemble efficacement.
28
Composants d’un ordinateur
Unité Centrale
Les unités de calcul
29
Composants d’un ordinateur
Unité Centrale
Des mémoires différentes pour des usages différents
30
Composants d’un ordinateur
Unité Centrale
Des mémoires différentes pour des usages différents
31
Composants d’un ordinateur
Unité Centrale
Les périphériques
32
Composants d’un ordinateur
Unité Centrale
Les bus
33
Composants d’un ordinateur
Mémoire
Vecteur dont chaque composante est accessible par une
adresse.
Les opérations permises sur la mémoires sont les opérations
de lecture et d'écriture.
L'UC inscrit l'adresse d'une cellule dans un registre d'adresse
(RA) et demande une opération de lecture ou d'écriture. Les
échanges se font par l'intermédiaire d'un registre de mot
(RM).
Lecture: RA adresse; RMmémoire[RA]
Écriture: RMvaleur; RAadresse; mémoire[RA]RM
34
Composants d’un ordinateur
Mémoire centrale …….
……
…..
➢Constituée de cases mémoires …..
……
➢chaque case a une adresse 11101001
36
Augmentation des performances de la
mémoire
Pagination de la mémoire
minimise le nombre de dépendance d’accès au mémoire
augmente la vitesse d’accès
Segmentation de la mémoire: diviser la mémoire en
plusieurs parties
possibilité d’accès en lecture/écriture au même temps
augmente la vitesse d’accès
Mémoire cache: petite portion de mémoire de
grande vitesse
non adressée par le CPU (ex: SRAM)
37
Composants d’un ordinateur
Mémoire cache
Vitesse du proceseur est plus rapide que la mémoire
Utiliser une mémoire cache
Invisible pour le système d’exploitation
Utilisée comme une mémoire virtuelle
Augmente la vitesse d’accès
38
Composants d’un ordinateur
Machine Von Neumann: CPU
1. L’UC extrait une instruction de la
mémoire,
2. analyse l'instruction,
3. recherche dans la mémoire les
données concernées par
l'instruction,
4. déclenche l'opération adéquate
sur l'ALU ou l'E/S,
5. range au besoin le résultat dans la
mémoire.
39
Composants d’un ordinateur
Unité de commande (UC)
Compteur ordinal (PC) = registre contenant l'adresse
mémoire de l'instruction à exécuter.
Registre d'instruction (RI) mémorise l'instruction (une
instruction est composée de plusieurs parties, ou
champs)
40
Composants d’un ordinateur
Composants
Dispositifs de base
Horloge
pour synchroniser l'ensemble des dispositifs logiques d'un ordinateur.
Cadencement des instructions à fréquence constante : l'horloge
divise le temps en battements de même durée appelés cycles.
E.g., une fréquence d'horloge à 500MHz: des cycles élémentaires de 2
nanosecondes.
41
Composants d’un ordinateur
Composants
Dispositifs de base
Registres
Eléments de mémoire rapide internes à la CPU.
▪ Unité d’information: mot (2N bits)
▪ Composants de base: multiplexeurs, décodeurs, additionneurs,
ALUs, registres, registres à décalage, compteurs, etc.
▪ Pas de méthode formelle pour les optimisations et les
simplifications.
▪ L’algèbre booléenne peut être adaptée, mais ne suffit pas
(opérations numériques).
42
Composants d’un ordinateur
Composants
Dispositifs de base
Registres
CPU
▪ Unités d’information: blocs d’instructions, blocs de données.
▪ Composants de base: mémoire cache, datapath, décodeur, bancs de
registres, unité flottante.
Registres
43
Composants d’un ordinateur
Composants
Dispositifs de base
Registres
CPU
Bus
▪ Ensemble de fils électriques sur lesquels transitent les
informations entre les unités.
▪ Largeur du bus = nombre de fils constituant le chemin = nombre
d'impulsions électriques pouvant être envoyés en parallèle (en
même temps).
44
Composants reliés par des bus
trois bus: données, adresses et contrôle
45
Niveau système
Unités d’information: programme, structures de données.
Composants de base: mémoire, CPU, I/O, bus système
MÉMOIRE CPU
IO IO IO
•••••
BUS SYSTÈME
MÉMOIRE CPU
IO IO IO
•••••
BUS SYSTÈME
BUS INSTRUCTIONS
MÉMOIRE MÉMOIRE
CPU IO IO IO
DONNÉES INSTR •••••
BUS DONNÉES
47
Hiérarchie des mémoires
▪Architecture Von Neumann
Mémoire Mémoire Mémoire Mémoire Registres
non-volatile volatile cache cache CPU
(disque dur) (RAM) (niveau 2) (niveau 1) (niveau 0)
▪Architecture Harvard
Mémoire Cache Cache
volatile instructions instructions
Mémoire instructions (niveau 2) (niveau 1)
non-volatile
(disque Mémoire Cache Cache Registres
dur) volatile données données CPU
données (niveau 2) (niveau 1) (niveau 0)
▪Architecture Harvard “réelle”
Cache
instructions
Mémoire Mémoire Mémoire (niveau 1)
non-volatile volatile cache
(disque (RAM) (niveau 2) Cache Registres
dur) données CPU
(niveau 1) (niveau 0)48
48
L’architecture Harvard VS Von Neuman
Les architectures de Harvard et de Von Neuman présente pour seule
caractéristique une séparation entres les mémoires de données et de
programme.
49
Système d’Exploitation?
Définition
En anglais OS (Operating System) C’est une couche logicielle, dont
le rôle est de gérer les périphériques et de fournir aux programmes
utilisateur une interface simplifiée avec le matériel.
Un OS est un intermédiaire entre la machine et l’utilisateur (
www.google.fr)
A quoi ca sert?
Simplifier la vie des utilisateurs et des programmeurs ,
Gérer les ressources de la machine d'une manière efficace
51
Système d’Exploitation?
52
Système d’Exploitation?
53
Système d’Exploitation?
Les Concepts de Base des SEs
Les Processus
Les Interblocages
La Gestion de la Mémoire
Les Entrées/ Sorties
La Sécurité
Le shell
• Processus
‘Programme en cours d’exécution’
Un processus possède:
- son propre espace d’adressage: programme, données…
- Une entrée dans la Table des Processus: sert pour la
reprise après suspension
Exemple: le shell, lire une commande de compilation d’un
programme, création d’un processus enfant qui exécute le
compilateur 54
Système d’Exploitation?
Les Concepts de Base des SEs
Interblocages
L’interaction entre processus peut conduire a un interblocage (ang. deadlock)
Gestion de la Mémoire
La Mémoire centrale contient tous les programmes en cours exécution → Gestion de l’espace
d’adressage des processus (a chaque processus correspond une plage d’adresses).
Entrées/ Sorties
Différents types de périphériques: claviers, video show,ecran, …
Pilotes des Périphériques
Fichiers
Le SE présente les périphériques de stockage de manière abstraite.
Exemple d’appels systèmes sur les fichiers: création, suppression, ouverture, fermeture, lecture,
écriture, recherche
Sécurité
Protection des fichiers et contre les intrus et les virus.
Exemple protection des fichiers sous UNIX: un fichier est protégé par un code binaire de 9 bits, 3
bits/ champ
Champs: propriétaire, groupe, autres
Actions: Read r, Write w, execute x
rwxr-x—x?
Shell
C’est une interface entre l’utilisateur et le SE
55
Système d’Exploitation?
Structure d’un SE
Partie matérielle
▪ Contient les composants matériels de l’ordinateur (circuits intégrés, périphériques)
Programmes systèmes
Contient principalement le SE
• les tâches sont gestion de processus, de la mémoire, de périphériques,
• livré avec un ensemble d’outils nécessaires pour pouvoir exploiter l’ordinateur
Programmes d’applications
composée des applications et des logiciels, entièrement indépendante du SE
56
Système d’Exploitation?
Classification d’ SE
▪ Système Mono-tâche
permet de faire fonctionner qu’un seul programme à la fois.
▪ Système Multi-tâche
• permet de faire fonctionner plusieurs applications simultanément
• ces applications sont découpées en un ensemble de tâches
(processus)
✓ la notion de partage de temps du processeur entre plusieurs
tâches qui semblent êtres exécuter simultanément.
▪ Système Mono-utilisateur
autorise l’utilisation du système par un seul utilisateur à travers une
interface
▪ Système Multi-utilisateur
autorise l’utilisation simultanée de ce système par plusieurs utilisateurs à
travers une interface. Il est conçu pour que plusieurs utilisateurs puissent
profiter des mêmes ressources simultanément.
57
Système de fichiers
Le système de fichier
▪ offre à l’utilisateur une vision homogène et structurée des
données et des ressources : disques, mémoires, périphériques.
▪ Le système gère la création des fichiers, leur destruction, leur
correspondance avec les dispositifs physiques, ainsi qu’un certain
nombre d’autres caractéristiques, telles que la protection .
▪ Il les organise, en général, en une structure arborescente
▪ Il offre à l'utilisateur une vue abstraite sur ses données et permet
de les localiser à partir d'un chemin d'accès.
58
Système de fichiers
Construction du concept de « fichier »
octet 0100 0011
1 octet = 8 bits 4 3
C
1 caractère ASCII
secteur …
fichier
1 fichier = n secteurs
59
Système de fichiers
Différents concepts de « fichier »
Selon le SGF, le fichier est :
Une simple suite d’octets
gestion des secteurs
Une suite d’enregistrements fichier
gestion des enregistrements
Une arborescence de blocs fichier
gestion des blocs
fichier 60
Système de fichiers
Les fichiers sur disque
Regroupement des informations par entités
Informations de l’entité 1
Informations de l’entité 2
Enregistrement structuré
Plusieurs types possibles selon le SGF
Enregistrement = bloc = données
Enregistrement = bloc = zone de données
Zone
Chaque zone est une représentation d’un objet de l’entité
Clé
Donnée identifiant de manière unique chaque entité
62
Système de fichiers
Enregistrement structuré
Comment repérer son emplacement physique ?
Plusieurs moyens
Par la clé
clé clé clé
Par le rang
1 2 3
Par l’adresse
secteur 63