Maison > Article > Opération et maintenance > Quels sont les périphériques de caractères Linux ?
Les périphériques de caractères Linux comprennent : 1. La souris, qui est un périphérique d'entrée externe pour l'ordinateur et un indicateur pour positionner les coordonnées verticales et horizontales du système d'affichage de l'ordinateur 2. Le clavier, qui est un périphérique d'entrée d'instructions et de données utilisé pour faire fonctionner l'équipement informatique. 3. Terminal de port série, un terminal connecté à l'aide d'un port série d'ordinateur. 5. Console, etc.
L'environnement d'exploitation de ce tutoriel : système linux5.9.8, ordinateur Dell G3.
Pour faciliter la gestion, le système Linux divise les périphériques en trois types de base :
Périphériques de caractère
Périphériques de blocage
Périphériques réseau
Ils sont tous affichés dans le système de fichiers dans le forme d'un répertoire de nœud de fichier /dev (crw--w---- 1 root tty 4, 0 July 11 09:11 tty0 où c représente le type de périphérique caractère).
Périphérique de caractère Linux
Le périphérique de caractère fait référence à un périphérique qui peut directement lire et écrire sans mise en mémoire tampon, tel qu'une souris, un clavier, un périphérique de port série, un modem, etc. La différence entre celui-ci et les périphériques de blocage est qu'il est la base des opérations sur les caractères. L'unité est l'octet.
Classification des dispositifs à caractères
Les dispositifs à caractères comprennent principalement les terminaux de contrôle et les terminaux série, tels que les consoles et les claviers. En fonction des différences de fonctions et de matériel, les terminaux à caractères sont classés comme suit :
Terminal à port série (/dev/ttSn) : un terminal connecté à l'aide d'un port série d'ordinateur. La méthode de transmission de données du périphérique série est la même. 8 bits sont transmis sur une seule ligne. Entrez echo 'hello world' > /dev/ttyS0 sur la ligne de commande pour écrire l'entrée sur le périphérique correspondant.
Pseudo terminal (/dev/ttyp, /dev/ptyp) : correspondant au fait qu'il n'y a pas de véritable périphérique matériel au niveau de la couche inférieure, il est utilisé pour fournir une interface de style terminal pour d'autres programmes, tels que entre le serveur réseau et le programme shell lors de la connexion à l'hôte via l'interface du terminal réseau.
Terminal de contrôle (/dev/tty) : Le numéro de périphérique principal est 5. Le terminal de contrôle de processus est associé au processus. Par exemple, le processus shell de connexion utilise le terminal /dev/tty.
Console (/dev/ttyn, /dev/consol) : Le moniteur pour les entrées et sorties de l'ordinateur Lorsque la console est connectée, tty1 est utilisé, tandis que l'interface graphique Ubuntu utilise tty7.
Autres types : Linux actuel possède de nombreux autres types de fichiers spéciaux pour de nombreux appareils différents, tels que le périphérique /dev/ttyIn du périphérique ISIDIN.
Ce qui suit est un diagramme schématique de la structure du périphérique de caractère
La nature et les caractéristiques du périphérique de caractère
Le périphérique de caractère est un type de système de fichiers de périphérique, qui est équivalent au système de fichiers logique fichier de périphérique fourni par le matériel sous-jacent à la couche supérieure, comme connecter un port de données (registre de données) à un fichier, et le pilote de périphérique opère directement sur le fichier, il effectue donc directement des opérations de lecture et d'écriture sur le port. Également en tant que fichier, le pilote de périphérique de caractères doit également implémenter les opérations de base des fichiers telles que open(), close(), write(), read(), etc. Bien entendu, les opérations de redirection de terminal sont également prises en charge.
Les fichiers de fichiers de périphérique de caractères sont lus et écrits en unités à un seul octet, et il n'est pas nécessaire de configurer un tampon matériel. Le système d'exploitation accède à l'appareil sous forme de flux d'octets. Le flux d'octets revient à établir un canal de transmission entre le port matériel et le système de fichiers. Les octets sont transmis un par un via le canal et présentés aux lecteurs et aux écrivains. Cette fonctionnalité de streaming est implémentée dans le pilote sous la forme d'une file d'attente tampon. Par exemple : La file d'attente du tampon de lecture et d'écriture dans la structure de la console
struct tty_struct { struct termios termios; int pgrp; int stopped; void (*write)(struct tty_struct * tty); struct tty_queue read_q; //读队列 struct tty_queue write_q; //写队列 struct tty_queue secondary; //tty辅助队列(存放规格化后的字符) };
Le périphérique de caractères est identifié par le numéro du périphérique de caractères. Le numéro de périphérique de caractères se compose d'un numéro de périphérique majeur et d'un numéro de périphérique mineur. Par exemple, le numéro de périphérique de /dev/ttyS0 est (4, 64) ; le numéro de périphérique majeur identifie le pilote correspondant au périphérique et le noyau l'utilise. le numéro de périphérique principal pour faire correspondre le périphérique et le pilote de manière individuelle. De manière générale, le numéro de périphérique mineur est utilisé par le pilote pour le code utilisé en interne par le pilote pour différencier les détails du périphérique. Il n'est pas utilisé par d'autres parties. du noyau.
Recommandations associées : "Tutoriel vidéo Linux"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!