Zum Inhalt springen

Sysfs: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „line>“ durch „line copy>“
Keine Bearbeitungszusammenfassung
Zeile 2: Zeile 2:


== Beschreibung ==
== Beschreibung ==
'''Sysfs''' ist ein [[virtuelles Dateisystem]] des [[Linux (Kernel)|Linux-Kernels]]. Es exportiert Informationen über verschiedene Kernel-Subsysteme, Hardware und assoziierte Geräte-Treiber durch virtuelle Dateien in den [[Ring (CPU)|Benutzer-Modus]].
'''Sysfs''' ist ein [[virtuelles Dateisystem]] des [[Linux (Kernel)|Linux-Kernels]]
* Es exportiert Informationen über verschiedene Kernel-Subsysteme, Hardware und assoziierte Geräte-Treiber durch virtuelle Dateien in den [[Ring (CPU)|Benutzer-Modus]]


Bestimmte Parameter können über dieses Interface auch konfiguriert werden.
Bestimmte Parameter können über dieses Interface auch konfiguriert werden


Sysfs bietet eine ähnliche Funktionalität wie der Sysctl-Mechanismus in [[Berkeley Software Distribution|BSD]]-Betriebssystemen, mit dem Unterschied, dass Sysfs als virtuelles Dateisystem implementiert wurde.
Sysfs bietet eine ähnliche Funktionalität wie der Sysctl-Mechanismus in [[Berkeley Software Distribution|BSD]]-Betriebssystemen, mit dem Unterschied, dass Sysfs als virtuelles Dateisystem implementiert wurde


== Geschichte ==
== Geschichte ==
Während der Entwicklung des Linux-Kernels 2.5 wurde das Linux-Treiber-Modell vorgestellt, welches die folgenden Schwachstellen der Kernel-Version 2.4 beheben sollte:
Während der Entwicklung des Linux-Kernels 2.5 wurde das Linux-Treiber-Modell vorgestellt, welches die folgenden Schwachstellen der Kernel-Version 2.4 beheben sollte:
* Es gab keine einheitliche Methode, um zu zeigen, dass Beziehungen zwischen Geräte-Treibern bestehen.
* Es gab keine einheitliche Methode, um zu zeigen, dass Beziehungen zwischen Geräte-Treibern bestehen
* Es gab keine generischen [[Hot Swapping|Hotplug]]-Mechanismen.
* Es gab keine generischen [[Hot Swapping|Hotplug]]-Mechanismen
* [[procfs]] wurde mit Informationen, die nicht in Verbindung mit Prozessen standen, belastet.
* [[procfs]] wurde mit Informationen, die nicht in Verbindung mit Prozessen standen, belastet


Es wurde ursprünglich von Patrick Mochel entwickelt.<ref>{{cite web |first=Linus |last=Torvalds |title=Linux v2.5.44 - and offline for a week |date=2002-10-18 |url=https://lkml.org/lkml/2002/10/19/8}}</ref><ref>{{cite web |first=Linus |last=Torvalds |title=Linux v2.5.46 |date=2002-11-04 |url=https://lkml.org/lkml/2002/11/4/213}}</ref> Maneesh Soni schrieb später den sogenannten "sysfs backing store patch", welcher die Speichernutzung auf großen Systemen reduziert.
Es wurde ursprünglich von Patrick Mochel entwickelt.<ref>{{cite web |first=Linus |last=Torvalds |title=Linux v2.5.44 - and offline for a week |date=2002-10-18 |url=https://lkml.org/lkml/2002/10/19/8}}</ref><ref>{{cite web |first=Linus |last=Torvalds |title=Linux v2.5.46 |date=2002-11-04 |url=https://lkml.org/lkml/2002/11/4/213}}</ref> Maneesh Soni schrieb später den sogenannten "sysfs backing store patch", welcher die Speichernutzung auf großen Systemen reduziert


Während des nächsten Jahres der Entwicklung der Kernel-Version 2.5 begannen die infrastrukturellen Kapazitäten des Treibermodells, früher ddfs genannt, sich für die Kernel-Subsysteme als nützlich zu erweisen.<ref>{{cite web |first=Patrick |last=Mochel |title=[RFC] New Driver Model for 2.5 |date=2001-10-17 |url=https://lkml.org/lkml/2001/10/17/147}}</ref><ref>{{cite web |first=Tim |last=Jansen |title=Re: [PATCH] 2.5 PROPOSAL: Replacement for current /proc of shit. |date=2001-11-01 |url=https://lkml.org/lkml/2001/11/1/38}}</ref> Etwa zur gleichen Zeit wurden die kobjects entwickelt, um eine zentrale Objektverwaltung zu ermöglichen. Dabei wurde der Name von driverfs zu sysfs geändert, um die Bandbreite zu verdeutlichen.
Während des nächsten Jahres der Entwicklung der Kernel-Version 2.5 begannen die infrastrukturellen Kapazitäten des Treibermodells, früher ddfs genannt, sich für die Kernel-Subsysteme als nützlich zu erweisen.<ref>{{cite web |first=Patrick |last=Mochel |title=[RFC] New Driver Model for 2.5 |date=2001-10-17 |url=https://lkml.org/lkml/2001/10/17/147}}</ref><ref>{{cite web |first=Tim |last=Jansen |title=Re: [PATCH] 2.5 PROPOSAL: Replacement for current /proc of shit. |date=2001-11-01 |url=https://lkml.org/lkml/2001/11/1/38}}</ref> Etwa zur gleichen Zeit wurden die kobjects entwickelt, um eine zentrale Objektverwaltung zu ermöglichen
* Dabei wurde der Name von driverfs zu sysfs geändert, um die Bandbreite zu verdeutlichen


Sysfs ist üblicherweise unter dem Pfad <code>/sys</code> eingehängt.
Sysfs ist üblicherweise unter dem Pfad <code>/sys</code> eingehängt


== Unterstützte Bussysteme ==
== Unterstützte Bussysteme ==
Zeile 28: Zeile 30:
| PCI Express|| Exportiert Informationen über [[PCI Express|PCI-Express]]-Geräte
| PCI Express|| Exportiert Informationen über [[PCI Express|PCI-Express]]-Geräte
|-
|-
| USB || Beinhaltet [[Universal Serial Bus|USB]]-Geräte und USB-Hosts.
| USB || Beinhaltet [[Universal Serial Bus|USB]]-Geräte und USB-Hosts
|-
|-
| S/390-Bussysteme || Da die [[S/390]]-Architektur Geräte beinhaltet, die in dieser Form nirgendwo sonst existieren, müssen spezielle Bussysteme erstellt werden
| S/390-Bussysteme || Da die [[S/390]]-Architektur Geräte beinhaltet, die in dieser Form nirgendwo sonst existieren, müssen spezielle Bussysteme erstellt werden
Zeile 59: Zeile 61:
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
=== Dokumentation ===
=== Dokumentation ===


; Man-Page
;Info-Page
=== Links ===
=== Links ===
==== Projekt ====
==== Projekt ====

Version vom 12. September 2025, 09:34 Uhr

Sysfs - Virtuelles Dateisystem des Linux-Kernels

Beschreibung

Sysfs ist ein virtuelles Dateisystem des Linux-Kernels

  • Es exportiert Informationen über verschiedene Kernel-Subsysteme, Hardware und assoziierte Geräte-Treiber durch virtuelle Dateien in den Benutzer-Modus

Bestimmte Parameter können über dieses Interface auch konfiguriert werden

Sysfs bietet eine ähnliche Funktionalität wie der Sysctl-Mechanismus in BSD-Betriebssystemen, mit dem Unterschied, dass Sysfs als virtuelles Dateisystem implementiert wurde

Geschichte

Während der Entwicklung des Linux-Kernels 2.5 wurde das Linux-Treiber-Modell vorgestellt, welches die folgenden Schwachstellen der Kernel-Version 2.4 beheben sollte:

  • Es gab keine einheitliche Methode, um zu zeigen, dass Beziehungen zwischen Geräte-Treibern bestehen
  • Es gab keine generischen Hotplug-Mechanismen
  • procfs wurde mit Informationen, die nicht in Verbindung mit Prozessen standen, belastet

Es wurde ursprünglich von Patrick Mochel entwickelt.[1][2] Maneesh Soni schrieb später den sogenannten "sysfs backing store patch", welcher die Speichernutzung auf großen Systemen reduziert

Während des nächsten Jahres der Entwicklung der Kernel-Version 2.5 begannen die infrastrukturellen Kapazitäten des Treibermodells, früher ddfs genannt, sich für die Kernel-Subsysteme als nützlich zu erweisen.[3][4] Etwa zur gleichen Zeit wurden die kobjects entwickelt, um eine zentrale Objektverwaltung zu ermöglichen

  • Dabei wurde der Name von driverfs zu sysfs geändert, um die Bandbreite zu verdeutlichen

Sysfs ist üblicherweise unter dem Pfad /sys eingehängt

Unterstützte Bussysteme

Bussysteme Beschreibung
PCI Exportiert Informationen über PCI- und PCIe-Geräte
PCI Express Exportiert Informationen über PCI-Express-Geräte
USB Beinhaltet USB-Geräte und USB-Hosts
S/390-Bussysteme Da die S/390-Architektur Geräte beinhaltet, die in dieser Form nirgendwo sonst existieren, müssen spezielle Bussysteme erstellt werden
  • css: Enthält Subkanäle (zurzeit wird nur ein einziger I/O-Treiber für Subkanäle unterstützt)
  • ccw: Enthält an Kanäle angehängte Geräte
  • ccwgroup: Virtuelle Geräte, welche vom Benutzer erstellt werden und aus ccw-Geräten bestehen
  • iucv: Virtuelle Geräte wie netiucv-Geräte, welche die IUCV-Schnittstelle von virtuellen Maschinen verwenden

Installation

Aufruf

Optionen

Argumente

Umgebungsvariablen

Exit-Status

Anwendung

Problembehebung

Konfiguration

Dateien

Anhang

Siehe auch


Dokumentation

Links

Projekt

Weblinks

  1. https://de.wikipedia.org/wiki/Sysfs