Virtual device


A virtual device in Unix is a file such as :/dev/null or :/dev/urandom, that is treated as a device, as far as user level software is concerned, but is generated by the kernel without reference to hardware.
For instance when /dev/null is written to, the kernel tells the program it wrote everything to it, and when read from, the reading program is told that it has reached the end of the file. It is a device file, but does not reference any hardware.
DOS-, Windows- and OS/2-like operating systems define the NUL device that performs a similar function.