MAKEDEV(3) BSD Library Functions Manual MAKEDEV(3)NAME
makedev, major, minor — device number conversion
makedev(int major, int minor);
The makedev() macro allows a unique device number to be generated based
on its major and minor number. The major() and minor() macros can be
used to obtain the original numbers from the device number dev.
In previous implementations of FreeBSD all block and character devices
were uniquely identified by a pair of major and minor numbers. The major
number referred to a certain device class (e.g. disks, TTYs) while the
minor number identified an instance within the device class. Later ver‐
sions of FreeBSD automatically generate a unique device number for each
character device visible in /dev/. These numbers are not divided in
On FreeBSD these macros are only used by utilities that need to exchange
numbers with other operating systems that may use different encodings for
dev_t, but also applications that present these numbers to the user in a
more conventional way.
The major() macro returns a device major number that has a value between
0 and 255. The minor() macro returns a device minor number whose value
can span the complete range of an int.
SEE ALSOdevfs(5), devname(3), mknod(2)BSD September 28, 2008 BSD