Quelle est exactement la différence entre devfs et sysfs ? Les deux semblent maintenir une liste de matériels attachés au système . Alors pourquoi le besoin de 2 fs séparés est-il même apparu? Autant que je puisse obtenir / sys maintient une liste quelque peu "brute" de périphériques (comme "ser0"). Udev agit sur ces appareils, obtient diverses informations et applique diverses règles pour les présenter comme des noms reconnaissables qui sont ensuite mappés sur / dev (comme "camera"). Est-ce la seule raison? Et puis nous montons les périphériques correspondants à partir du / dev fs (ne pouvons-nous pas le faire à partir du / sys fs) dans le / media fs.
J'ai lu la réponse sur Différence entre / dev et / sys / class? . Mais je ne peux pas obtenir la partie sys fs où il est indiqué que
Les Sysfs contiennent la hiérarchie des périphériques, car ils sont connectés à l'ordinateur
Les fichiers dans / sys ne sont-ils pas des fichiers de noeud de périphérique? Alors quel type de fichiers sont-ils?
sysfs
sous différents angles et aucune des réponses à l'autre question n'explique comment le/dev
répertoire se rapportesysfs
.Réponses:
Le
/sys
système de fichiers (sysfs) contient des fichiers qui fournissent des informations sur les appareils: qu'il soit sous tension, le nom et le modèle du fournisseur, le bus auquel l'appareil est branché, etc. Il intéresse les applications qui gèrent les appareils.Le
/dev
système de fichiers contient des fichiers qui permettent aux programmes d'accéder aux périphériques eux-mêmes: écrire des données sur un port série, lire un disque dur, etc. Cela intéresse les applications qui accèdent aux périphériques.Une métaphore est celle qui
/sys
donne accès à l'emballage, tout en/dev
donnant accès au contenu de la boîte.Les fichiers
/sys
ne sont pas des nœuds de périphérique, mais des liens symboliques et des fichiers normaux. Ces fichiers normaux sont spéciaux en ce que leur lecture ou leur écriture appelle des fonctions spécifiques au fichier dans le noyau, comme les nœuds de périphérique. La différence est que les fichiers/sys
fonctionnent de cette façon en raison du système de fichiers sur lequel ils se trouvent, tandis que les nœuds de périphérique fonctionnent de cette façon en raison de leurs caractéristiques de nœud de périphérique (le type de fichier indiquant un périphérique (bloc ou caractère) et le nombre majeur et mineur de périphérique indiquant de quel appareil il s'agit).La raison d'
/dev
exister indépendamment de/sys
est en partie historique:/dev
remonte à l'aube d'Unix, alors qu'il/sys
s'agit d'une invention beaucoup plus récente. Si Linux a été conçu aujourd'hui sans arrière-plan historique, c'est/dev/sda
possible/sys/block/sda/content
.la source
man hier
.