wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

semaphores in os

profile
Dia Jha
Aug 15, 2024
0 Likes
0 Discussions
73 Reads

In Operating Systems: Semaphores


Semaphors are one of the most important concepts in OS,it is mainly used to synchronise and control access on any concurrent process or threads. They protect against race conditions and make sure that multi-process environment uses resources effectively, and safely.


 1. Definition and Types


 A semaphore is a synchronization tool,that uses an integer value for controlling access to any shared resource. The semaphore can work after adjustment of its value by two atomic operations


– Wait (P of Proberen): Decreases the semaphore value. Is the value goes below 0 then until it becomes positive again, that process will be on hold.


- Signal (V or Verhogen): This processes signals increase the value of semaphore. if value is less then calls up blocked process.


There are two kind of semaphores:-


Binary Semaphore (Mutex): This can only take two values 0 and 1. It is used to do compliant access on one resource.


- Counting Semaphore: can yield any integer value and they are used to control access of a finite number of instances for a resource.


 2. Usage


Some of the scenarios using semaphores are as follows:


Mutex: mutual exclusion, which allows only a single process or thread to enter the critical section of the code.


- Resource Sharing: It manages access to a pool of identical resources—such as database connections.


Process Synchronization- It controls running of the processes in a certain order, it allows only specific operations to conduct at some time.


3. Implementation and Challenges


This signal is generally created in the kernel of an operating system and makes use of specific functions. Semaphores come with a few challenges out of the box:


On the other hand, Deadlocks can occur if processes are waiting indefinitely for a semaphore.


-Priority Inversion: Prevent a high-priority process from moving forward by a low-priorit.


– Starvation: Some processes may never get access to a semaphore if continuous acquisition of it is being done by other processes.


 4. The Pro 's and Con's 


- Advantages:


Simple but efficient synchronization mechanism.


Allows control over the execution of processes and access to resources.


- Disadvantages:


 Disadvantages- Difficult to implement correctly (deadlocks, priority inversion).


Semaphores are difficult to be debugged


Summary


Semaphores are used to synchronize or coordinate execution of process among themselves and helps lot in maintaining access / modification order of shared resources. Appropriate use of semaphores Improves the performance and reliability in multi-process environment.


Comments ()


Sign in

Read Next

INTERNET SECURITY

Blog banner

Deadlocks

Blog banner

'Positivity in life'

Blog banner

AI and cyber Security

Blog banner

Heart Fulness Meditation

Blog banner

BUFFER OVERFLOW_142

Blog banner

10 Amazing facts about Tokyo Ghoul

Blog banner

Challenges and risks in service operations

Blog banner

Jamming Attacks in Network Security: Disrupting Communication Signals

Blog banner

SMARTSHEET MANAGEMENT SYSTEM

Blog banner

I/O Buffering

Blog banner

Firewall / IDS Evasion Techniques

Blog banner

Creating Digitally Signed Document

Blog banner

First-Order Logic (FOL): The Foundation of Modern Logic

Blog banner

What is Virtual Memory

Blog banner

Virtual Memory

Blog banner

FASHION

Blog banner

Wiretapping

Blog banner

Memory Management in an Operating System

Blog banner

Is it important to follow all the trends that come up on social media?

Blog banner

How to Prepare Your Child for Their First Day of School?

Blog banner

An Overview of Virtual Machines

Blog banner

The Khan mehtab transforming the modular switches

Blog banner

IP ADDRESS

Blog banner

Memory management

Blog banner

De-Coding Love

Blog banner

STUDY OF SYSTEM HACKING TOOLS

Blog banner

Hey Aryan here

Blog banner

City of Mumbai (Bombay):

Blog banner

Service Strategy principles

Blog banner

Never give up

Blog banner

Consumer to consumer business mode

Blog banner

In the world of Technology...

Blog banner

Bulk E-mail software

Blog banner

Hypothesis Testing in Data Science

Blog banner

Virtual Machine

Blog banner

What is the point of living if we can die at any moment of our lives ?

Blog banner

Linux 94

Blog banner

Basic Security For SOAP Services

Blog banner

How Does SSO Works

Blog banner

India Digital Personal Data Protection Act, 2023

Blog banner

Race condition

Blog banner