wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

semaphores in os

profile
Dia Jha
Aug 15, 2024
0 Likes
0 Discussions
74 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

Os Virtual Memory

Blog banner

Process, process creation and process termination

Blog banner

Memory Hierarchy

Blog banner

The Joy of Giving: How Festivals Teach Children Empathy and Gratitude

Blog banner

Evolution of Operating Systems

Blog banner

Vulnerability Assessment

Blog banner

Why Travellers from Miami & Orlando Are Visiting Arcadia for Weekend Getaways?

Blog banner

Memory input output management

Blog banner

A-B-C of Networking: Part-1 (Basics)

Blog banner

Ethical Hacking

Blog banner

The Essential Guide to Dynamic Arrays vs. Linked Lists: Which to Use and When ?

Blog banner

Music is life

Blog banner

Exploring Virtual Machines and Computer Forensic Validation Tools

Blog banner

You'll get to know about Pankaj Negi

Blog banner

Be you

Blog banner

Why Friendship at Work is Important

Blog banner

Penetration Testing

Blog banner

Operating Systems

Blog banner

Cache memory

Blog banner

A Brief Review on Cyber Forensics and its Analysis Tool

Blog banner

Question

Blog banner

OS assignment 3

Blog banner

How to Avoid being a Victim of Cybercrime

Blog banner

Procedure For Corporate High-Tech Investigations

Blog banner

Multiprocessor and scheduling

Blog banner

bulk email software

Blog banner

Mumbaicha Dabbawalla

Blog banner

Microsoft powerpoint presentation

Blog banner

File management -disha parekh

Blog banner

Cyber Forensics in Healthcare: Protecting Patient Data and Preventing Breaches

Blog banner

The launch of UniMap by HERE

Blog banner

Direct Memory Access

Blog banner

What is service level Agreement?

Blog banner

10 Interesting Facts about Death Note

Blog banner

SECURITY VULNERABILITIES COUNTERMEASURES IN A SMART SHIP SYSTEM

Blog banner

Network Security Risks

Blog banner

Virtual Machine

Blog banner

“CONSISTENCY” in Social Media Marketing

Blog banner

MY MOST THRILLED TREK ..... BHAIRAVGAD

Blog banner

Dekkers Algorithm : Ensuring Safe Process Synchronization

Blog banner

Hypothesis Testing in Data Science

Blog banner

Importance of self defence for girls

Blog banner