Read-write locks, Operating System

Assignment Help:

Consider a large web-based database. In some sense, Google is sort of like this. There might be many users who want to read from the database, but only a few users who are allowed to write to the database. If we use standard locks to control access to the database, the application will be much slower than it could be with a more clever type of lock.

Suppose we have one object that is shared among several threads. Suppose also that each thread is either a reader or a writer. Readers only read data but never modify it, while writers read and modify data. If we know which threads are reading and which ones are writing, what can we do to increase concurrency?

First, we have to prevent two writers from writing at the same time. In addition, a reader cannot read while a writer is writing. There is no problem, however in allowing lots of readers to read at the same time. Read-write locks achieve this, and can greatly improve performance for this sort of application.

Note that the lock is the same for both readers andwriters (called 'rw' in the slides), but the readers use an rlock() on the lock and writers use a wlock() on the same lock. Writers requesting a wlock() will have to wait until all readers and writers have released the lock. Readers requesting a rlock() can acquire it even if other readers are holding the lock. Readers however will still have to wait until any writer holding the lock releases the lock.


Related Discussions:- Read-write locks

List two types of system directories, List two types of system directories ...

List two types of system directories A) Device directory:- Describing physical properties of files. B) File directory :- Giving logical properties of the files.

What is an effector process, What is an effector process? The effector ...

What is an effector process? The effector process is a method that verifies itself.The effector process exists in particular criteria.

define system calls, When a computer is started on, the program that execu...

When a computer is started on, the program that executed first is named the ''operating system.'' It controls pretty much all applications in the computer. This adds who logs in, h

Explai basic concepts of demand paging, Basic concepts When a process i...

Basic concepts When a process is to be changed in, the pager guesses which pages will be used before the process is changed out again. Instead of swapping in a entire process,

What is busy waiting?, What is busy waiting? When strict alteration is ...

What is busy waiting? When strict alteration is done there may take place situation like two processes setting their flag as true. Therefore both of the processes have equal pr

Write xeyes on command line, Ask question #Minimum 100 words accepteWrite a...

Ask question #Minimum 100 words accepteWrite an xeyes command to display a window that is: ? SIZE: ¦ 400 pixels wide ¦ 300 pixels tall ? LOCATION: ¦ 100 pixels from the right edge

Implement a network-transparent system, Q. What are two dreadful problems t...

Q. What are two dreadful problems that designers should solve to implement a network-transparent system? Answer: One such issue is making all the processors as well as storag

What do you mean by reference counts, Q. If each the access rights to an o...

Q. If each the access rights to an object are deleted the object can no longer be accessed. At this stage the object should also be deleted and the space it occupies should be ret

Evicting pages from physical memory, When do we write a page from physical ...

When do we write a page from physical memory back to the disk? In general, caches have two broad types of writing policies. One approach is a write-through cache. In this case,

What are the methods for handling deadlocks?, What are the methods for hand...

What are the methods for handling deadlocks ? The technique for handling the deadlocks are: We are able to use protocol to prevent or avoid the deadlock, make sure tha

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd