what is the difference between semaphore, mutex &
spinlock?????



what is the difference between semaphore, mutex & spinlock?????..

Answer / guest

Kernel Locking Techniques
Semaphores in Linux are sleeping locks. Because they cause a
task to sleep on contention, instead of spin, they are used
in situations where the lock-held time may be long.
Conversely, since they have the overhead of putting a task
to sleep and subsequently waking it up, they should not be
used where the lock-held time is short. Since they sleep,
however, they can be used to synchronize user contexts
whereas spinlocks cannot. In other words, it is safe to
block while holding a semaphore.

A "mutex" (or "mutual exclusion lock") is a signal that two
or more asynchronous processes can use to reserve a shared
resource for exclusive use. The first process that obtains
ownership of the "mutex" also obtains ownership of the
shared resource. Other processes must wait for for the first
process to release it's ownership of the "mutex" before they
may attempt to obtain it.

The most common locking primitive in the kernel is the
spinlock. The spinlock is a very simple single-holder lock.
If a process attempts to acquire a spinlock and it is
unavailable, the process will keep trying (spinning) until
it can acquire the lock. This simplicity creates a small and
fast lock.

Is This Answer Correct ?    64 Yes 7 No

Post New Answer

More Linux AllOther Interview Questions

There are 4 network Interfaces, how can we find which one is Primary.

2 Answers  


what are the different types of Backups..?

6 Answers   IBM, SDG,


How do display error messages instantly when command fails?

4 Answers  


How to give 2 different gateway IP addresses for 2 different interfaces in same system ?

5 Answers   Toyota,


How do i check which nfs version I am using ????????

9 Answers   CybAge, IBM,






there are many IPC mechanisms available in Linux ? Which one is best to use and when ?

1 Answers   Broadcom,


why accounting Software does not support on linux?

5 Answers  


plz mention some interesting problems you faced and how you solved it?

0 Answers  


how do i check which package has installed some command suppose ls , mkdir or whatever ???

8 Answers  


My root password has been changed, how can i enter into the system without root password?

6 Answers  


What is the difference between Telnet and SSH?

17 Answers   Bayer, KTree,


My Linux server in the two lan card one lan card is ok working but second lan card after restart daily lan card deactivate and then manual activate then properly working but after restart repeat this problem.(Fedora O.S.) Pls tell me solved this problem.

4 Answers  


Categories