Send a link to your students to track their progress
21 Terms
1
New cards
Process
A program in execution that must progress in a sequential fashion without parallel execution of instructions.
2
New cards
Process Control Block (PCB)
A data structure that stores all the information about a process, including process state, program counter, CPU registers, and memory management information.
3
New cards
Process State
The state of a process can be New, Running, Waiting, Ready, or Terminated, each representing the status of the process during execution.
4
New cards
Context Switch
The process of saving the state of a currently running process and loading the state of the next process to be executed by the CPU.
5
New cards
Interprocess Communication (IPC)
Mechanisms provided by the operating system to allow processes to communicate with each other, using methods like shared memory and message passing.
6
New cards
Producer-Consumer Problem
A paradigmatic scenario where a producer process creates data that is consumed by a consumer process, often discussed in the context of synchronization.
7
New cards
Zombie Process
A terminated process that remains in the process table until its parent process clears it.
8
New cards
Orphan Process
A process that is left running in the system because its parent process has terminated.
9
New cards
Shared Memory
A mechanism allowing processes to communicate by accessing a common area of memory, requiring synchronization to manage concurrent access.
10
New cards
Message Passing
A method of IPC where processes communicate by sending and receiving messages without sharing memory.
11
New cards
Socket
An endpoint for communication defined by a combination of an IP address and a port number used in network communication.
12
New cards
Blocking Communication
A synchronous form of IPC where the sender is blocked until the message is received or the receiver is blocked until a message is available.
13
New cards
Non-blocking Communication
An asynchronous form of IPC where the sender sends a message and continues without waiting for the receiver, and the receiver can receive either a valid message or a null.
14
New cards
Cascading Termination
A situation where the termination of a parent process leads to the automatic termination of all its child processes.
15
New cards
Fork
A UNIX system call used to create a new process by duplicating the calling process.
16
New cards
exec
A UNIX system call used after a fork() to replace the process's current memory space with a new program.
17
New cards
wait()
A system call used by a parent process to wait for a child process to terminate.
18
New cards
Critical Section Problem
A situation where multiple processes or threads try to simultaneously access and modify shared resources, potentially leading to inconsistencies or deadlocks.
19
New cards
Deadlock
A state where two or more processes are unable to proceed because each is waiting for the other to release resources.
20
New cards
Starvation
A situation in which a process is perpetually denied the resources it needs to proceed, typically due to the scheduling policies.
21
New cards
Client-Server Communication
A model for structuring communications where a client sends requests to a server, which processes the request and sends a response.