Scroll to navigation

makedev(3) Library Functions Manual makedev(3)

BEZEICHNUNG

makedev, major, minor - Verwalten einer Gerätenummer

BIBLIOTHEK

Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

#include <sys/sysmacros.h>
dev_t makedev(unsigned int maj, unsigned int min);
unsigned int major(dev_t gerät);
unsigned int minor(dev_t gerät);

BESCHREIBUNG

Eine Gerätekennung besteht aus zwei Teilen: Einer Major-Kennung, die die Klasse des Geräts identifiziert, und einer Minor-Kennung, die die konkrete Instanz eines Geräts in dieser Klasse identifiziert. Eine Gerätekennung wird mit dem Typ dev_t dargestellt.

makedev() kombiniert die angegebene Major- und Minor-Kennung, um eine Gerätekennung zu erstellen, und liefert sie als Funktionsergebnis zurück. Die Gerätekennung kann beispielsweise an mknod(2) übergeben werden.

Die Funktionen major() und minor() erledigen die gegenteilige Aufgabe: Sie liefern für die angegebene Gerätekennung die Major- bzw. Minor-Komponenten zurück. Diese Makros können beispielsweise zur Zerlegung einer von stat(2) zurückgelieferten Gerätekennung verwandt werden.

ATTRIBUTE

Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

Schnittstelle Attribut Wert
makedev(), major(), minor() Multithread-Fähigkeit MT-Sicher

VERSIONEN

Die BSDs legen die Definitionen für diese Makros mittels <sys/types.h> offen.

STANDARDS

Keine.

GESCHICHTE

BSD, HP-UX, Solaris, AIX, Irix.

Diese Schnittstellen sind als Makros definiert. Seit Glibc 2.3.3 sind sie Aliase für drei GNU-spezifische Funktionen: gnu_dev_makedev(), gnu_dev_major() und gnu_dev_minor(). Letztere Namen werden exportiert, die traditionellen Namen sind aber besser portierbar.

Abhängig von der Version legt Glibc auch die Definitionen dieser Makros aus <sys/types.h> offen, falls geeignete Feature-Test-Makros definiert sind. Allerdings wurde dieses Verhalten in Glibc 2.25 missbilligt und seit Glibc 2.28 stellt <sys/types.h> diese Definitionen nicht mehr zur Verfügung.

SIEHE AUCH

mknod(2), stat(2)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

20. Juli 2023 Linux man-pages 6.05.01