1/14
Vocabulary and system call definitions related to Interprocess Communication (IPC) using pipes, file descriptor manipulation, and OS kernel basics.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Pipe
A simple, synchronized way of passing information between processes, acting as a special file/buffer that stores data in a FIFO (sequential) manner.
Unnamed Pipes
Pipes not associated with any file that can only be used with related processes (e.g., parent and child) and support unidirectional communication via the pipe() system call.
Named Pipes (FIFOs)
Pipes associated with a file in the directory that support bidirectional communication between unrelated processes, created using mknod() or mkfifo().
pipe(int fd[2])
A system call that creates an unnamed pipe and returns two file descriptors where fd[0] is for reading and fd[1] is for writing.
Atomicity
A condition where a computer operation (typically for data sizes of 4096 ext{ bytes} or less in pipes) is guaranteed to be isolated from other concurrent operations.
SIGPIPE
A signal generated and sent to a process when it attempts to write to a pipe whose read end has been closed, signifying a broken pipe.
EPIPE
The error number (errno) set when a process attempts to write to a pipe that is not open for reading by any process.
dup(int oldfd)
A system call that creates a copy of the oldfd file descriptor using the lowest unused file descriptor number.
dup2(int oldfd, int newfd)
A system call that atomically makes newfd a copy of oldfd, closing newfd first if necessary, leaving no time lapse between actions.
fileno(FILE *fp)
A library function used to find the integer file descriptor associated with a specific stream pointer.
Standard Input (STDIN)
The standard file descriptor represented by the integer 0.
Standard Output (STDOUT)
The standard file descriptor represented by the integer 1.
Standard Error (STDERR)
The standard file descriptor represented by the integer 2.
Kernel
The heart of the operating system and moderator between applications and computer resources, providing functional interfaces called system calls.
Application Programming Interface (API)
A collection of system calls used to request machine resources, communicate between running programs, or start new programs.