device file
also: special file, device node
A special file that represents a hardware device or pseudo-device, allowing programs to interact with hardware through standard file operations like read and write.
Device files are special files located in the /dev directory that act as interfaces to hardware devices and kernel drivers. Instead of containing data, they provide a way to communicate with devices using the same operations you'd use on regular files—open(), read(), write(), and close().
There are two main types: block devices (like hard drives and SSDs) that transfer data in chunks, and character devices (like terminals and serial ports) that transfer data one character at a time. You can identify them in ls -l output by the b or c in the first column.
For example, /dev/sda represents your first SATA drive, /dev/tty represents your terminal, and /dev/null is a pseudo-device that discards all data written to it. Reading from or writing to these files directly interacts with the underlying hardware or kernel subsystem.