Concurrency: An Introduction

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/15

flashcard set

Earn XP

Description and Tags

These flashcards cover key vocabulary terms and concepts related to concurrency and threading, helping students to understand and recall important information for their exam.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

16 Terms

1
New cards

Thread

A new abstraction for a single running process, allowing multiple points of execution within a program.

2
New cards

Context Switch

The process of storing the state of a thread so that it can be resumed later, including saving and restoring register states.

3
New cards

Thread Control Block (TCB)

Data structure used by the operating system to store all the information about a thread.

4
New cards

Race Condition

A situation where the outcome of a program depends on the sequence or timing of uncontrollable events, leading to unpredictable results.

5
New cards

Critical Section

Part of a program that accesses a shared resource and must not be executed by more than one thread at a time.

6
New cards

Mutex (Mutual Exclusion)

A synchronization primitive that is used to provide mutual exclusion in concurrent programming.

7
New cards

Condition Variable

A synchronization construct that allows threads to wait until a particular condition occurs.

8
New cards

Atomic Operation

An operation that completes in a single step relative to other threads; it is indivisible and uninterruptible.

9
New cards

Pthread

POSIX standard for threading, providing a set of APIs for managing threads in C/C++.

10
New cards

Blocking

A state where a thread is waiting and cannot proceed until certain conditions are met.

11
New cards

Parallelism

The simultaneous execution of multiple threads to improve performance and resource utilization.

12
New cards

Spin Lock

A locking mechanism where a thread continuously checks for a lock to become available.

13
New cards

Futex

Fast user-space lock mechanism used in Linux, allowing threads to sleep and wake efficiently.

14
New cards

Two-Phase Lock

A locking mechanism that includes a spinning phase followed by a sleeping phase if the lock is not acquired.

15
New cards

Thread Creation

The process of starting a new thread of execution in a program.

16
New cards

Join Operation

A method used to wait for a specific thread to complete its execution.