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.