The following lists typical operations on file descriptors on modern Unix-like systems.
The fcntl() function is used to perform various operations on a file descriptor, depending on the command argument passed to it.
A series of new operations has been added to many modern Unix-like systems, as well as numerous C libraries, to be standardized in a future version of POSIX.
[7] The at suffix signifies that the function takes an additional first argument supplying a file descriptor from which relative paths are resolved, the forms lacking the at suffix thus becoming equivalent to passing a file descriptor corresponding to the current working directory.
They can be passed between processes across Unix domain sockets using the sendmsg() system call.