Synchronization

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

1/49

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

50 Terms

1
New cards
A __________ exists when access to shared data is not controlled, potentially resulting in __________ data values.
race condition, corrupt
2
New cards
A __________ process is one that can affect or be affected by other processes executing in the system.
cooperating
3
New cards
A __________ section is a segment of code where a process may access and update shared data, and no two processes should be executing it at the same time.
critical
4
New cards
The three conditions that must be met for a solution to the critical-section problem are __________, __________, and __________.
mutual exclusion, progress, bounded waiting
5
New cards
The __________ operation of a semaphore decreases its value, and the __________ operation increases its value.
wait, signal
6
New cards
A __________ semaphore can only have values of 0 and 1, while a __________ semaphore can take unrestricted non-negative values.
binary, counting
7
New cards
The __________ problem occurs when multiple threads access and manipulate the same data concurrently, and the final result depends on the execution order.
race condition
8
New cards
A __________ kernel allows a process to be preempted while running in kernel mode, while a __________ kernel does not.
preemptive, nonpreemptive
9
New cards
In Peterson’s solution, the two shared variables used for synchronization are __________ and __________.
turn, flag
10
New cards
The __________ instruction atomically modifies a memory location and is commonly used in synchronization.
test_and_set
11
New cards
The __________ and __________ operations are the two fundamental operations used in implementing semaphores.
wait, signal
12
New cards
The mutual exclusion requirement states that if process Pi is executing in its __________ section, then no other process can be executing in their __________ sections.
critical, critical
13
New cards
The two general approaches used to handle critical sections in operating systems are __________ kernels and __________ kernels.
preemptive, nonpreemptive
14
New cards
A __________ is a data structure that maintains a list of processes waiting to enter a critical section.
waiting queue
15
New cards
The __________ problem arises when a low-priority process holds a resource needed by a high-priority process.
priority inversion
16
New cards
A __________ ensures that all load and store operations are completed before additional load and store operations occur.
memory barrier
17
New cards
A __________ lock is a mutual exclusion mechanism that uses busy waiting.
spin
18
New cards
The __________ operation suspends a process when it cannot proceed due to resource unavailability.
sleep
19
New cards
The __________ operation resumes execution of a suspended process.
wakeup
20
New cards
A system with multiple processors executing threads in parallel is known as a __________ system.
multiprocessor
21
New cards
A __________ process can directly share a logical address space with other processes.
cooperating
22
New cards
The __________ section of a process requests permission to enter the critical section.
entry
23
New cards
The __________ section of a process executes after exiting the critical section.
remainder
24
New cards
__________ is the requirement that a process should not wait indefinitely to enter its critical section.
bounded waiting
25
New cards
The __________ model determines how memory modifications by one processor are visible to others.
memory
26
New cards
The __________ problem is solved by ensuring that only one process can access shared data at a time.
critical-section
27
New cards
__________ synchronization tools provide higher-level methods for process coordination.
software-based
28
New cards
A process executes the __________ operation on a semaphore to decrement its value before proceeding.
wait
29
New cards
A process executes the __________ operation on a semaphore to increment its value and wake up a waiting process.
signal
30
New cards
The __________ of a process refers to its position in the system’s scheduling order.
priority
31
New cards
The __________ algorithm is a software-based solution to the critical-section problem for two processes.
Peterson’s
32
New cards
The __________ problem can be prevented by ensuring that processes take turns entering their critical sections.
race condition
33
New cards
The __________ variable is used in Peterson’s solution to determine which process enters the critical section first.
turn
34
New cards
The __________ instruction is an atomic operation that swaps the contents of two memory locations.
compare_and_swap
35
New cards
The __________ scheduling method selects the next process based on priority.
priority-based
36
New cards
The __________ data structure is used by semaphores to keep track of waiting processes.
queue
37
New cards
A __________ lock is a simple software tool used for mutual exclusion.
mutex
38
New cards
The __________ technique allows waiting processes to be placed in a queue rather than using busy waiting.
blocking
39
New cards
The __________ function is used to acquire a mutex lock before entering the critical section.
acquire
40
New cards
The __________ function is used to release a mutex lock after exiting the critical section.
release
41
New cards
The __________ operation ensures that a thread’s access to a shared resource does not interfere with others.
synchronization
42
New cards
A __________ system must be carefully designed to avoid deadlocks and ensure fair process execution.
concurrent
43
New cards
The __________ technique prevents busy waiting by putting waiting processes to sleep.
blocking
44
New cards
The __________ section contains code that is executed when a process finishes using a shared resource.
exit
45
New cards
The __________ section of a process follows the critical section and performs clean-up operations.
exit
46
New cards
The __________ technique avoids starvation by ensuring each process gets a turn to execute.
fair scheduling
47
New cards
The __________ method ensures that higher-priority processes are not indefinitely delayed by lower-priority processes.
priority inheritance
48
New cards
A __________ is a data structure used to store and manage a list of active processes.
process table
49
New cards
The __________ method of synchronization ensures that no process is starved of resources.
fair scheduling
50
New cards
The __________ is a high-level synchronization tool used to avoid timing errors in concurrent programming.
monitor