Accueil |

Ordinateur

                                

Un ordinateur est un équipement permettant de traiter des informations selon des procédures. Dès l'origine, les ordinateurs ont été utilisés pour le calcul arithmétique car ils répondaient à  un besoin en la matière. Il ne s'agit toutefois pas de simples calculateurs et un ordinateur a une architecture fondamentalement différente de celle d'une calculette, par exemple. Dans un ordinateur, les données sont banalisées et peuvent être considérées indifféremment comme des nombres, comme des commandes, comme des valeurs logiques ou comme tout autre symbole défini arbitrairement (lettre de l'alphabet, par exemple).

Un ordinateur est avant tout, comme le laisse deviner son nom, une machine à  "ordonner" des données, à  savoir les mettre en ordre, les trier et les classer, selon une logique définie. Le mot lui-même a été proposé par Jacques Perret en 1956 en réponse à  une demande d'IBM France, dont les dirigeants estimaient le mot "calculateur" (computer) bien trop restrictif en regard des possibilités de ces machines.

Le calcul n'est qu'une des applications possibles, dans ce cas les données sont traitées comme des nombres. Parmi celles qui ne relèvent pas du calcul, le traitement de texte est une des fonctionnalités les plus connues du grand public actuellement ; la gestion des bases de données en est une autre.

L'architecture générale d'un ordinateur peut être dissociée en deux catégories :

Sommaire
1 Fonctionnement d'un ordinateur
2 Types d'ordinateurs
3 Liens externes

Fonctionnement d'un ordinateur

Les technologies utilisées ont énormément changé depuis les années 1940. Toutefois, pour la plupart, elles utilisent les concepts définis par John von Neumann.

L'architecture de von Neumann décompose l'ordinateur en 4 parties distinctes :

Mémoire

Au sein du système, la mémoire est une suite de cellules numérotées et contenant chacune une petite quantité d'informations. Cette information peut prendre plusieurs formes, elle peut servir à  indiquer à  l'ordinateur ce qu'il doit faire ou, contenir des données dont l'ordinateur a besoin pour effectuer une action. Une zone peut contenir successivement des informations d'un type et de l'autre.

Cette mémoire a pour caractéristique de pouvoir être réécrite autant de fois que nécessaires. La taille de chacun des blocs de mémoire, ainsi que la technologie utilisée ont énormément varié au fil du temps et selon les ordinateurs. Depuis des relais électromécaniques, des tubes au mercure au sein desquels étaient générées des ondes acoustiques, des transistors individuels, jusqu'à  des circuits intégrés incluant des millions de transistors.

Processeur

Entrées-Sorties

Les dispositifs d'entrée/sortie permettent à  l'ordinateur de communiquer avec l'extérieur. Le nombre de ces dispositifs est très important, du
clavier à  l'écran.

Le point commun entre tous les périphériques d'entrée est qu'ils convertissent l'information qu'ils récupèrent de l'extérieur en données compréhensibles par l'ordinateur. A l'inverse, les périphériques de sorties décodent l'information fournie par l'ordinateur afin de la rendre utilisable par l'utilisateur.

Instructions

Les instructions que l'ordinateur peut comprendre ne sont pas celles du langage humain. Un ordinateur est capable de comprendre un nombre limité d'instructions bien définies. Des instructions typiques comprises par un ordinateur sont "copier le contenu de la cellule 123 et le placer dans la cellule 456", "Ajouter le contenu de la cellule 321 à  celui de la cellule 654 et placer le résultat dans la cellule 777" et "si le contenu de la cellule 999 vaut 0, exécuter l'instruction à  la cellule 345". Mais la plupart des instructions se compopsent de deux zones : une indiquant quoi faire, qu'on nomme le code opération, et une indiquant o๠le faire, qu'on nomme opérande.

Au sein de l'ordinateur, les instructions correspondent à  des codes - le code pour une copie étant par exemple 001. L'ensemble d'instructions qu'un ordinateur supporte correspond au langage machine. En général, les humains n'utilisent pas ce type de langage mais passent par ce que l'on appelle un langage de haut niveau qui est ensuite transformé en langage machine par un programme dédié (un interpréteur ou un compilateur selon le langage).

Certains langages, comme l'assembleur sont dits langages de bas niveau car les instructions qu'ils utilisent sont très proches de celles de l'ordinateur. Les programmes écrits dans ces langages sont ainsi très dépendants de la plateforme pour laquelle ils ont été développés. Le langage C est beaucoup plus facile à  relire que l'assembleur, et permet donc aux programmeurs d'être plus productifs. Pour cette raison, on l'a vu de plus en plus utilisé à  mesure que les coà»ts du matériel diminuaient et que les salaires horaires des programmeurs augmentaient.

Architecture

La miniaturisation permet d'intégrer l'UAL et l'unité de contrà´le au sein d'un même circuit intégré connu sous le nom de microprocesseur. Typiquement, la mémoire est située sur des circuits intégrés proches du processeur, une partie de cette mémoire, la mémoire cache, pouvant être situé sur le même circuit intégré que l'UAL.

L'ensemble doit être complété d'une horloge qui indiquera au processeur à  quelle vitesse fonctionner. Bien sà»r, on souhaite que ce soit le plus vite possible, mais on ne peut pas augmenter indifféremment cette vitesse pour deux raisons :

Un compromis doit donc être trouvé entre Le sous-cadencement semble une solution séduisante, mais on ne peut pas non plus diminuer indéfiniment la vitesse d'un processeur.

La tendance est aujourd'hui (2004) à  regrouper plusieurs UAL dans le même processeur, voire plusieurs processeurs dans la même puce. En effet, la miniaturisation progressive (voir Loi de Moore le permet sans grand changement de coà»t.

Le principal écart fonctionnel aujourd'hui par rapport au modèle de Von Neumann est la présence sur certaines architectures de deux antémémoires différentes : une pour les instructions et une pour les données (alors que le modèle de Von Neumann spécifiait une mémoire commune pour les deux). La raison de cet écart est que la modification par un programme de ses propres instructions est aujourd'hui considéré comme une pratique à  proscrire. Dès lors, si le contenu du cache de données doit être réécrit en mémoire principale quand il est modifié, on sait que celui du cache d'instructions n'aura jamais à  l'être, d'o๠simplification des circuits et gain de performance.

Logiciels

Article détaillé : Logiciel

Les logiciels informatiques correspondent à  de larges listes d'instructions données à  un ordinateur. De nombreux programmes contiennent des millions d'instructions, effectuées pour certaines de manière répétitive. Un PC classique en 2004 peut exécuter dans le cas de certaines boucles très courtes plus d'un milliard d'instructions par seconde.

Depuis le milieu des années 60, des ordinateurs et des systèmes conçus à  cette fin permettaient d'exécuter plusieurs programmes simultanément. Cette possibilité est appelée multità¢che. C'est le cas de tous les ordinateurs et systèmes aujourd'hui.

En réalité, le processeur n'exécute qu'un programme à  la fois, passant de l'un à  l'autre chaque fois que nécessaire. Si la rapidité du processeur est suffisamment grande par rapport au nombre de tà¢ches à  exécuter, l'utilisateur aura l'impression d'une exécution simultanée des programmes. Les priorités associées aux différents programmes sont, en général, gérées par le système d'exploitation.

Système d'exploitation

Article détaillé : Système d'exploitation

Le système d'exploitation est le programme central qui contient les éléments de base nécessaires au bon fonctionnement de l'ordinateur.

Le système d'exploitation alloue les ressources physiques de l'ordinateur (temps processeur, mémoire etc.) aux différents programmes en cours d'exécution. Il fournit aussi des outils aux autres programmes (comme les drivers) afin de leur faciliter l'utilisation des différents périphériques sans avoir à  en connaître les détails physiques.

Types d'ordinateurs

Liens externes