Types of files

QNX Neutrino supports various types of files.

The ls -l command uses the character shown in parentheses below to identify the file type:

Regular (-)
A file that contains user data, such as C code, HTML, and data. For example, /home/fred/myprog.c.
Directory (d)
Conceptually, a directory is something that contains files and other directories. For example, /home/fred.

A directory is implemented as a disk file that stores a list of the names of files and other directories. Each filename is associated with an inode (information node) that defines the file's existence. For more information, see "QNX 4 filesystem" in Working with Filesystems.

Symbolic link (l)
An additional name for a file or directory. For example, /usr/bin/more is a symbolic link to /usr/bin/less. For more information, see "Symbolic links" in Working with Filesystems.
Named special (n)
A shared memory region, such as, /dev/shmem/Pg101e0001.
Character special files (c)
Entries that represent a character device. For example, /dev/ser1 represents a serial port.
FIFO special files (p)
Persistent named pipes through which two programs communicate. For example, PipeA.
Block special files (b)
Entries that represent a block device, such as a disk. For example, /dev/hd0 represents the raw block data of your primary disk drive.
Socket files (s)
Entries that represent a communications socket, especially a UNIX-domain socket. For more information, see socket() and the UNIX protocol in the QNX Neutrino C Library Reference.

Some files are persistent across system reboots, such as most files in a disk filesystem. Other files may exist only as long as the program responsible for them is running. Examples of these include shared memory objects, objects in the /proc filesystem, and temporary files on disk that are still being accessed even though the links to the files (their filenames) have been removed.