Entrées-sorties - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Gestion des entrées/sorties

On distingue principalement trois façons de gérer les entrées/sorties.

Entrées/sorties programmées

Pendant l'exécution de son programme principal, le microprocesseur va périodiquement lire l'état des périphériques d'entrée et modifie, si nécessaire, l'état des ports de sortie. C'est la technique la plus simple. Exemple : système de régulation de chauffage d'un bâtiment.

Interruptions

Cette technique est utilisée lorsque le processeur doit réagir rapidement à un changement d'état d'un port d'entrée. Le périphérique prévient le processeur par une ligne d'interruption prévue à cet effet. Le processeur interrompt la tâche en cours, saute dans le sous-programme destiné à gérer la demande spécifique qui lui est adressée ; à la fin du sous-programme, le processeur reprend l'exécution du programme principal là où il l'avait laissée.

Accès direct à la mémoire

Cette technique, connue souvent par ses initiales DMA (Direct Memory Access), est utilisée lorsque l'on doit procéder à un transfert rapide d'un grand nombre de données entre, par exemple, un lecteur de CD et un disque dur. Plutôt que de transférer les octets d'abord vers un registre du processeur, puis seulement vers le disque dur, les octets sont transférés directement d'un périphérique à l'autre sans passer par les registres du processeur. Le transfert des données est organisé par un circuit spécial appelé contrôleur d'interruptions, qui prend la place du processeur pendant le transfert et gère les bus d'adresses et de contrôle.

Périphériques d'entrées/sorties

Un grand nombre de périphériques sont à la fois des périphériques d'entrée et de sortie. Le modem, par exemple, permet d'envoyer ou de recevoir des informations en provenance du monde extérieur : courrier électronique, navigation Internet, mais aussi envoi et réception de fax, téléphonie par ordinateur (VoIP, Voice over IP).

Les cartes réseau permettent de relier entre eux plusieurs ordinateurs afin de réaliser un réseau local d'ordinateurs, ce qui permet de partager des fichiers ou des ressources telles une imprimante réseau, un numériseur…

Et puis, il y a toute la gamme des mémoires de masse : disque dur, lecteur de disquette, carte mémoire.

Performances

Les performances d'un ordinateur mesurent le temps qui lui est nécessaire pour effectuer un traitement donné. Trois éléments influencent ces performances :

  • la puissance du processeur ;
  • la mémoire disponible ;
  • le temps consacré aux opérations d'entrées/sorties.

Le temps nécessaire pour un traitement informatique quel qu'il soit est toujours déterminé par un de ces trois éléments mais celui des entrées/sorties est généralement prépondérant. En effet, le temps consacré aux opérations I/O se compte en millisecondes alors que celui consacré aux instructions effectuées par le processeur se compte en nanosecondes.

La taille de la mémoire est surtout importante dans la mesure où elle permet de réduire le nombre d'opérations d'entrées/sorties, soit parce qu'une part plus importante des programmes applicatifs peut résider en mémoire, réduisant ainsi les phénomènes de pagination, soit parce que une partie de cette mémoire peut-être utilisée comme tampon (mémoire cache) pour le stockage des flux de données des opérations I/O.


En programmation comme au niveau système (par exemple sur les mainframes), deux éléments matériels (entre autres) influencent les performances des entrées/sorties, c'est-à-dire leur vitesse :

  • la charge du processeur (i.e. son taux d'occupation), qui fournit les données sortantes ou traite les données entrantes ;
  • la charge du dispositif d'entrée/sortie, qui émet ou reçoit les données (on parle généralement des lectures/écritures notamment pour les accès disques).

Si les ressources CPU ou I/O sont insuffisantes lors de l'exécution d'un ou plusieurs traitements simultanés, on parle de saturation.

Page générée en 0.094 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise