Architecture de machines Principes généraux Cours 2003-2004
L ’informatique ? Système automatique de traitement de l ’information INFORmation autoMATIQUE Principales utilisations Calcul scientifique haute performance Stockage d ’informations Analyse de données Simplification des tâches quotidiennes Bureautique Gestion d’automatismes Utilisation domestique ...
Les traitements Programme Traitement Données Résultat
L ’architecture de Von Neumann 5 composants pour un ordinateur Unité arithmétique et logique Unité de commande Mémoire centrale Unité d’entrée Unité de sortie Mémoire Données & Programmes UAL Unité de commande
Principaux composants réels Microprocesseur Réalise les traitements : UAL + Unité de contrôle La mémoire centrale Stocke le programme et les données Les périphériques d ’entrée/sortie Clavier, souris, écran Mémoires de stockage Disques Durs, CD-ROM, DVD, Disquette Périphériques divers Carte son, réseau, décodage vidéo, … Le Chipset qui relie tous ces éléments (ou leurs contrôleurs) sur la carte mère Création des BUS : liens partagés entre composants Fonctions variables suivant les modèles
Circulation de l ’information L ’information circule entre les éléments sur des BUS 4 1 Mémoire Données & Programmes UAL 3 5 2 Unité de commande
Les horloges Cadencent les échanges Fréquence d’horloge: Changements possibles d’état par seconde 1 changement = 1 Hertz 1 Milliard de changements = 1 GigaHertz Cadence les échanges d ’information et les traitements Vitesse du microprocesseur : opérations/seconde (en théorie) Vitesse des bus de l ’ordinateur Transferts par seconde Information parfois non binaire (regroupement de 2n bits/Transfert)
Les technologies de codage Adaptation de l’information Création de codes pour les traitements (internes) Création de codes pour les échanges Rich Text Format DXF, EML, … Codage de données Cryptographie (RSA, DES,…) Compression Sans perte (zip, gif,…) Avec perte (mp3, jpeg,mpeg,…) 0 1 0 0 1 1 0 0 0 1 1 1 0 0
Les systèmes d’exploitation Permettent de relier le matériel, les logiciels et l’utilisateur Pilotes permettant de piloter les fonctions du matériel (drivers) Interface graphique permettant la gestion du dialogue Evolution de l’interface texte vers l’interface graphique Exemples de SE: Windows Mac OS Dérivés d’Unix: Linux, FreeBSD, Solaris, HP/UX
Les langages de programmation Code source: Programme écrit dans un langage par le programmeur Non exécutable tel quel par le processeur 2 stratégies de conversion vers un code exécutable Langages compilés Algorithme codé -> Code exécutable AVANT exécution Code placé de manière statique ou dynamique Liaison avec des bibliothèques dynamiques (.so, .dll, … ) Pascal, C, C++ Langages interprétés Algorithme codé transformé LIGNE A LIGNE en langage machine par un interpréteur Visual Basic, Php, Shell Unix Cas particulier : Langage machine Instructions du microprocesseur Langages « Assembleur » dépendant du microprocesseur : Familles de processeurs JAVA Compilé puis interprété (Java Virtual Machine)
Un ordinateur ? Machine programmable Machine à mémoire Utilisation d’algorithmes transcrits dans des langages de programmation Machine à mémoire Permet de stocker/retrouver de l’information Machine intelligente ? Evolution des systèmes vers des modes de raisonnement de plus en plus complexes
Les différents types d’ordinateurs Facilité d’utilisation Postes de travail Stations de travail Serveurs Puissance (Calcul/Stockage)