makedev(3) Library Functions Manual makedev(3)

makedev, major, minor - Verwalten einer Gerätenummer

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);

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.

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-Safe

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

Keine.

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.

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