4

I would like to know if my definitions of devfs, devtmpfs and udev in Linux are clear and accurate.

devfs is the kernel implementation of /dev [Deprecated]. Does this get populated by the kernel like the case fordevtempfs? According to @Gilles answer yes it does. Then both devfs and devtempfs hardcode names of devices.

devtempfs is a temporary file system that that gets populated with device files by the kernel and is mounted on /dev.

udev is a daemon that listens to the kernel's uevents and matches the attributes of those uevents against certain predefined rules to perform device initialization, make useful symlinks, etc...

The current Linux implementation of /dev is devtempfs + udev.

What is right and what is wrong in my definitions?

direprobs
  • 974

1 Answers1

4

Pretty much correct on udev and devtmpfs, with the caveat that udev is not required (pretty much, if you have no devices that need special handling from userspace and don't need the symlinks, you don't technically need udev).

As far as devfs, I think you're correct, but I'm not 100% certain. As a general rule, unless you're dealing with 10+ year old Linux systems (or poorly designed embedded devices), you don't have to worry about devfs.