Process-Synchronization-aprogramming.pptx

NielLapinid19 7 views 30 slides Jun 08, 2024
Slide 1
Slide 1 of 30
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30

About This Presentation

This is all about programming


Slide Content

PROCEESS SYNCHRONIZATION

SYNCHRONIZATION HARDWARE WHEAN A PROCESS ENTERS A CRITICAL SECTION, IT IS GIVEN A LOCK WHICH THE PROCESS MUST RELEASE BEFORE THE PROCESS CAN EXIT THE CRITICAL SECTION.

MUTEX LOCKS MUTEX IS A LOCKING MECHANISM USED TO SYNCHRONIZE ACCESS TO A RESOURCE IN THE CRITICAL SECTION.

SEMAPHORES A SEMAPHORE IS A SIGNALING MECHANISM, AND A PROCESS CAN SIGNAL A PROCESS THAT IS WAITING ON A SEMAPHORE. SEMAPHORES MAKE USE OF THE WAIT[] AND SIGNAL[] FUNCTIONS FOR SYNCHRONIZATION AMONG THE PROCESSES.

BINARY SEMAPHORES BINARY SEMAPHORES CAN ONLY HAVE ONE OF TWO VALUES : 0 OR 1 .

COUNTING SEMAPHORES COUNTING SEMAPHORES CAN HAVE ANY VALUE AND ARE NOT LIMITED TO A CERTAIN AREA.

COUNTING SEMAPHORES ARE SET TO THE MAXIMUM AMOUNT OF PROCESSES THAT CAN ACCESS THE RESOURCE AT A TIME.

ADVANTAGES - ENSURES DATA CONSISTENCY AND INTEGRITY - AVOIDS RACE CONDITIONS - PREVENTS INCONSISTENT DATA DUE TO CONCURRENT ACCESS - SUPPORTS EFFICIENT AND EFFECTIVE USE OF SHARED RESOURCES

DISADVANTAGES - ADDS OVERHEAD TO THE SYSTEM - CAN LEAD TO PERFORMANCE DEGRADATION - INCREASE THE COMPLEXITY OF THE SYSTEM - CAN CAUSE DEADLOCKS IF NOT IMPLEMENTED PROPERLY

THANK YOU!

MULTIPLE CHOICE 1.) WHAT IS PROCESS SYNCHRONIZATION ? A. Ensuring that only one process runs at a time. B. Coordination of multiple processes to ensure correct and orderly execution. C. Scheduling processes based on their priority levels. D. Terminating processes that exceed their allocated time.

2.) WHICH OF THE FOLLOWING MECHANISMS CAN BE USED FOR PROCESS SYNCHRONIZATION? A. Mutual Exclusion B . Semaphore C. Mutex D. All of the above

3.) WHAT IS THE PURPOSE OF MUTUAL EXCLUSION A. Allowing multiple processes to access shared resources simultaneously B . Preventing multiple processes from accessing shared resources simultaneously C. Allowing processes to execute in any order D. None of the above

4.) WHAT IS A SEMAPHORE ? A. A synchronization primitive that allows multiple processes to access a shared resource simultaneously B . A synchronization primitive that provides a simple integer-based mechanism for process synchronization C. A synchronization primitive that ensures only one process can access a shared resource at a time D. A synchronization primitive used for inter-process communication but not for synchronization

5.) WHICH OF THE FOLLOWING OPERATIONS ARE TYPICALLY SUPPORTED BY SEMAPHORES ? A. Wait B . Signal C. Both Waitn and Signal D. None of the above

6.) IN THE CONTEXT OF PROCESS SYNCHRONIZATION, WHAT IS A RACE CONDITION ? A. A condition where multiple processes are competing to access the CPU B . A condition where the outcome of the execution depends on the relative timing of events C. A condition where a process terminates unexpectedly D. A condition where a process consumes excessive memory resources

7.) WHAT IS THE ROLE OF A MUTEX IN PROCESS SYNCHRONIZATION ? A. It allows multiple processes to access a shared resource simultaneously B . It ensures that only one process can access a shared resource at a time C. It schedules processes based on their priority levels D. It terminates processes that exceed their allocated time

8 .) WHAT DISTINGUISHES BINARY SEMAPHORE FROM COUNTING SEMAPHORE ? A. Binary semaphore: 0 or 1, Counting semaphore: multiple values B. Binary semaphore: mutual exclusion, Counting semaphore: signaling C. Binary semaphore: mutex , Counting semaphore: spinlocks D. No difference

9.) WHAT IS A FUNDAMENTAL REQUIREMENT FOR SYNCHRONIZATION MECHANISMS TO ENSURE CORRECTNESS IN CONCURRENT PROGRAMS ? A. Deadlock Avoidance B . Mutual Exclusion C. Priority Scheduling D. Memory Allocation

10.) Which synchronization requirement ensures that no two processes can simultaneously enter their critical sections? A. Atomicity B. Fairness C. Progress D. Mutual Exclusion