svn commit: r198768 - head/sbin/mknod
Dag-Erling Smørgrav
des at des.no
Sun Nov 1 23:59:18 UTC 2009
Ed Schouten <ed at 80386.nl> writes:
> Dag-Erling Smørgrav <des at des.no> writes:
> > (device numbers are currently unsigned int; is there a reason not to
> > make them explicitly 32 bits wide, i.e. uint32_t?)
> I think it should explicitly use dev_t or something, right?
Ah, I was looking in the wrong header; it is indeed a uint32_t. So:
b | c
Type of device. Historically, block devices were provided to allow
byte-level access to hardware that required data to be read or written
in fixed-sized blocks. FreeBSD no longer has block devices, and all
device nodes should be created as character devices.
However, the distinction between block and character devices is still
important when creating device nodes on a filesystem intended for use
by older systems.
(it's been so long since we dropped block devices that I actually had to
look up the details in an old copy of D&I)
major, minor
Historically, a device number consisted of two parts: the major
number, which identified a device driver, and the minor number, which
identified an individual device handled by that driver. FreeBSD no
longer makes that distinction. Instead, every device in the system
has a unique 32-bit device number. For compatibility with software
that still expects separate major and minor numbers, this 32-bit
device number is split into a 24-bit major number and an 8-bit minor
number.
However, the distinction between major and minor numbers is still
important when creating device nodes on a filesystem intended for use
by older systems.
DES
--
Dag-Erling Smørgrav - des at des.no
More information about the svn-src-head
mailing list