summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorRichard Braun <rbraun@sceen.net>2017-07-25 20:32:39 +0200
committerRichard Braun <rbraun@sceen.net>2017-07-25 20:32:39 +0200
commitcdb1aa3fc9b7865481177e3f80f4565c941e541b (patch)
treefa16067703092d4aa2636a58b71283bc36ffe2b5 /doc
parent068796c5b7f8b1a21b09a18a8b66447c160df24d (diff)
doc/intro(9): improve description of mutex implementations
Diffstat (limited to 'doc')
-rw-r--r--doc/intro.9.txt20
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