A device node, device file, or device special file is a type of special file used on many Unix-like operating systems, including Linux.
Device nodes facilitate transparent communication between user space applications and computer hardware.
By definition, device nodes correspond to resources that have already been allocated by the operating system Kernel. The resources are identified by a major number and a minor number, which are stored as part of the structure of a node. The assignment of these numbers is specific to different operating systems and computer platforms. Generally, the major number identifies the device driver and the minor number identifies a particular device (possibly out of many) that the driver controls, and is passed to the driver as an argument.
Like other special file types, device nodes are accessed using standard system calls and treated like regular files.