1/15
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
What is a race condition?
It is when the outcome depends on the order of execution.
What is a critical section?
It is the part of the code that uses shared data.
What does mutual exclusion mean?
It means only one process or thread can enter at a time.
What does progress mean?
It means that if the system can move forward, someone must move forward.
What does bounded waiting mean?
It means no one should have to wait forever.
What is Peterson?
It is a classic theoretical solution for 2 processes.
What does a memory barrier do?
It prevents dangerous memory reorderings.
What does test-and-set do?
It is an atomic instruction used for locking.
What does compare-and-swap do?
It compares a value and changes it atomically.
What is a mutex?
It is a simple lock. It Protects a critical section by first acquire() a lock then
release() the lock
What is a semaphore?
It is a more general synchronization mechanism.
What is a monitor?
It is a more organized and safer form of synchronization.
What are condition variables?
They are used to wait and wake up inside a monitor.
What is liveness?
It means the system keeps making progress.
What is deadlock?
Everyone gets blocked and no one moves forward.
What is livelock?
Everyone keeps moving or reacting, but no progress is made.