Jump to: navigation, search

Anatomie d'un ordinateur

Concepts fondamentaux

Toutes les machines ressemblant de près ou de loin à un ordinateur, c'est-à-dire permettant d'installer des logiciels et de les faire fonctionner, ceci incluant les smartphones, les serveurs web, les raspberries[1], etc,, utilisent le même type d'architecture.

953px-Personal computer, exploded.svg.png
  1. écran
  2. carte mère
  3. CPU
  4. RAM
  5. GPU et autres composants
  6. alimentation
  7. lecteur_de_disques optiques
  8. disque dur
  9. souris
  10. clavier

Carte mère

Motherboard-diagram-01.jpg

La base est un circuit imprimé appelé carte mère. C'est elle qui va permettre à tous les autres composants de communiquer entre eux. Dans les ordinateurs de type tour[2], les composants sont en général interchageables, au contraire des ordinateurs portables et des smartphones dans lesquels la majorité voir tous les composants y sont soudés dans le but de gagner un maximum de place et de poids.

Chaque zone de la carte mère est dédiée à un type de composant. Un code couleur rends en général relativement aisé l'assemblage des différentes pièces.

La carte mère a par défaut un petit processeur contenant un programme qui est lancé automatiquement à l'allumage. Ce programme est en général appelé BIOS[3], même si il est maintenant couramment remplacé par l'UEFI[4]. Le rôle de ce programme est de vérifier la présence des composants à l'allumage et de lancer l'OS[5].

Alimentation

Ordinateur-bloc d'alimentation.jpg

L'ensemble des composants internes d'un ordinateur fonctionne grâce à du courant continu[6], alors que le courant disponible via le réseau de distribution est de l'aternatif[7]. Le courant domestique est beaucoup trop puissant pour l'électronique, il doit donc être converti pour pouvoir faire fonctionner les composants. Cette tâche est assurée par le bloc d'alimentation, qui fournit différents voltages en courant continu: 3.3 volts, 5 volts et 12 volts.

Ordinateur alimentation voltages.jpg

La puissance de l'alimentation doit être ajustée en fonction des composants. Une carte graphique ou un processeur puissant vont par exemple consommer beaucoup plus de courant que leurs équivalents bas de gamme.

Pour plus d'information, voir wikipedia:Power_supply_unit_(computer).


DellBatteries zps8abae4d8.jpg 800px-Expanded lithium-ion polymer battery from an Apple iPhone 3GS.jpg

Dans le cas d'une machine portable, l'approvisionnement en courant des composants est assuré par une batterie embarquée. Comme le montrent les deux images ci-dessus, les batteries sont soit une accumulation des piles standards, soit constituées de cellules plus larges ressemblant à des sachets d'aluminium. Comme pour les alimentations, les batteries doivent être adaptées à la consommation des composants.

CPU

Le processeur central (Central Processing Unit) est le cœur de la machine. C'est lui qui effectue la majorité des opérations relatives à la gestion des applications, du matériel ou des droits d'accès. C'est à travers lui que l'OS[5] fait fonctionner les programmes, sauve les documents, récupère les flux réseaux ou les entrées utilisateurs (souris et clavier entre autres) ou envoie les images à afficher à l'écran.

Leur taille et forme ainsi que le nombre de dents sur leur semelle varie en fonction des marques et de leur fonctionnalité.

Processeur

750px-AMD Phenom II X4 840 (HDX840WFK42GM) CPU-top oblique PNr°0373.jpg

Connecteurs, vue du dessous.

Processor-298666 960 720.jpg

La partie métallique est une coque protégeant des milliards de transistors microscopiques. Ci-dessous, vue interne de 2 processeurs anciens photographiés au microscope.

AMD 8088 die.JPG Intel Pentium 120 MHz P54CS die.JPG

Cycle

Un processeur est une machine à calculer rapide mais pas très subtile. Le nombre d'opération effectuables nativement par un processeur est relativement réduit, voir la notion de instruction set[8] et les spécifications de la norme x86. Ces opérations simples, des additions, des comparaisons, des sauts dans la mémoire, etc., sont la base du langage des machines et c'est à travers lui que nous manipulons de la vidéos, du son, du texte et tout autre medium numérisé.

Pour compenser son étroitesse d'esprit, il va très vite pour effectuer ces opérations. Pour avoir un ordre d'idée, un processeur cadencé à 3Ghz effectue 3.000.000.000 cycles par secondes[9] et est donc d'effectuer 3 milliards de ces instructions basiques à la seconde. À défaut d'avoir une tête, il faut avoir des jambes me disait ma grand-mère.

Cette vitesse est exprimée en hertz (nombre de cyles par secondes) et se retrouve dans les fiches techniques sous le nom fréquence.

La fréquence des processeurs indique la vitesse à laquelle il est recommandé de le faire fonctionner. Il est toujours possible de ralentir ou d'accélérer cette fréquence en modifiant le courant électrique contrôlant le processeur. Cette technique s'appelle underclocking quand on réduit la vitesse, ou overclocking[10] quand on l'augmente.

cœurs

Les CPU modernes sont de plus en plus souvent multi-cœurs. Par opposition à un processeur mono-cœur, qui ne peut accomplir qu'une seule opération par cycle, un processeur ayant 4 cœurs pourra en accomplir 4 dans le même temps. Un CPU fonctionnant 3Ghz et ayant 4 cœurs pourra donc traiter 12.000.000.000 d'instructions par secondes. Le gain n'est pas exactement de 400% puisqu'une partie des calculs doivent servir à synchroniser le travail fait en parallèle.

Cœurs physiques: il s'agit de parties identifiables physiquement dans le processeur. Dans l'image ci-dessous, on peut voir 5 cœurs dífférents en jaune.

Tegra 3 cpu.jpg

Il s'agit donc ici d'un processeur constitué de 5 processeurs plus petits.

Cœurs logiques: certains processeurs sont conçus pour optimiser le traitement des instructions au sein d'un même cœur. On parle alors de cœurs logiques.

Remarque: Avoir une pléthore de cœurs ne garantit en rien un bond de performance de vos applications. Une application doit intégrer à son fonctionnement le parallélisme pour tirer profit de l'architecture mutli-cœurs et voir ses performances augmenter. Dans le cas contraire, seul l'OS en tirera profit, vous permettant de faire fonctionner plusieurs applications simultanément sans ralentissement. Les moteurs de jeux vidéos mainstream sont à cet égard extrêment bien pensés.

Autres aspects

Le CPU étant capable de traiter n'importe quel type d'information, il peut prendre en charge le rendu graphique quand aucune carte graphique n'est présente sur la carte mère.

D'autres aspects rentrent en compte dans les performances d'un CPU, comme les niveaux de caches, la mémoire interne ou la vitesse des bus. La page wikipédia et ses sous-pages vont permettront de vous familiariser avec ces différents aspects.

Vous pourrez trouver ici un guide d'achat vous expliquant en détails les différents paramètres à prendre en compte lors du choix de votre CPU.

RAM

PS2 RAM Module.jpg

Une barette de RAM. Elles sont reconnaissables par la présence d'une série de petits composants rectangulaires noirs, d'une large bande de connecteurs cuivrés ainsi qu'à l'encoche arrondie.

La Random Access Memory[11], appelée en français la mémoire vive ou encore la mémoire de travail fonctionne en symbiose avec le CPU. Le CPU a une quantité de mémoire interne (à l'intérieur du CPU, oui) beaucoup trop limitée pour couvrir les besoins d'un utilisateur standard. Il est donc obligé de décharger les informations traitées et de charger les nouvelles informations à traiter à partir d'une mémoire externe. La RAM est cette zone tampon dans laquelle le CPU peut venir puiser intensivement. Par rapport à d'autres support de mémoire, la RAM est optimisée pour maximiser la vitesse de lecture et d'écriture et de ce fait permet au processeur de ne pas devoir attendre que les informations dont il a besoin soient lues, ou qu'il doive attendre que la mémoire ait fini d'écrire.

Cette vitesse de lecture et d'écriture de la RAM a un revers assez handicapant si elle était la seule mémoire de la machine: elle ne fonctionne que sous tension. c'est-à-dire qu'une fois le courant coupé, les informations qui y étaient stockées sont irrécupérables.

Les performances de la RAM sont en général décrites avec deux paramètres: sa vitesse de transfert et sa capacité de stockage. Au plus le transfert est rapide, au plus les opérations de calcul intensif seront rapides puisque le CPU ne devra pas attendre les informations et pourra fonctionner à 100% de ses capacités. Au plus il y a de places dans le RAM, au plus on pourra ouvrir de fichiers et de logiciel en même temps et au plus rapide sera le passage de l'un à l'autre.

Il est important de comprendre que tout fichier ou logiciel ouvert dans un OS est chargé dans le RAM, tout comme l'OS et tous ses sous-programmes.Les OS modernes devenant de plus en plus gourmands en CPU pour faire fonctionner des dizaines d'applications et de services en parallèles, ils sont devenu tout aussi gourmands en RAM.

Ce type de mémoire est appelée volatile.

ROM

La Read Only Memory[12], est appelée en français mémoire morte, en opposition à la RAM qui semblerait plus vivante , ou encore support de masse, bien que dans ce cas on parle du matériel et non de la fonction, Elle a le gigantesque avantage de pouvoir conserver une information sans courant. Comme peu d'utilisateurs appréciaient de devoir réécrire leurs programmes et tous leurs fichiers sur leur ordinateur à chaque allumage, l'industrie a juger utile de développer des composants permettant un stockage pèrenne des informations.

Les support de stockages impliquent de devoir déformer de la matière durablement pour y inscrire les informations. Ils sont donc beaucoup moins rapides que la RAM. Bien que leur rapidité soit un des arguments de vente, l'information la plus importante concernant ce type de support reste leur capacité, aujourd'hui couramment exprimée en GigaBits[13].

Il existe de nombreux types de support de stockage ROM, dont certains sont aujourd'hui quasiment oubliés, vu leur faible capacité ou l'abandon de la technologie.

En opposition à la RAM, tous ces types de support sont non-volatiles.

Disque dur

Le disque dur interne s'est progressivement imposé comme standard en micro-informatique. Il est présent dans la grande majorité des ordinateurs portables, de type tour ou des téléphones portables.

Il existe aujourd'hui deux grandes familles: les disques rotatifs et les disques flash.

HDD

Internal-hard-drive.jpg 627px-Laptop-hard-drive-exposed.jpg HDD-opened.jpg

Un Hard Disk Drive[14] est composés de disques métalliques superposés entre lesquels se déplacent mécaniquement des têtes de lectures, à la manière d'un tourne-disques. La surface de chacun des disques est composées de millions de petites zones autonomes pouvant être allumées ou éteintes magnétiquement. La technologie étant bien maîtrisée et largement répandue, ces disques sont peu coûteux en comparaison de leur capacité de stockage. Quand ils ne sont pas utilisés comme disque principal, on les retrouve souvent dans les machines pour le stockage de fichiers volumineux (films, jeux, etc.).

Tout comme les bandes ou les disquettes, les HDD sont des supports magnétiques. Ils craignent donc les champs magnétiques, qui perturbent les informations qui y sont stockées. Le micro-onde, les tubes cathodiques, les enceintes audio ou les aimants sont donc à éviter si vous ne voulez pas retrouver de la purée binaire sur vos disques.

SSD

SSD-samsung.jpg SSD-internal view.jpg

Basé sur la même technologie que les clés USB, le Solid State Drive[15] est une technologie datant des 90 mais qui ne se répand dans le grand public qu'au début du XIXème siècle. Leur fonctionnement est complètement différent d'un HDD. En effet, un SSD n'a plus aucune partie mécanique et ne nécessite donc pas de moteur pour écrire ou lire des informations. L'ensemble de la mémoire est disponible instantanément, ce qui en fait des disques durs idéaux pour le fonctionnement de l OS, qui va pouvoir s'appuyer sur cette rapidité de lecture pour lancer rapidement les programmes. Un autre grand avantage pour les machines portables est qu'ils craignent beaucoup moins les chocs que les disques mécaniques.

Ces belles qualités du SSD ne doivent pas faire oublier qu'ils ont un nombre limité d'écriture. Ils sont aussi moins durables que les HDD quand ils ne sont pas sous tension. Voir à cet égard ce tableau comparatif.

Leur coût reste encore aujourd'hui relativement élevé.

Bande magnétique

800px-DSS1 Tape FrontView.jpg

Un des tout premiers supports de stockage utilisés en informatique est la bande magnétique, la même technologie que les K7 audio. La lecture et l'écriture nécessitant l'enroulement de la bande magnétique, ces opérations sont beaucoup plus lentes que sur les supports plus récents. Elles sont toujours utilisées par l'industrie, notamment dans les datacenters de Google, pour des raisons de fiabilité et de durée de vie[16].

Disquette

Diskette ubt.jpeg

Quasiment oubliées aujourd'hui, les floppy disks[17] ont été massivement utilisées durant la fin du XXème siècle, dû à leur faible coût et à leur rapidité. Elles disparaissent avec l'apparition de l'USB et aussi en raison de leur capacité de stockage insuffisante.

Clés USB

800px-SanDisk Cruzer Micro.png 501px-Usbkey internals.jpg

Les Universal Serial Bus[18] flash drive pour être complet, ou USB flash drive en anglais et clé USB sont sans doute le supports de stockage le plus connu, en grande partie parce qu'il permet d'identifier physiquement l'objet contenant les données à transférer d'une machine à l'autre. Elles apparaissent sous cette forme en 2000. Bien qu'elles soient limitées en vitesse par les capacités de l'USB, elle peuvent néanmoins se substituer à un disque dur interne et contenir un OS complet. On parle dans ce cas de clé bootable, servant la plupart du temps à installer l'OS sur le disque dur interne de la machine.

Micro sd card adapter white background elecom memory-1164339.jpg

On retrouve les retrouve sous de nombreuses autre forme dans les appareils photographiques, les caméras vidéo, les enregistreurs, smartphones, etc.

On désigne cette famille de support flash drive[19], ceci incluant les SSD!

Notes

Megadrive no shadow.jpg

Les consoles de jeu vidéo à cartouches, telle la Super NES[20], la Mégadrive[21] ou la NeoGeo[22] sont de bons exemples des limitations d'un ordinateur sans mémoire interne. Le circuit imprimé ne contenait qu'un logiciel basique (le BIOS) qui allumait les composants et affichait un logo de la marque sur l'écran cathodique lorsqu'aucune cartouche n'était insérée. Aucune fonctionnalité de modification de la ROM n'ayant été prévue par les constructeurs, ses consoles n'avait aucune utilité en l'absence d'une cartouche de jeu. La cartouche contenait le logiciel et des espaces mémoires pour le stockage des scores. Cette architecture a l'avantage d'être beaucoup plus robustes sur la durée puisque aucune erreur logicielle ne peut survenir.

GPU

Nvidia video card-1387035.jpg

Le GPU (Graphics Processing Unit) est un composant spécialisé dans la manipulation des images. Apparu dans les années 70[23], il est aujourd'hui un composant fondamental dans les machines dédiées au jeu vidéo ou au travail graphique. Son rôle est de soulager le CPU de tout le travail concernant la manipulation des images.

Le GPU est le centre de la carte graphique. Une carte graphique est constituée d'un circuit imprimé (similaire à une carte mère) sur lequel est branché le GPU, de la RAM, une série d'autres composants et un grand connecteur qui permet de le connecter à la carte mère. Son alimentation vient directement du bloc d'alimentation et ne passe pas par la carte mère. Il s'agit donc d'un composant relativement autonome, une sorte de sous-ordinateur, qui explique en partie son prix. Dans les ordinateurs portables et les smartphones, elle est intégrée à la carte mère.

CPU and GPU.png

L'architecture d'un GPU est différente de celle d'un CPU.

Comme expliqué ci-dessus, un CPU n'a que quelques cœurs, 2 à 4 physiques et dans certains cas 8 logiques. Chacun de ces cœurs est très puissant et peu donc traiter des instructions complexes, mais son architecture limite le nombre d'informations qu'il peu traiter par cycle. Les GPU ont une approche tout-à-fait différente: ils sont spécialisés en traitement parallèle[24]. Chaque cœur d'un GPU est beaucoup moins puissant que ceux des CPU, mais ils compensent cette faiblesse par le nombre. À titre d'exemple, le processeur d'une carte GeForce GTX 1070 compte 1920 cœurs de cacluls[25], contre 4 ou 8 pour le CPU!

Images et GPU

L'architecture des GPU a été conçue pour permettre le traitement rapide des images. Par rapport aux autres données traitées par un ordinateur, comme le son ou le texte, les images (qu'elles soient fixes ou animées) ont une structure particulière. Les images sont des grilles 2D, comportant des millions de pixels, de petits blocs de 3 couleurs. Un écran ayant une résolution de 1920 x 1080 pixels compte de fait 2.073.600 pixels. Pour que l'image soit stable, cette grille doit être mise à jour 60 fois par secondes au minimum, ce qui donne donc 124.416.000 de pixels à traiter à la seconde.

Quand un CPU doit traiter des images sans soutient d'une carte graphique, il met les pixels en file indienne et les modifient un à un. Bien qu'il soit très rapide, le temps de traitement de cette longue liste prend un temps non négligeable. Il ne faut pas oublier que, en même temps qu'il traite cette liste, il doit aussi s'occuper du reste des tâches, comme envoyer le son, gérer le réseau et les applications qui sont en train de fonctionner.

Grâce à ces centaines voire milliers de cœurs, un GPU divise cette longue file en centaines de petites file et prends donc beaucoup moins de temps à accomplir le même travail.

Choisir une carte graphique

En plus de la vitesse (fréquence) et du nombre de cœurs du GPU, une autre caractéristique importante à considérer est la quantité de RAM embarquée sur la carte. Cette mémoire permet de minimiser les aller-retour entre la carte et la RAM générale, celle présente sur la carte mère.

Lorsque qu'une application de traitement vidéo ou un jeu vidéo démarre, le CPU envoie les images et les modèles 3D à la carte qui les stocke dans sa mémoire propre. Si il y a trop d'informations à stocker, le CPU les stocke dans la RAM généraliste et les enverra régulièrement à la carte graphique. Ce transfert de données à travers la machine prend du temps et est limité par la taille du tuyau reliant le CPU au GPU. Ce genre de tuyau s'appelle un bus[26] et se mesure en nombre de bit par secondes. Pour la carte GeForce GTX 1070, la vitesse de ce bus est de 256GB/sec.

Autres composants

En plus de ces briques fondamentales, on retrouve habituellement d'autres composants dans un ordinateurs, qui permettent d'insérer ou de retirer des informations de la machine.

Carte réseau

Network-card-568043 960 720.jpg

En général intégrée à la carte mère, le rôle de la carte réseau est de se connecter à un modem/router et de la mettre en relation avec d'autres machines connectées dans le même réseau. L'utilisation la plus répandue de cette carte est la consultation de site web. Deux types de connections sont possible grâce à cette carte.

Rj45-connector.jpeg

Le filaire, qui est la manière la plus sécurisée et la plus fiable de se connecter à un réseau est d'utiliser une connection physique passant par un câble réseau. La norme actuelle est le RJ 45. Les infioramtions étant transmises à travers du cuivre, il y a très peu de perte dans les transferts.

WiFi Area.jpg

Le wifi. Apparu en 1999[27], ce sytème de connxeion sans fil (wireless local area networking) est devenu un standard et est intégré dans une majorité d'ordinateur portables. Plus pratique que la connexion filaire, le Wi-Fi a comme désavantage la perte beaucoup plus fréquente d'informations en cours de transfert et la faible portée du signal. Il est aussi beaucoup plus facile à des hackers d'écouter les échanges entre votre machine et le router.

Carte USB

800px-USB-PCI-Card.jpg

Tout comme la carte réseau, les cartes mères contiennent en général une carte USB intégrée. Comme son nom l'indique, une carte USB permet de brancher des périphériques qui sont compatibles avec cette norme, tels clés USB, disques durs externes, claviers, souris, imprimantes, scanners, etc.

Les types de connecteurs peuvent varier en fonction de la version USB du périphérique. Voir La liste des connecteurs en fonction de la version sur cette page.

Lecteur de disques optiques

Sony-Internal-PC-DVD-Drive-Opened.jpg

La présence d'un lecteur de disques CD[28], DVD[29] ou Blu-ray[30] permet à un ordinateur d'extraire les informations d'un support optique. Ils ont tendance à disparaitre des machines portables ou profit d'un tout via le net. Ils ont en général une fonctionnalité d'écriture.

Références

  1. Raspberry Pi, https://www.raspberrypi.org/
  2. Voir la définition deComputer case sur wikipédia.
  3. BIOS, Basic Input/Output System, voir wikipedia:BIOS
  4. UEFI, Unified Extensible Firmware Interface, voir wikipedia:Unified_Extensible_Firmware_Interface
  5. 5.0 5.1 OS, Operating system, voir wikipedia: Operating system
  6. Voir la définition du courant continu sur wikipedia
  7. Voir la définition du courant altérnatif sur wikipedia
  8. Instruction Set, https://www.computerhope.com/jargon/i/instset.htm
  9. https://software.intel.com/en-us/forums/intel-isa-extensions/topic/289949
  10. Voir la définition de l'overclocking sur wikipedia
  11. Définition du terme RAM sur wikipedia.
  12. Définition du terme ROM sur wikipedia
  13. Voir Les_unités_en_informatique pour la définition des unités en informatique
  14. La traduction française la plus fidèle de HDD serait un lecteur de type disque dur - wikipedia:Hard_disk_drive
  15. wikipedia:Solid-state drive
  16. Ten Reasons Why Tape Is Still The Best Way To Backup Data
  17. Floppy disk, also called a floppy, diskette - wikipedia
  18. Définition de USB sur wikipedia
  19. wikipedia:Flash_drive
  20. La Super NES, ou Super Famicom au USA et au Japon, est une console de jeu vidéo datant de 1990 - wikipedia
  21. La Sega Megadrive, ou Sega Genesis au USA, est une console de jeu vidéo datant de 1988 - wikipedia
  22. La NeoGeot AES est une console haut de gamme conçue par SNK - wikipedia
  23. Définition et historique des GPU sur wikipedia.
  24. Voir la définition du Parallel computing sur wikipedia
  25. Voir la fiche technique de la GeForce GTX 1070 sur [nvidia.com]
  26. Voir la définition d'un bus informatique sur wikipedia.
  27. Voir la définition du wifi sur wikipedia
  28. Définition du CD-ROM sur wikipedia
  29. Définition du DVD sur wikipedia
  30. Définition du Blu-ray sur wikipedia