¿Cuál es exactamente la diferencia entre devfs y sysfs ? Ambos parecen mantener una lista de hardwares conectados al sistema . Entonces, ¿por qué surgió la necesidad de 2 fs separadas? Por lo que puedo obtener / sys mantiene una lista de dispositivos algo "en bruto" (como "ser0"). Udev actúa en esos dispositivos, obtiene información variada y aplica varias reglas para presentarlos como nombres reconocibles que luego se asignan a / dev (como "cámara"). ¿Es esta la única razón? Y luego montamos los dispositivos correspondientes desde / dev fs (no podemos hacerlo desde / sys fs) en / media fs.
¿He leído la respuesta en Diferencia entre / dev y / sys / class? . Pero no puedo obtener la parte del sistema donde dice que
Sysfs contiene la jerarquía de dispositivos, ya que están conectados a la computadora
¿Los archivos en / sys no son archivos de nodo de dispositivo? Entonces, ¿qué tipo de archivos son?
sysfs
desde diferentes perspectivas y ninguna de las respuestas a la otra pregunta explica cómo se/dev
relaciona el directoriosysfs
.Respuestas:
El
/sys
sistema de archivos (sysfs) contiene archivos que proporcionan información sobre dispositivos: si está encendido, el nombre y modelo del proveedor, en qué bus está conectado el dispositivo, etc. Es de interés para las aplicaciones que administran dispositivos.El
/dev
sistema de archivos contiene archivos que permiten que los programas accedan a los propios dispositivos: escribir datos en un puerto serie, leer un disco duro, etc. Es de interés para las aplicaciones que acceden a los dispositivos.Una metáfora es que
/sys
proporciona acceso al embalaje, mientras que/dev
proporciona acceso al contenido de la caja.Los archivos
/sys
no son nodos de dispositivo, sino enlaces simbólicos y archivos normales. Esos archivos regulares son especiales porque leerlos o escribirles invoca funciones específicas del archivo en el núcleo, como los nodos de dispositivos. La diferencia es que los archivos/sys
funcionan de esta manera debido al sistema de archivos en el que se encuentran, mientras que los nodos de dispositivos funcionan de esta manera debido a las características de sus nodos de dispositivos (el tipo de archivo indica un dispositivo (bloque o carácter) y el número de dispositivo mayor y menor que indica de qué dispositivo es).La razón de
/dev
existir independientemente/sys
es parcialmente histórica:/dev
se remonta a los albores de Unix, mientras que/sys
es una invención mucho más reciente. Si Linux fue diseñado hoy sin antecedentes históricos,/dev/sda
podría serlo/sys/block/sda/content
.fuente
man hier
.