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

STANDARDS
Die Funktionen makedev(), major() und minor() sind nicht in POSIX.1 spezifiziert, aber auf vielen Systemen verfügbar.

ANMERKUNGEN
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.

Die BSDs legen die Definitionen für diese Makros mittels <sys/types.h> offen. Abhängig von der Version legt Glibc auch die Definitionen dieser Makros aus dieser Header-Datei 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 (https://www.gnu.org/licenses/gpl-3.0.html) 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 (debian-l10n-german@lists.debian.org).