Entrées-sorties
Dans un dispositif à base d'un processeur, d'un microprocesseur, d'un microcontrôleur ou d'un automate, on nomme Entrées-Sorties les échanges d'informations entre le processeur et les périphériques qui lui sont associés.
Recherche sur Google Images :
Source image : hellopro.fr Cette image est un résultat de recherche de Google Image. Elle est peut-être réduite par rapport à l'originale et/ou protégée par des droits d'auteur. |
Page(s) en rapport avec ce sujet :
- Le processeur informe le système d'accès direct à la mémoire de ..... et de son constituant spécifique le superviseur d'entrées-sorties, est de prendre... (source : deptinfo.cnam)
- Demande d'opération d'entrées-sorties est effectuée par un... processeur central. Système DMA (Direct Memory Access). • Composant matériel comprend... (source : www-etud.iro.umontreal)
- La réactivité aux événements d'entrées/sorties est un facteur de performance essentiel pour.... Si le système d'E/S n'est pas scruté assez souvent, ... (source : www-id.imag)
Dans un dispositif à base d'un processeur, d'un microprocesseur, d'un microcontrôleur ou d'un automate, on nomme Entrées-Sorties les échanges d'informations entre le processeur et les périphériques qui lui sont associés. De la sorte, le dispositif peut réagir à des modifications de son environnement, ou alors le contrôler. Elles sont quelquefois désignées par l'acronyme I/O, issu de l'anglais Input/Output.
Dans un système d'exploitation,
- Les entrées sont les données envoyées par un périphérique (disque, réseau, clavier…) à destination de l'unité centrale ;
- Les sorties sont les données émises par l'unité centrale à destination d'un périphérique (disque, réseau, écran... ).
Exemple simplifié :
- taper sur les touches du clavier envoie une série de codes vers le processeur ; ces codes sont reconnus comme des données d'entrée ;
- le processeur affiche les résultats du traitement des données sur un écran ; ce sont des données de sortie. Généralement, l'écran est géré par un programme de gestion d'affichage.
Structure d'un dispositif à microprocesseur
Un dispositif à microprocesseur comporte obligatoirement les éléments suivants :
- un processeur, qui est le cerveau du dispositif ; il est capable d'effectuer des opérations arithmétiques et logiques et d'organiser des transferts de données entre les différents éléments du dispositif ;
- une zone de mémoire morte (ROM, EPROM, EPROM Flash) qui stocke le programme ;
- une zone de mémoire vive (RAM) qui stocke les données pendant l'exécution du programme ; le contenu de cette mémoire est perdu quand on coupe l'alimentation du dispositif ;
- des périphériques ; leur nombre et genre dépendent de l'application.
Les différents éléments du dispositif sont reliés par 3 bus :
- le bus de données permet, comme son nom l'indique, la circulation des données, mais également des instructions, entre les 4 grands blocs ;
- le bus d'adresse permet au processeur de désigner à chaque instant la case mémoire ou le périphérique auquel il veut faire appel ;
- le bus de contrôle est aussi géré par le processeur et indique, par exemple, s'il veut faire une écriture ou une lecture dans une case mémoire, ou une entrée/sortie d'ou vers un périphérique ; on trouve aussi, dans le bus de contrôle, une ou plusieurs lignes qui permettent aux circuits périphériques d'effectuer des demandes au processeur ; ces lignes sont nommées lignes d'interruptions matérielles (IRQ).
L'évolution de la technologie fait que des dispositifs qui, auparavant, nécessitaient plusieurs boîtiers, peuvent idéalement être intégrés dans un seul boîtier qui regroupe les différentes fonctions ; voir par exemple la famille de processeurs ADuC d'Analog Devices.
Exemple de dispositif à microprocesseur
Une machine à laver est un excellent exemple de dispositif de contrôle piloté par microprocesseur. Les principaux éléments de la machine sont :
- un tambour dans lequel sera positionné le linge à laver ;
- un moteur pour faire tourner ce tambour à vitesse plus ou moins grande selon la phase du programme (lavage, essorage…) ;
- une résistance chauffante pour chauffer l'eau ;
- une électro-vanne pour autoriser l'entrée de l'eau de la distribution dans la cuve de lavage au début du cycle ;
- une pompe pour vider l'eau en fin de cycle ;
- un détecteur de niveau d'eau pour arrêter le remplissage de la cuve ;
- un thermomètre électronique pour arrêter le chauffage quand l'eau a atteint la température désirée ;
- un ou plusieurs commutateurs pour sélectionner le programme, la température de l'eau, la vitesse d'essorage ;
- un bouton de mise en marche et d'arrêt de la machine ;
- un ou plusieurs voyants ou indicateurs (témoin de marche, état d'avancement du programme…).
Le processeur va recevoir des informations des périphériques d'entrée :
- commutateur (s) ;
- détecteur de niveau ;
- thermomètre électronique.
En fonction de ces informations, il va envoyer des commandes aux périphériques de sortie :
- moteur ;
- résistance chauffante ;
- électro-vanne ;
- pompe ;
- voyants et indicateurs.
Ports d'entrées/sorties
Les périphériques sont reliés au reste du dispositif par des circuits nommés ports d'entrées et ports de sortie (certains ports peuvent combiner les deux fonctions).
Un port d'entrée est principalement composé de tampons trois états. Ceux-ci se comportent comme des interrupteurs électroniques qui font apparaître, au moment voulu, les niveaux logiques du périphérique d'entrée (choisi par le bus d'adresse) sur le bus de données ; ces niveaux seront mémorisés dans un registre du processeur (le registre est une case de RAM).
Un port de sortie est principalement composé de bascules de type D. Celles-ci se comportent comme des petites mémoires. Leur entrée est reliée au bus de données. Le processeur vient écrire un niveau logique 0 ou 1 dans chacun des bascules. Les sorties des bascules contrôlent les périphériques, le plus souvent via un étage de puissance.
Périphériques d'entrée
Une entrée est un flux de données provenant soit :
- du réseau,
- d'une lecture d'information sur disque,
- d'une saisie clavier, d'un mouvement de souris, d'un crayon optique
- ou de tout autre périphérique prévu pour interagir avec un dispositif informatique.
Ces signaux d'entrée génèrent des Interruptions matérielles qui sont traitées en priorité par le gestionnaire d'interruptions du noyau du système d'exploitation.
Dans les dispositifs à microprocesseurs, tels la machine à laver évoquée ci-dessus, on trouve des boutons poussoirs, des commutateurs.
De nombreux microcontrôleurs incorporent des compteurs ; les signaux mis en forme et appliqués aux entrées de comptage forment aussi des signaux d'entrée du dispositif.
Dans les dispositifs informatiques, le choix est énormément plus vaste : clavier, souris, crayon optique, numériseur, convertisseurs analogiques/numériques…
Insistons sur le fait que, pour être traités par le processeur, les signaux, quels qu'ils soient, doivent être convertis en signaux logiques compatibles avec le processeur. Occasionnellemen, il faudra par conséquent placer des convertisseurs de niveau ou des étages d'isolement (fréquemment des opto-coupleurs).
Périphériques de sortie
Les sorties sont associées à des trappes ou appels dispositifs.
Une sortie peut être (cette liste n'est pas exhaustive) :
- un signal (électrique, onde…) ;
- un flux de données (réseau), une écriture sur disque ou une mise en mémoire ;
- un affichage, un son.
Dans les dispositifs à microprocesseurs, on utilise des diodes électroluminescentes (DELs) ou des ampoules à incandescence comme voyants ou indicateurs, des afficheurs numériques ou alphanumériques à DELs ou à cristaux liquides pour l'affichage des messages du dispositif, des relais (pour commander des charges nécessitant des courants et/ou des tensions élevés), des optocoupleurs…
Dans les dispositifs informatiques, le choix est vaste : écran pour l'affichage, imprimante pour la production de documents sur papier, convertisseurs numériques/analogiques…
Périphériques d'entrées/sorties
La plupart 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 également 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 pour réaliser un réseau local d'ordinateurs, ce qui sert à 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.
Gestion des entrées/sorties
On peut distinguer essentiellement 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 indispensable, l'état des ports de sortie. C'est la technique la plus simple. Exemple : dispositif de régulation de chauffage d'un bâtiment.
Interruptions
Cette technique est utilisée quand 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 conçu pour 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'endroit où il l'avait laissée.
Accès direct à la mémoire
Cette technique, connue fréquemment par ses initiales DMA (Direct Memory Access), est utilisée quand on doit procéder à un transfert rapide de la plupart de données entre, par exemple, un lecteur de CD et un disque dur. Plutôt que de transférer les octets en premier lieu vers un registre du processeur, puis uniquement 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 nommé contrôleur d'interruptions, qui prend la place du processeur au cours du transfert et gère les bus d'adresses et de contrôle.
Performances
Les performances d'un ordinateur mesurent le temps qui lui est indispensable 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 indispensable 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 le plus souvent prépondérant. En effet, le temps consacré aux opérations I/O se compte en millisecondes tandis que celui consacré aux instructions effectuées par le processeur se compte en nanosecondes.
La taille de la mémoire est en particulier importante étant donné qu'elle sert à diminuer 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 dispositif (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 apporte les données sortantes ou traite les données entrantes ;
- la charge du système d'entrée/sortie, qui émet ou reçoit les données (on parle le plus souvent des lectures/écritures surtout 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.
Recherche sur Amazone (livres) : |
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 07/04/2010.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.