Locking

From ReactOS Wiki
Jump to: navigation, search

The page Locking is a short article on something that should have a lot more information written on it.
If you know anything else about it, you are STRONGLY encouraged to add the information in. If you are unsure of proper formatting or style, add it to the talk page or this page itself as you think best and others will help.


Locking mechanisms allow two or more pieces of code that are executing (usually as separate threads) to have exclusive (or shared) access to a particular resource (usually a piece of memory). Locking can be totally exclusive, shared amongst a group of code and/or shared for read but exclusive for write. The most common locking mechanisms in the NT Kernel are the:

Lock Description
Spinlock
Queued Spinlock
Mutex
Fast Mutex
Guarded Mutex A dispatcher object in Windows NT 5.2 and higher. Similar to a Fast Mutex, it does not raise IRQL, but instead disables APCs for that thread by incrementing KTHREAD.ApcDisable.
Resource
Pushlock

See Also