Provided by: manpages-ru-dev_4.19.0-7_all bug

ИМЯ

       makedev, major, minor - управление номером устройства

LIBRARY

       Standard C library (libc, -lc)

СИНТАКСИС

       #include <sys/sysmacros.h>

       dev_t makedev(unsigned int maj, unsigned int min);

       unsigned int major(dev_t dev);
       unsigned int minor(dev_t dev);

ОПИСАНИЕ

       Идентификатор (ID) устройства состоит из двух частей: старшего номера, определяющего класс
       устройства, и младшего номера, указывающего на определённый экземпляр  устройства  в  этом
       классе. Для представления ID устройства используется тип dev_t.

       Функция  makedev()  объединяет  указанные  старший  и  младший ID устройства, возвращая ID
       устройства. Этот ID может быть передан mknod(2).

       Функции major() и minor() выполняют обратную  задачу:  по  указанному  ID  устройства  они
       возвращают,  соответственно,  старший  и младший номера. Данные макросы могут пригодиться,
       например, для разложения ID устройства из структуры, возвращенной stat(2).

АТРИБУТЫ

       Описание терминов данного раздела смотрите в attributes(7).

       ┌───────────────────────────────────────────────────────┬──────────────────────┬──────────┐
       │ИнтерфейсАтрибутЗначение │
       ├───────────────────────────────────────────────────────┼──────────────────────┼──────────┤
       │makedev(), major(), minor()                            │ Безвредность в нитях │ MT-Safe  │
       └───────────────────────────────────────────────────────┴──────────────────────┴──────────┘

СТАНДАРТЫ

       Функции makedev(), major() и minor() не описаны в POSIX.1, однако присутствуют  во  многих
       системах.

ЗАМЕЧАНИЯ

       Данные интерфейсы определены как макросы. Начиная с glibc 2.3.3, они являются псевдонимами
       для трёх GNU-функций: gnu_dev_makedev(),  gnu_dev_major()  и  gnu_dev_minor().  Эти  имена
       экспортированы, однако использование традиционных имён более переносимо.

       В BSD определения этих макросов доступны в <sys/types.h>. В зависимости от версии, в glibc
       они также  доступны  из  этого  заголовочного  файла,  если  определён  подходящий  макрос
       тестирования  свойств.  Однако  такое  применение устарело в glibc 2.25, и начиная с glibc
       2.28, эти определения были удалены из <sys/types.h>.

СМ. ТАКЖЕ

       mknod(2), stat(2)

ПЕРЕВОД

       Русский перевод этой страницы руководства был сделан aereiae  <aereiae@gmail.com>,  Alexey
       <a.chepugov@gmail.com>,  Azamat  Hackimov  <azamat.hackimov@gmail.com>, Dmitriy S. Seregin
       <dseregin@59.ru>,      Dmitry      Bolkhovskikh      <d20052005@yandex.ru>,       ITriskTI
       <ITriskTI@gmail.com>,  Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван
       Павлов <pavia00@gmail.com> и Малянов Евгений Викторович <maljanow@outlook.com>

       Этот  перевод  является  бесплатной  документацией;  прочитайте  Стандартную  общественную
       лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы
       узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ.

       Если вы обнаружите ошибки в переводе  этой  страницы  руководства,  пожалуйста,  отправьте
       электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.