diff options
author | Richard Braun <rbraun@sceen.net> | 2017-07-25 20:32:39 +0200 |
---|---|---|
committer | Richard Braun <rbraun@sceen.net> | 2017-07-25 20:32:39 +0200 |
commit | cdb1aa3fc9b7865481177e3f80f4565c941e541b (patch) | |
tree | fa16067703092d4aa2636a58b71283bc36ffe2b5 /doc | |
parent | 068796c5b7f8b1a21b09a18a8b66447c160df24d (diff) |
doc/intro(9): improve description of mutex implementations
Diffstat (limited to 'doc')
-rw-r--r-- | doc/intro.9.txt | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/doc/intro.9.txt b/doc/intro.9.txt index 8d9bb87e..e3dcfa3c 100644 --- a/doc/intro.9.txt +++ b/doc/intro.9.txt @@ -105,17 +105,23 @@ module:kern/work:: Mutex implementations ~~~~~~~~~~~~~~~~~~~~~ -In order to best satisfy either performance or real-time needs, the -kernel provides multiple mutex implementations. Note that, whatever -implementation is chosen, the *rtmutex* module is always available. -The mutex implementations are : +In order to best satisfy either overall performance or latencies, the +kernel provides several mutex implementations for the interface provided +by the *mutex* module. Note that, whatever implementation is selected, +the *rtmutex* module is always available. The mutex implementations are : module_mutex:adaptive:: - Adaptive spinning mutex. + Adaptive spinning mutex, spinning instead of sleeping if the owner + is running, in the hope the critical section is short and the mutex + will be unlocked soon, to avoid expensive sleep/wakeup operations. + This implementation should improve overall performance at the cost + of increased latencies. module_mutex:pi:: - Real-time mutex with priority inheritance. + Real-time mutex with priority inheritance. This implementation is a + wrapper in front of the *rtmutex* module. It should improve latencies + at the cost of overall performance. module_mutex:plain:: - Default mutex. + Default mutex, immediately sleeping on contention. [[generic_development_tools]] GENERIC DEVELOPMENT TOOLS |