Zum Inhalt springen

Gerätedatei

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 17. Juni 2006 um 20:03 Uhr durch Fomafix (Diskussion | Beiträge) (linkfix). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Gerätedatei (v. engl. device file) sind Spezialdateien und werden unter fast allen Unix-Derivaten und auch vielen anderen Betriebssystemen genutzt.

Gerätedateien unter Unix

Unter unixartigen Betriebssystemen ist eine Gerätedatei eine Spezialdatei, die sich im Verzeichnis /dev, bei Solaris unter /devices und deren Unterverzeichnissen befindet und Zugriff auf ein Gerät (zum Beispiel eine Festplatte) oder eine andere Systemkomponente ermöglicht. Mit Hilfe einer solchen Datei kann von einem Anwendungsprogramm wie zum Beispiel einer Textverarbeitung über einen speziellen internen Treiber das zugehörige Gerät beziehungsweise eine Systemkomponente angesprochen werden. Die Gerätedatei dient dabei als Schnittstelle.

Es wird unterschieden zwischen

  • c – character devices: zeichenorientierte Geräte
  • b – block devices: blockorientierte Geräte
  • s – socket devices: sockelorientierte Geräte

Die Namen der Gerätedateien sind abhängig vom jeweiligen Unix-Derivat.

Blockorientierte Geräte

Blockorientierte Geräte übertragen Daten in Blöcke und werden daher oft für parallele Datenübertragungen genutzt. Alle diese Geräte nutzen den betriebssystemeigenen Puffer. Beispiele:

  • fd0 1. Diskettenlaufwerk
  • hda IDE-Festplatte oder IDE-CD-ROM-Laufwerk am 1. Anschluss Master
  • hdb IDE-Festplatte oder IDE-CD-ROM-Laufwerk am 1. Anschluss Slave
  • hda1 1. Partition der ersten IDE-Platte
  • hda15 15. Partition der ersten IDE-Platte
  • ad0 IDE-Festplatte am 1. Anschluss Master (FreeBSD)
  • ad1 IDE-Festplatte am 1. Anschluss Slave (FreeBSD)
  • ad0s1 1. Slice der ersten IDE-Platte (FreeBSD)
  • ad0s15 15. Slice der ersten IDE-Platte (FreeBSD)
  • ad0s1a 1. Partition im 1. Slice der ersten IDE-Platte (FreeBSD)
  • ad0s1b 2. Partition im 1. Slice der ersten IDE-Platte (FreeBSD)
  • acd0 IDE-CD-ROM-Laufwerk am 1. Anschluss Master (FreeBSD)
  • acd1 IDE-CD-ROM-Laufwerk am 1. Anschluss Slave (FreeBSD)
  • sda SCSI-(Wechsel-)Platte, kleinste SCSI-ID (Linux)
  • sdb SCSI-(Wechsel-)Platte, nächst größere SCSI-ID (Linux)
  • sda1 1. Partition der ersten SCSI-(Wechsel-)Platte
  • sda15 15. Partition der ersten SCSI-(Wechsel-)Platte
  • da0 SCSI-(Wechsel-)Platte, kleinste SCSI-ID (FreeBSD)
  • da1s2e 5. Partition im 2. Slice der 2. SCSI-(Wechsel-)Platte (FreeBSD)
  • scd0 1. SCSI-CD-ROM-Laufwerk
  • cd0 1. SCSI-CD-ROM-Laufwerk (FreeBSD)
  • cCtTdDsS am C-ten SCSI-Controller mit SCSI-ID=T die D-te Festplatte und auf ihr das S-te Slice (Solaris)
  • cdrom Symbolischer Link auf CD-ROM-Laufwerk

Zeichenorientierte Geräte

Zeichenorientierte Geräte übertragen ein Zeichen zur selben Zeit, also seriell. Meist, aber nicht immer werden Daten ungepuffert, also sofort übertragen. Beispiele:

sowie alle virtuellen Gerätedateien

Die Netzwerkkarten (zum Beispiel Ethernet, ISDN) werden nicht über Gerätedateien sondern über den TCP/IP-Stack angesprochen, gleichwohl existieren oft auch Gerätedateien für Spezialanwendungen wie etwa zur direkten Ansteuerung der Hardware (Netlink Device, D-Channel, etc.).

Sockelorientierte Geräte

Obwohl solche Dateien unter /dev bzw. /devices liegen, handelt es sich nicht um Gerätedateien, sondern sind eine Form von Interprozesskommunikation. Beispiele:

  • /dev/log Sockel für syslogd
  • /dev/gpmdata Sockel für den GPM-Maus-Multiplexer
  • /dev/printer Sockel für lpd

Virtuelle Gerätedateien

Einen Spezialfall stellen die virtuellen Gerätedateien dar. Bei diesen handelt es sich um Gerätedateien, mit denen kein echtes Gerät gesteuert wird. Beispiele:

Gerätedateien unter Windows

Auch unter Microsoft Windows gibt es Gerätedateien: Auf sie wird beispielsweise beim Start von Windows 3.11 oder Windows 95/98/ME verwiesen, wenn die Startroutinen WIN.INI und SYSTEM.INI ablaufen. Sind die Gerätedateien nicht vorhanden, gibt es eine Fehlermeldung. Gerätetreiber unter Windows haben die Endung .vxd. Dabei handelt es sich jedoch nicht um Dateien, die als Schnittstelle dienen, sondern um Gerätetreiberdateien, die ausführbaren Code enthalten.

Siehe auch