stringtranslate.com

sistemas de archivos sysf

sysfs es un pseudo sistema de archivos proporcionado por el kernel de Linux que exporta información sobre varios subsistemas del kernel, dispositivos de hardware y controladores de dispositivos asociados desde el modelo de dispositivo del kernel al espacio de usuario a través de archivos virtuales . [1] Además de proporcionar información sobre varios dispositivos y subsistemas del kernel, los archivos virtuales exportados también se utilizan para su configuración.

sysfs proporciona una funcionalidad similar al mecanismo sysctl que se encuentra en los sistemas operativos BSD , con la diferencia de que sysfs se implementa como un sistema de archivos virtual en lugar de ser un mecanismo de kernel especialmente diseñado y que, en Linux, los parámetros de configuración de sysctl están disponibles en /proc/sys/ como parte de procfs , no sysfs que está montado en /sys/ . [2]

Historia

Durante el ciclo de desarrollo 2.5, se introdujo el modelo de controlador de Linux para corregir las siguientes deficiencias de la versión 2.4:

Sysfs fue diseñado para exportar la información presente en el árbol de dispositivos , lo que dejaría de saturar procfs. Fue escrito por Patrick Mochel. [3] [4] Más tarde, Maneesh Soni escribió el parche de almacenamiento de respaldo de sysfs para reducir el uso de memoria en sistemas grandes.

Durante el siguiente año de desarrollo de la versión 2.5, las capacidades de infraestructura del modelo de controlador y driverfs comenzaron a resultar útiles para otros subsistemas. [5] [6] Se desarrollaron kobjects para proporcionar un mecanismo de gestión de objetos central y driverfs pasó a llamarse sysfs para representar su agnosticismo de subsistemas.

Sysfs se monta en el punto de montaje /sys . Si no se monta automáticamente durante la inicialización, se puede montar manualmente utilizando el mountcomando: mount -t sysfs sysfs /sys. [1]

Autobuses compatibles

ACPI
Exporta información sobre dispositivos ACPI .
PCI
Exporta información sobre dispositivos PCI y PCI Express .
PCI Express
Exporta información sobre dispositivos PCI Express .
USB
Exporta información sobre dispositivos USB .
SCSI
Exporta información sobre dispositivos de almacenamiento masivo , incluidas las interfaces USB , SATA y NVMe . [7]
Autobuses S/390
Como la arquitectura S/390 contiene dispositivos que no se encuentran en ningún otro lugar, se han creado buses especiales:
  • css : contiene subcanales (actualmente el único controlador proporcionado es para subcanales de E/S).
  • ccw : contiene dispositivos conectados al canal (controlados por CCW ).
  • ccwgroup : dispositivos artificiales creados por el usuario y compuestos por dispositivos ccw. Reemplaza algunas de las funciones de chandev 2.4.
  • iucv : dispositivos artificiales como los dispositivos netiucv que utilizan la interfaz IUCV de VM .

Sysfs y espacio de usuario

Varias utilidades utilizan Sysfs para acceder a información sobre el hardware y sus controladores ( módulos del kernel ), como udev o HAL . Se han escrito scripts para acceder a información obtenida previamente a través de procfs , y algunos scripts configuran controladores de dispositivos y dispositivos a través de sus atributos.

Véase también

Referencias

  1. ^ por Patrick Mochel y Mike Murphy. "sysfs - _El_ sistema de archivos para exportar objetos del kernel". kernel.org .
  2. ^ SUSE. "Página de manual de sysctl". FreeBSD. sysctl se utiliza para modificar los parámetros del núcleo en tiempo de ejecución. Los parámetros disponibles son los que se enumeran en /proc/sys/. Procfs es necesario para la compatibilidad de sysctl en Linux. Puede utilizar sysctl tanto para leer como para escribir datos de sysctl.
  3. ^ Torvalds, Linus (18 de octubre de 2002). "Linux v2.5.44 y sin conexión durante una semana".
  4. ^ Torvalds, Linus (4 de noviembre de 2002). "Linux v2.5.46".
  5. ^ Mochel, Patrick (17 de octubre de 2001). "[RFC] Nuevo modelo de controlador para 2.5".
  6. ^ Jansen, Tim (1 de noviembre de 2001). "Re: [PARCHE] PROPUESTA 2.5: Reemplazo del actual /proc de mierda".
  7. ^ "Guía de interfaces SCSI: la documentación del núcleo de Linux". www.kernel.org . Consultado el 13 de noviembre de 2020 .

Enlaces externos