The correct answer is option 3.
Concept:
A semaphore is a variable or abstract data type used to control access to a common resource by multiple threads and avoid critical section problems in a concurrent system such as a multitasking operating system.
Explanation:
Starvation is a problem that happens when high-priority processes continue to run while low priority processes are halted indefinitely. A continual stream of higher-priority processes in a densely loaded computer system can prevent a low-priority operation from ever receiving the CPU.
Indefinite blocking or starvation is a situation in which processes wait indefinitely within the semaphore. Indefinite blocking may occur if we remove processes from the list associated with a semaphore in LIFO (last-in, first-out) order.
Hence the correct answer is starvation.
Additional InformationCritical section:
The critical section is the section of code in which processes access and write to shared resources such as common variables and files. Because processes run continuously, any process can be interrupted in the middle of its execution.