Vous êtes sur la page 1sur 63

AU 2022-2023

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

Traitement automatique de l’information


ORDINATEUR
Machine automatique

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

1840 : Ada Lovelace, collaboratrice de Babbage définit le principe


d’itérations successive dans l’exécution d’une opération et nomme ce
processus algorithme en l’honneur du mathématicien arabe Al Khowarizmi
4
Historique de l ’informatique

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

1896 : H. Hollerith crée la firme Tabulating Machine Corporation


1904 : J. Fleming invente le premier tube à vide (la diode)
1907 : L.D. Forest invente la triode
1919 : Eccles et Jordan inventent le basculeur (flip-flop ou circuit bi-stable)
1924 : Tabulating Machine Corporation est renommée
International Business Machine IBM

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

1941 : J. Atanasoff et C. Berry créent le 1er calculateur binaire basé sur


l’algèbre de Boole. L’ABC est considéré comme le premier ordinateur mais
son programme n’est pas stocké en mémoire

1941 : Z3, premier calculateur avec programme enregistré. Mémoire : 64


nombres de 22 bits, puissance : 4 +/s ou 1 x en 4s
8
1943 : H. Aiken crée le Mark I calculateur électromécanique (3000 relais, 800km
de câbles) dont le fonctionnement est proche de la machine imaginée par
Babbage

1943 : Thomas Watson, IBM : « Je pense qu’il y a un marché mondial pour au


moins 5 ordinateurs. »
1945 : un insecte coincé dans la Mark I bloque son fonctionnement. La
mathématicienne G.M. Hopper décide que tout ce qui arrêtera le bon
fonctionnement d ’un programme s’appellera BUG.
1945 : J. Von Neuman travaillant sur le projet ENIAC définit ce que devrait être
un ordinateur à programme enregistré : architecture de Von Neuman
9
Historique de l ’informatique
1946 : P. Eckert et J. Mauchly créent l’ENIAC. Particularités : 18 000 tubes, 30
tonnes, 72 m2, 140 KW, 100 kHz,

10
Historique de l ’informatique

1947 : invention du transistor dans les laboratoires de Bell Telephone


1948 : Newman et Williams créent le Manchester Mark I. Particularité : mémoire à
tubes cathodiques
1949 : revue Popular Mechanics : « Alors que le calculateur ENIAC est équipé de
18000 tubes à vide et pèse 30 tonnes, les futurs ordinateurs de l’an 2000 ne
devraient avoir que 1000 tubes à vide et ne peser que 1,5 tonnes. »

1950 : M.V. Wilkes invente l ’assembleur (avant on programmait en binaire)


1951 : G.M. Hopper invente le premier compilateur A0 générant un
programme binaire à partir d’un code source
1953 : invention de la mémoire à tores de ferrite

11
Historique de l ’informatique

1956 : TRADIC le premier ordinateur à transistors par Bell amorce la seconde


génération d ’ordinateurs
1956 : 1er disque dur, le RAMAC 305 par IBM (50 disques de 61 cm - 5 Mo)

1957 : J. Backus d ’IBM crée le langage FORTRAN


12
Historique de l ’informatique

1958 : 1er ordinateur commercial entièrement transistorisé par S. Cray

13
Historique de l ’informatique

1958 : 1er circuit intégré par Texas Instruments

1958 : 1er modem par Bell

1958 : 1er jeu vidéo (très similaire au jeu pong par Atari en 1972)

1960 : langage Cobol

1964 : langage Basic

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)

1966 : première console de jeux vidéo, la Magnavox Odyssey I

1967 : plans de l’ARPANET (ancêtre de l ’internet)


1967 : premier lecteur de disquettes par IBM
16
Historique de l ’informatique

1968 : D.C. Engelbart fait la démonstration d’un environnement graphique avec


fenêtres utilisant une souris.

1968 : HP présente sa première calculatrice de bureau programmable, la HP 9100


(20 kg, 5000 $)

1968 : langage Pascal


1969 : naissance d ’Unix grâce à K. Thompson et B. Kernighan
1970 : K. Thompson crée le langage B pour Unix
17
Historique de l ’informatique

1971 : Intel vend le premier microprocesseur : Intel 4004 (4 bits, 108 kHz, 200$)

1971 : Apparition de l’ordinateur Kenback-1 pour 750$ en kit !

1971-1973 : transformation du langage B (interprété) en langage C (compilé)


18
Historique de l ’informatique
1972 : R. Tomlinson crée un logiciel de courrier électronique pour ARPANET
1972 : premier langage orienté objet, SmallTalk
1972 : B. Gates et P. Allen fondent la compagnie Traf-O-Data
1973 : apparition du mot microcomputer (micro-ordinateur)
1975 : Traf-O-Data devient Micro-Soft

1976 : S. Jobs et S. Wozniak créent l ’Apple Computer et fondent Apple

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

Août 1981 : IBM lance le 5150 Personal Computer. Caractéristiques : RAM


640Ko, lecteur de disquettes 5’’25, système PC-DOS 1.0 pour 3 000 $ (version
CGA 16 couleurs pour 6000 $). Windows 1.0 sortira en novembre 1985.
Il n’apporte rien de nouveau et pourtant ...

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

Le Système informatique a deux aspects :

Matériel ( hardware ) → Ordinateur


➢Outil qui permet le traitement automatique de l’information
➢Dispositif électronique capable d’exécuter une série d’ordres

Evolution : des gros ordinateurs aux ordinateurs portables

Logiciel ( software ) → Algorithme, Programme,...


Evolution : des programmes écrit en langage machine
aux logiciels très évolués
24
Composants d’un ordinateur
Architecture Von Neumann
 John Von Neumann (1946)
 une mémoire contenant un programme (instructions) et
des données,
 une unité arithmétique et logique (UAL ou ALU): Unité
Centrale,
 une unité permettant l'échange d'information avec les
périphériques : l'unité d'entrée/sortie (E/S ou I/O),
 une unité de commande (UC).
 Fonctions
 le stockage de données,
 le traitement des données,
 L’échange (transport) des données
 et le contrôle

25
Composants d’un ordinateur
Unité Centrale

• L’unité centrale est composée principalement de :


• Unité de traitement
• Mémoire centrale
• Interfaces : connectent les mémoires secondaires et
les périphériques à l’unité centrale.
• Bus : relient ces différents organes entre eux.

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; RMmémoire[RA]
 Écriture: RMvaleur; RAadresse; mémoire[RA]RM

 mot = l'unité d'information accessible en une seule opération


de lecture (sa taille varie en fonction de la machine).
 Octet (byte) = 8 bits
 Bit = 0/1
1 0 0 1 1 0 0 1

34
Composants d’un ordinateur
Mémoire centrale …….

➢Son rôle est de conserver les informations 10100001

……
…..
➢Constituée de cases mémoires …..
……
➢chaque case a une adresse 11101001

➢chaque case est constituée d ’un ensemble de bits


(un bit peut avoir la valeur 0 ou 1)
➢Unités de mesure de la capacité

L’octet = 23 bits = 8 bits. (noté 1 o)


Le Kilo-octet = 210 octets =1024 o (noté 1 Ko)
Le Méga-octet = 220 octets =(1024)2 o (noté 1 Mo)
Le Giga-octet = 230 octets =(1024)3 o (noté 1 Go)
Le Téra-octet = 240 octets =(1024)4 o (noté 1 To)…
35
Composants d’un ordinateur
Mémoire centrale: Caractéristiques
 Cycle de base: temps nécessaire pour accéder a une
information ~700 nanosecondes ou moins.
 Capacité: quantité d’information qu’elle peut stocker ~2-10
GO
 s’exprime en mots: plus petite information à laquelle on peut accéder
en une seule fois.
 terminologie:
 Technologie circuit intégré

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.

Cache Unité de CPU Unité de Cache


Instructions Contrôle Traitement Données
Décodeur
ALU
Unité
PC 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

 I/Os “standard”: cartes SCSI et/ou IDE, clavier, souri, haut-


parleurs, etc.
 La vitesse du bus système devient le facteur prédominant
pour la performance d’un ordinateur.
46
Von Neumann vs. Harvard

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.

En effet l’architecture de Von Neuman possède un unique bus permettant


d’accéder indifféremment aux données ou au programme stockés en
mémoire.
❖ Boulot d’étranglement pour l’accès à la mémoire.
❖ Pas de sécurisation matérielle du programme

L’architecture Harvard sépare les mémoires données et programme en


deux zones séparées et communiquant avec le CPU via deux bus
propres.
❖ moins de risque de corruption du programme.
❖ Meilleure utilisation du CPU.

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

Syst. Bancaire … Navigateur web Application

Compilateurs Editeurs Shell Programme


SE Système
Langage machine
Micro-architecture Matériels
Périphériques Physiques
50
Système d’Exploitation?

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 …

1 secteur = 512 octets 512 caractères ASCII

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

Informations de l’entité 3 Disque


61
Système de fichiers

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é Nom_article Référence_article

 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

Vous aimerez peut-être aussi