# Operating System MCQ

## CPU Scheduling

Q.1 There are five jobs, A, B, C, D, and E, waiting in the ready queue. Their expected runtimes are 80, 60, 10, x, and 40. Suppose all the jobs are entered in the ready queue at the same time. Find the order of the jobs scheduled by the scheduler such that the average response time is minimized if 40 > x > 10.

1. C, E, D, B, A
2. B, A, E, C, D
3. C, D, E, B, A
4. C, B, A, D, E

Ans. (c)

Explanation – The average response time is the average of the difference between the arrival time and the time when the job gets the CPU for the first time.

Average response time = ∑ (Arrival time of each job – The time when they get the CPU for the first time) / Number of jobs

The shortest job first algorithm is the way to minimize the average response time:

Suppose all the possible values of x

If 0 < x <= 10, then the order of the jobs will be D, C, E, B, A

If 10 < x <= 40, then the order of the jobs will be C, D, E, B, A

If 40 < x <= 60, then the order will be C, E, D, B, A

If 60 < x <= 80, then the order will be C, E, B, D, A

If x > 80, then the order will be C, E, B, A, D

Hence, the answer is C, D, E, B, A

Q.2 Consider the following data:

The round-robin scheduling algorithm is applied on the given with time quantum = 2 units. The time taken in context switching is 1 unit. What are the completion time and turnaround time of process P5?

1. 24 units and 18 units
2. 22 units and 17 units
3. 23 units and 17 units
4. 23 units and 18 units

Ans. (d)

Explanation: Given, Time quantum (TQ) = 2 units,

Time in context switching = 1 unit

The Gant chart will be like this:

Here, ࢚ represents the context switch.

Completion Time of P5 = 23 units

Turnaround time of P5 = CT – AT = 23 – 5 = 18 units

Hence, the correct answer is 23 units and 18 units.

Q.3 Match the following options

1. 1-C, 2-B, 3-D, 4-A
2. 1-C, 2-D, 3-B, 4-A
3. 1-C, 2-B, 3-A, 4-D
4. 1-B, 2-C, 3-D, 4-A

Ans. (a)

Types of CPU Scheduling algorithms

SRTF (Shortest remaining time first) – It minimizes the average waiting time and average turnaround time.

Round Robin – Each process is executed after another for a fixed interval of time called time quantum.

Priority Scheduler – The process of higher priority gets executed first.

First come first serve – As the name suggests, the process that arrives first gets executed first.

Hence, the correct answer is 1-C, 2-B, 3-D, 4-A.

Q.4 Consider the following data,

Assume that the shortest remaining time first (SRTF) is used. Calculate the average waiting time.

1. 6.50 units
2. 7.00 units
3. 6.25 units
4. 7.50 units

Ans. (c)

Explanation: The shortest remaining time first algorithm is used, the Gant chart will look like this

From the above Gant chart, we can find the completion time (CT), turnaround time (TAT), and waiting time (WT).

Average waiting time = (9+0+14+2)/4 = 6.25 units

Q.5 A system has 20 processes, assume that they all spend 80%time waiting in the system. Find the CPU utilization (in percentage).

1. 99
2. 97
3. 96
4. 98

Ans. (a)

Explanation: The CPU utilization is equal to 1-p^N, where N is the number of processes and p is the waiting fraction.

Here, N = 10 and p = 0.80

CPU utilization = 1 – (0.80)^ 20 = 1 – 0.01 = 0.99

Hence, the correct answer is 99 percent.

Q.6 Which of the CPU scheduling algorithms ensures the least average waiting time.

1. Longest remaining time first (LRTF)
2. Round Robin
3. Shortest Job First (SJF)
4. Priority Scheduling

And. (c)

Explanation: Shortest job first has the least average waiting time as it is the optimal scheduling algorithm.

Q.7 Which of the statement is False:

1. SRTF may cause starvation
2. Preemptive scheduling algorithm may cause starvation
3. Longest remaining time first does not cause starvation
4. Response time is better in the First come first serve algorithm than in the Round Robin

Ans. (d)

Explanation:a) SRTF may cause starvation for the processes with high burst time

b) Preemptive may also cause starvation for the processes with low priority

c) Longest remaining time first does not cause starvation

d) Round-robin is better than the FCFS in terms of response time.

Q.8 Assume three processes start at the same time. The first 30% of the time was spent on the input-output process, and the rest 80% of the time was spent on computing. Each process takes 40, 60, and 80 units from start to end. The first come first serve algorithm is used. How long does the CPU remain idle if all the input-output processes are overlapped?

1. 10
2. 8
3. 12
4. 6

Ans. (b)

Explanation: Consider the three processes, P1, P2, and P3, and their BT is 32, 48, and 64 units, respectively.

Time spent by P1, P2, and P3 on input-output is 8, 12, and 16 units, respectively.

Hence, the correct answer is 8 units.

Q. 9Which of the combination of scheduling algorithms may cause starvation:

1. Round Robin and First Come First Serve
2. FCFS and Multilevel feedback queue
3. LRTF and RR
4. Priority and SJF

Ans. (d)

Explanation:Starvation is caused by SJF, SRTF, LJF, Priority, and Multilevel feedback queue.

Hence, the correct answer is Priority and Shortest Job First (SJF).

Q. 10 Consider the following data:

If the shortest remaining time first is used, calculate the average waiting time and average turnaround time.

1. 4 units and 7 units
2. 3 units and 8.1 units
3. 4 units and 6 units
4. 4 units and 7.1 units

Ans. (d)

Explanation: Shortest remaining time first is used, the Gant chart will look like this:

Form the above Gant chart, we can find the CT, TAT, and WT.

Average Turnaround time = (19 + 12 + 4 + 1 + 5 + 2)/6 = 7.1

Average Waiting Time = (12 + 7 + 1 + 0 + 3 + 1)/6 = 4

Hence, the correct answer is 4 units and 7.1 units.

Q. 11 Consider the following data of three processes arrive at the same time.

Find the average waiting time if the Round Robin is used with a time quantum of 50 units.

1. 258
2. 260
3. 256
4. 257

Ans. (d)

Explanation: Round Robin with a time quantum of 50 units is used, The Gant chart will look like this:

We can find the completion time and waiting time from the above Gant chart.

CT of P1 = 510,        Waiting time of P1 = CT – BT = 510 – 250 = 260

CT of P2 = 360,        Waiting time of P2 = CT – BT = 360–110 = 250

CT of P3 = 410,        Waiting time of P3 = CT – BT = 410 – 150 = 260

Average Waiting Time = (260+250+260)/3 = 256.66667 = 257

Q.12   Which of the following algorithm is a non-preemptive CPU scheduling algorithm?

1. Round Robin
2. First Come First Serve
3. Multilevel Queue Scheduling
4. Multilevel Queue Scheduling with Feedback

Ans. (b)

Explanation: a) In Round-Robin, Preemption occurs when the time quantum expires.

b) In the First come first server, preemption does not occur; context switching happens only when a process completes its execution.

c) In the Multilevel Queue Scheduling, preemption occurs when a process with higher priority arrives.

d) In the Multilevel Queue Scheduling with feedback, preemption occurs when a process with higher priority arrives or when the quantum of the high priority queue expires

Q. 13  Four processes arrive at time zero. Their burst times are given below:

If the shortest job first is used, what is the response ratio of process C?

1. 16
2. 0.25
3. 0.5
4. 1

Ans. (b)

Explanation: Response ratio = Burst time / Turnaround time

The Gant chart for the following will look like this:

We can find the completion and turnaround time for process C from the above Gant Chart.

CT = 24

TAT = CT – AT = 24 – 0 = 24

Response ratio = 8/24 = 0.25

Hence, the correct answer is 0.25.

Q. 14  Consider the following data of four processes arrive at time zero.

Priority scheduling is used, and a higher priority ID means higher priority for that process. Calculate the average waiting time and average turnaround time.

1. 8, 12
2. 6.75, 10.75
3. 6.25, 10.25
4. 7.50, 8.25

Ans. (b)

Explanation: Given, priority scheduling is used. The Gant Chart for the same will look like this.

We can find the completion and turnaround time from the above Gant chart:

Average TAT = (10+16+3+14)/4 = 10.75

Average WT = (3+14+0+10)/4 = 6.75

Hence, the correct answer is 6.75 and 10.75.

Q. 15  Round Robin is used on the given data. What is the completion time of process C if the time quantum is 2 units?

1. 17
2. 18
3. 19
4. 24

Ans. (b)

Explanation: Given that, Round robin is used with a time quantum of 2 units. The Gant chart for the following will look like this.

The completion time of process C is 18.

Q. 16  Which the following statement is/are False:

1. Starvation could not occur on an OS with non-preemptive scheduling
2. Starvation could occur on an OS with preemptive scheduling
3. The deadlock could not occur on an OS with non-preemptive scheduling
1. 1 and 2
2. 1 and 3
3. Only 1
4. Only 3

Ans. (b)

Explanation: 1. Starvation could not occur on an OS with no-preemptive scheduling. (False)

2. Starvation could occur on an OS with preemptive scheduling (True)

3. The deadlock could not occur on an OS with non-preemptive scheduling (False)

Q. 17 Consider a system with four processes and four resources of the same type available. If each process requires a maximum of two resources. Which of the statement is correct?

2. Thrashing
3. Starvation may occur
4. Deadlock never occurs in the system

Ans. (a)

Explanation: Given that, the system has four processes and three resources. Each process requires a maximum of 2 resources. Assume that each process holds one resource and request for the other one to start processing. Hence, the circular wait condition is satisfied, and the system turns to deadlock. Let P1, P2, P3, and P4 be the four processes.

Q. 18 Dissatisfying hold and wait to prevent deadlock causes

2. Both Deadlock and Starvation free
3. Starvation may occur but deadlock-free
4. Deadlock may happen, but starvation free

Ans. (c)

Explanation: By dissatisfying hold and wait, the process must get all the resources before execution and must release all the resources after completion. This causes starvation for other processes.

Q. 19 Two Concurrent processes A and B wants to use resource R1 and R2 in a mutually exclusive manner. Initially R1 and R2 are free. The statements of the processes are given below.

Is mutual exclusion guaranteed for R1 and R2? If not then show a possible interleaving of the statements of P1 and P2 such that mutual exclusion is violated.

1. Mutual Exclusion is not guaranteed
2. Mutual Exclusion is guaranteed
3. Can’t say
4. None of the above

Ans. (a)

Explanation: Given that initially R1 and R2 are free. Now, consider process A run the statement 1 and context switch occur process B run the statement S1 and S2 and set the R1 = Busy and again context switch occurs. Now, Process A run the statement S2 and set the R1 = Busy which was already set by the process B. Following the same steps for the statements S3 and S4 for both the processes. After this, both the process tries to run S5 i.e., use R1 and R2 at the same time. Hence, Mutual Exclusion is not guaranteed.

Hence, the correct answer is option a.

Q. 20 Consider a system having n resources of the same type. These resources are shared by four processes P1, P2, P3, and P4 and they need a maximum of 4, 5, 3, and 7 resources, respectively. For what value of n the deadlock will never occur.

1. 8
2. 15
3. 19
4. 16

Ans. (d)

Explanation: Maximum requirements of each process are 4, 5, 3, and 7. Allocate the resources one less than the maximum requirement for each process.

Resources allocated to process

P1 = 3

P2 = 4

P3 = 2

P4 = 6 Allocated resource = 15, this may lead to deadlock. To prevent deadlock, we need to full fill the requirement of at least one process. For that, we need one more resource. Hence the value of n will be 16.

Q. 21 Consider a system having15 processes, and each process requires a maximum of 4 resources. If P is the maximum number of resources for the system to be in deadlock and Q is the minimum number of resources for the system to be free from deadlock.

Calculate the value of P and Q.

1. P = 60 and Q = 61
2. P = 45 and Q = 46
3. P = 44 and Q = 46
4. P = 46 and P = 45

Ans. (b)

Explanation: Given that there are 15 processes and each requires a maximum of 4 resources.

For the system to be in deadlock, we need to allocate resources one less than the maximum requirements.

P = no. of processes * (maximum requirement – 1)

P = 15 * 3 = 45

For the system to be deadlock-free, we need to full fill the requirement of at least one process.

Q = P + 1 = 46

Hence, b is the correct answer.

Q. 22Consider a system having 5 processes sharing 16 instances of a resource. The maximum need and current allocation of the resource are given below: (Question Type MSQ, i.e., more than one option can be correct)

With reference to the current allocation, is the system safe? And if yes,then what is/are the correct sequences for the safe system?

1. No
2. Yes, D, E, C, B, and A
3. Yes, D, E, A, C, and B
4. Yes, D, E, C, A, and B

Ans. (b, c, and d)

Explanation: From the given data, we can find the current need and instances available

Total instances = 16

Allocated = 12

Available = 16 – 12 = 4

At this stage, we can only full fill the requirement of process D. Allocating the available resources to process D after completing the execution it will release all the instances and we will have 6 instances. Here, we allocate it to process E and it will release all the instances after execution and we will have 8 instances. Here, we can allocate it to processes C and A both. On allocating the resources to process A, there will one safe sequence which is D, E, A, C, and B. On the other hand, when we allocate the resource to the process C, we will have two safe sequences which are D, E, C, A, and B and D, E, C, B, and A.

Hence, option b, c and d are correct.

Q.23 Consider a system having nine processes from P1 to P9 and seven resources from R1 to R7. The allocation of resources and requests are given below in the table.

With reference to the above data, which processes are deadlocked?

1. P1, P2, and P3
2. P3, P5, and P9
3. P1, P2, and P6
4. P1, P2, and P5

Ans. (c)

Explanation: We can clearly see this in the resource allocation graph given below. Processes P2, P2, and P6 form a circular graph. Here, the condition of circular wait is satisfied. Hence, c is the correct answer.

Q. 24 A system having four processes and 200 instances of a resource. The maximum demand and allocated instances are given below in the table.

For what value/s of x and y the system will be in deadlock? (Question type MSQs)

1. x = 80 and y = 20
2. x = 40 and y 30
3. x = 60 and y = 20
4. x = 50 and y = 30

Ans. (d)

Explanation: Taking the value of x = 50 and y = 30. Now, calculating the current need of each process and instances available.

Instances allocated = 60+40+50+30 = 180

Instances available = 200-180 = 20

Here, We can full fill the demand of any process for x = 50 and y = 30. Hence, d is the correct answer.

Q. 25 Banker’s Algorithm is applied in a system for

Ans. (b)

Explanation: The Banker’s algorithm is used for deadlock avoidance

Q. 26 Consider a system having four processes sharing N instances of a resource. The maximum requirements of each process are 7, 5, 9, and 12. What is the minimum value of N for which system will never be in deadlock?

1. 33
2. 32
3. 29
4. 30

Ans. (d)

Explanation: The minimum value of N = (7-1) + (5-1) + (9-1) + (12-1) + 1 = 30. Hence, the correct answer is option d.

Q. 27 Consider a system having four processes sharing three resources R1, R2 and R3. R1 has 6 instances, R2 has 11 instances and R3 has 8 instances. Suppose at time zero, following snapshot of the system has been taken.

With reference to above data. What are the possible safe sequences of processes? (Question type MSQs)

1. P2, P4, P1, P3 and P2, P4, P3, P1
2. P1, P4, P3, P2 and P1, P2, P3, P4
3. P4, P2, P1, P3 and P4, P2, P3, P1
4. None

Ans. (a) and (c)

Explanation: We can find the current need of each process from the above data by subtracting the allocated instances from maximum need.

Here, We can full fill the demand of both P2 and P4 processes. So, there will be two orders P2, P4 and P4, P2. We can allocate either to P2 first or P4 first.

On allocating the resource to P2:

After complete execution of process P2 it will release all the instances.

Available Resources would be:

Here we can only full fill the demand of process P4

After complete execution of P4. It will also release all the instances. And

Available resources would be

Here, We can full fill the demand of process p1 and P3 both. So, it will depend on us to which process we are allocating the resources. And we will have two orders here to P1, P3 and P3, P1.

The possible safe sequences are (P2, P4, P1, P3), (P2, P4, P3, P1), (P4, P2, P1, P3), and (P4, P2, P3, P1). Hence, options a and c both are correct.

Q. 28 Consider a system with 4 processes P1, P2, P3, and P4 and 3 resources R1, R2, and R3. The maximum need and current allocation are given below in the table.

Let X = a + b + c. What is the minimum value of X for which the system is safe?

1. 4
2. 5
3. 3
4. 9

Ans. (a)

Explanation: Calculating the current need of each process:

Possible values of a, b, and c are (3, 0, 1), (2, 0, 2), (2, 0, 3) and (3, 2, 4)

Taking a = 3, b = 0, c = 1.

We can full fill the need of process P4.

After execution it will release all the resources.

Current Available: a = 3+1 = 4, b = 0+1 = 1, c = 1+1 = 2.

Now, we can full fill the demand of process P2.

After execution P2 will release all the resources.

Current available: a = 4+0 = 4, b = 1+1 = 2, c = 2+1 = 3

Here, we can full fill the demand of process P3.

After execution P3 will release all the resources.

Current available: a = 4+1 = 5, b = 2+0 = 2, c = 3+1 = 4

Now, we can full fill the demand of process P4.

Hence the minimum value of X = 3+0+1 = 4.

Q. 29 Consider a system with four processes P1, P2, P3, and P4 are sharing three resources R1, R2, and R3. The maximum need and current allocation is given below in the table:

Which of the following options is/are correct? [Question Type MSQ]

1. a = 2, b = 0, and c = 2, only one possible safe sequence
2. a = 2, b = 1, and c = 2, only two possible safe sequences
3. a = 1, b = 1, and c = 3, only two possible safe sequences
4. None of the above

Ans. (a) and (b)

Explanation:Calculating the current need of each process

Option (a) will give only one possible safe sequence which is P2, P3, P4, P1.

Option (b) will give only two possible safe sequences which are P2, P3, P1, P4 and P2, P3, P4, P1.

Option (c) will give only one possible safe sequence which is P4, P2, P3, P1.

Hence the correct answer is (a) and (b).

Q. 30 Consider a system with four processes and each process can maximum demands k instances of a resource to complete their execution. What is the minimum number of resources required to prevent the deadlock?

1. 4k – 1
2. 4k + 1
3. 4k – 4
4. 4k – 3

Ans. (d)

Explanation: To prevent deadlock allocate resources to each process one less than their maximum demand. After this full fill the demand of at least one process.

Minimum no. of resources required = (k-1) + (k-1) + (k-1) + (k-1) + 1 = 4k – 3. Hence, d is the correct answer.

Q. 31 The wait for graph is a deadlock detection algorithm that is applicable when _____________

1. All resources have multiple instances
2. All resources have a single instance
3. A few resources have multiple instances
4. None of the above

Ans.  (b)

Explanation: The wait for graph algorithm is only applicable when al the resources have only single instances and it can not work when the resources have multiple instances.

Q. 32 Which of the following is not involved in preventing the deadlock?

1. No Mutual exclusion
2. No “hold and wait”
3. No circular wait
4. No preemption

Ans. (d)

• Mutual Exclusion
• Hold and Wait
• Circular wait
• No preemption

“No Preemption” not occurs to prevent deadlock.

Hence, d is the correct answer.

## Process Synchronization

Q. 33 Consider two programs P1 and P2

Here, x1 and x2 are two semaphore initially initialized to one and p and q are two shared variable. Which of the following option is correct for the above given data?

2. Mutual Exclusion
3. Progress

Ans. (a)

Explanation:

Both the process will start running concurrently

On line number 3, process p1 will wait on x1, and will change the value of x1 = 0. Also process p2 will wait on x2, and will change the value of x2 = 0.

Both the process will enter in their critical section

On line number 4, both the processes p1 and p2 will infinitely wait on x2 and x1 respectively. Hence, the deadlock will occur.

Q. 34 Consider two programs A and B

Assume that the both the a and b were initialized to zero. Which of the given option is true for the above given Snippet?

1. It satisfies Mutual exclusion but not progress
2. It satisfies Progress but not Mutual exclusion
3. It does not satisfy both mutual exclusion and progress
4. It satisfies both mutual exclusion and progress

Ans. (b)

Explanation: As the a and b both are initialized to zero, both the processes can enter in the critical section at the same time hence, there is no mutual exclusion but it satisfies the progress.

Q. 35 Consider two processes A and B, their code snippet if given below

If initially flag[i] = false and flag[j] = false, which of the following option is/are correct? [Question types MSQ]

1. Achieves Mutual Exclusion
2. Achieves Progress
3. Involves busy waiting
4. Do not achieve bounded waiting

Ans. (a), (b), and (c)

Explanation: The above question is based on the Peterson’s solution, where Mutual exclusion, bounded wait and progress is achieved but it involved busy waiting. Hence, option a, b and c are correct.

Q. 36 Peterson’s solution of process synchronization satisfies which of the following condition/s?

1. Mutual Exclusion
2. Progress
3. Bounded wait
4. All of the above

Ans. (d)

Explanation: The Peterson’s Solution of process synchronization satisfies mutual exclusion, progress and bounded wait but also involves busy wait.

Q. 37 Decker’s Algorithm of process synchronization satisfies the following condition

1. Mutual Exclusion
2. Progress
3. Bounded wait
4. Both a and c

Ans. (d)

Explanation:Decker’s Algorithm satisfies mutual exclusion and bounded wait but not progress.

Q. 38 The Lock variable method of process synchronization do not satisfy the following condition

1. Mutual Exclusion
2. Progress
3. Bounded wait
4. Both a and c

Ans. (d)

Explanation: The Lock Variable method only satisfies the condition of progress and do not satisfy mutual exclusion and bounded wait.

Q. 39 The test and set lock method do not satisfy which of the following condition?

1. Mutual Exclusion
2. Progress
3. Bounded wait
4. None of the above

Ans. (c)

Explanation: The test and set lock method satisfies mutual exclusion and progress and do not satisfy bounded wait.

Q. 40 Which of the following synchronization method satisfies mutual exclusion and bounded waiting but not progress?

1. Peterson’s Solution
2. Decker’s Algorithm
3. Lock Variable
4. Test and Set Lock Method

Ans. (b)

Explanation: a) Peterson’s solution satisfies all mutual exclusion, progress and bounded wait.

b) Decker’s Algorithm satisfies mutual exclusion and bounded wait but not progress.

c) Lock variable satisfies only progress not mutual exclusion and bounded wait.

d) Test and Set Lock variable satisfies mutual exclusion and progress but not bounded wait. Hence, the correct option is (b).

Q. 41 Starvation occurs in

1. Binary semaphore
2. Counting semaphore
3. None
4. Both

Ans. (a)

Explanation: In binary semaphore, only one process can enter in the critical section and there is not time limit on how long a process can be run. This makes other processes starve.

Q. 42 Consider a semaphore A, initialized with value 50. What should be the value of A when p() and v() functions is called on s for 23 and 11 times respectively.

1. 38
2. 16
3. -16
4. None of the above

Ans. (a)

Explanation:

P() refers to wait() which reduces the value of semaphore by 1 and v() refers to signal() which increase the value of semaphore by 1.

S = 50 – 23 + 11 = 38

Hence, (d) is the correct answer.

Q. 43 Which of the following process synchronization method is/are implemented in user mode?

1. Peterson’s Solution
2. Lock variable
3. Strict Alternation
4. All the above

Ans. (d)

Explanation: All the above methods are implemented in user mode as they do not require hardware support.

Q. 44 Define critical section

1. A program segment where shared resources are accessed
2. A program segment which is error free
3. A program segment which is never executed
4. None of the above

Ans. (a)

Explanation: Critical section is the program segment where the shared resources are accessed.

Q. 45 Consider the following programs

Here, s is the binary semaphore shared by both the processes. If s is initialized to zero, which of the following option is true?

1. It satisfies Mutual Exclusion
2. It satisfies Progress
3. Both (a) and (b)
4. None of the above

Ans. (a)

Explanation: It satisfies the mutual exclusion as only one process can enter in the critical section at a time. But due to strict alternation, it does not satisfy the progress.

Q. 46 Consider the following two process

Here, S1 and S2 are two shared variables initially initialized to zero. Which of the following statement is true?

1. No mutual exclusion and no deadlock
2. Progress but not mutual exclusion
4. Mutual exclusion and no deadlock

Ans. (a)

Explanation: As both the processes can enter in their critical section at the same time. Hence, it does not satisfy mutual exclusion.

Q. 47 Assume that at a given instant the value of the semaphore is equal to the -n. Which of the following information can be deduced from the above statement?

1. The number of processes present in the critical section is equal to n
2. The number of processes blocked and waiting in the queue to access the critical section is equal to n
3. The value of semaphore can’t be negative, it has only positive values
4. None of the above

Ans. (b)

Explanation: The given statement clearly denotes that the number of blocked processes is equal to n. Hence, (b) is the correct answer.

Q. 48 Consider the two processes given below

Here s1 and s2 are two binary semaphores initialized to 1. Which of the following options holds true for the execution of the above processes?

1. Mutual exclusion
3. Starvation

Ans. (b)

Explanation:On line one, process A waits on s1 and make s1 = 0 and preempted. Now, the process B waits on s2 and make s2 = 0. Here, both the semaphores are equal to zero. Hence, no process can enter in their critical section and deadlock occur.

Q. 49 Consider the two concurrent processes

Here, x is the shared semaphore and initialized to zero. Consider the following options:

1. It is possible that the P1 can starve
2. It is possible that the P2 can starve

Which of the option is/are true?

1. Only I is true
2. Only II is true
3. Both I and II are true
4. Both I and II are false

Ans. (c)

Explanation:Here, both the processes can run infinite number of times and make other program starve.

Q. 50 The critical section of other programs should not be executed while the critical section of another is being executed. What is this relation of processes called?

1. Progress
2. Mutual Exclusion
3. Multiprogramming