Operating Systems: Process and Thread Management

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/26

flashcard set

Earn XP

Description and Tags

Flashcards covering the fundamentals of Operating Systems, focusing on process concepts, states, threading models, and inter-process communication mechanisms.

Last updated 7:38 PM on 6/4/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

27 Terms

1
New cards

Process

An abstraction of a running program or an instance of an executing program, including the current values of the program counter, registers, and variables.

2
New cards

Multiprogramming

The rapid switching back and forth of the CPU from process to process to improve utilization.

3
New cards

Degree of Multiprogramming

The number of processes loaded simultaneously in memory.

4
New cards

System Initialization

The event during system booting where various foreground and background processes are created.

5
New cards

fork()

A system call in UNIX that creates a process as an exact clone of the calling process, sharing the same memory image, environment strings, and open files.

6
New cards

init

A special process in UNIX boot images that acts as the root of the process tree, spawning terminal processes.

7
New cards

Running State

A process state where the process is actually using the CPU at that instant.

8
New cards

Ready State

A process state where the process is runnable and willing to run, but temporarily stopped because no CPU is available.

9
New cards

Blocked State

A process state where the process is unable to run until some external event, such as the arrival of input, happens.

10
New cards

Process Control Block (PCB)

A data structure identified by a PID that stores essential information about a process, including its program counter, registers, and state, to allow it to be restarted later.

11
New cards

Context Switch

The overhead process of saving the state of an active process into its PCB and restoring the state of a new process from its PCB.

12
New cards

CPU Utilization Formula

A probabilistic model represented as 1pn1 - p^n, where pp is the fraction of time a process waits for I/O and nn is the number of processes in memory.

13
New cards

Thread

A lightweight process and single sequence stream within a process that contains its own program counter, registers, and stack while sharing the code and data segments of the parent.

14
New cards

Pthreads

An IEEE standard (1003.1c) for threads supported by most UNIX systems, defining over 60 function calls.

15
New cards

Scheduler Activations

A mechanism that mimics kernel thread functionality with user-space performance by assigning virtual processors to processes and using upcalls for notification.

16
New cards

Upcall

A mechanism in scheduler activations where the kernel notifies a process's run-time system about a blocking event or newly ready thread by activating it at a known starting address.

17
New cards

Pop-up Thread

A new thread created quickly upon the arrival of a message to handle processing; it starts fresh with no history, reducing latency.

18
New cards

Race Condition

A situation where multiple processes manipulate shared data concurrently and the final result depends on the specific order or timing of execution.

19
New cards

Critical Section

The specific part of a program where a shared resource is accessed and where processes must be synchronized.

20
New cards

Mutual Exclusion

A condition ensuring that if one process is using a shared variable or file, other processes are excluded from doing the same thing.

21
New cards

Busy Waiting

The process of continuously testing a variable in a loop while waiting for an event to occur, which wastes CPU time.

22
New cards

TSL (Test and Set Lock)

A hardware instruction used for synchronization that reads a memory word into a register and stores a nonzero value at that memory address indivisibly.

23
New cards

Peterson's Solution

A software-based algorithm for mutual exclusion that uses a 'turn' variable and an 'interested' array to allow two processes to share a resource.

24
New cards

Semaphore

An abstraction variable used to control access to shared resources, categorized into binary (values 0 or 1) and counting types.

25
New cards

Mutex

Short for 'Mutual Exclusion Object,' it is a synchronization tool used to guard critical regions by blocking threads if the associated lock is already held.

26
New cards

Monitor

A higher-level synchronization primitive grouping procedures and data structures together, ensuring only one process is active inside it at any time.

27
New cards

Barrier

A synchronization mechanism for applications divided into phases, blocking any process from proceeding until all processes have reached the barrier.