On Unix, device drivers for hardware (such as hard disk drives) and special device files (such as /dev/zero and /dev/random) appear in the file system just like normal files; can also read and/or write from/to these files, provided that function is implemented in their respective driver.