From 627ccd3d1ee8b14ffd76998da08d655c23485aa5 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Wed, 9 Sep 2020 15:52:22 +0000 Subject: Better prose for the mdev comparison --- doc/index.html | 31 ++++++++++++++++++------------- doc/mdevd.html | 4 ++-- 2 files changed, 20 insertions(+), 15 deletions(-) diff --git a/doc/index.html b/doc/index.html index 50ff20d..0d2c62b 100644 --- a/doc/index.html +++ b/doc/index.html @@ -62,24 +62,29 @@ by a supervision suite. (via putenv() and unsetenv()) to store uevent data for each event. This implies repeated allocations of -heap memory. By contrast, mdevd does not use its own environment, and -even does not use heap memory at all. +heap memory. By contrast, mdevd does not use its own environment - it +actually does not use heap memory at all. All the memory it uses is +committed (in the stack) at start time, and it will never grow during +its lifetime.
  • Better speed: mdev -d parses its config file for every event it receives, and has to perform expensive operations such as getpwnam() -every time it receives an event (which can add up to hundreds of time at boot!). -By contrast, mdevd parses its config file only once, when it starts - or when -it is told to read it again by a SIGHUP. So it processes events significantly -faster.
  • +every time it receives an event (which can add up to hundreds of times at boot!). +By contrast, mdevd only parses its config file when it starts - or when +it is told to read it again by a SIGHUP; the event processing is +streamlined, it does not involve any parsing or any kind of expensive +operation - so it is significantly faster.
  • Independence from busybox: mdev is part of the busybox software. It is an advantage -when Busybox is also used to provide other functionality, such as -coreutils or util-linux equivalents. However, some distributions find -that functionality lacking in compatibility, and choose to use alternatives -to busybox. In that case, having to use the whole busybox configuration -and build process just for mdev is a drawback, and the code is bigger than -it needs to be. mdevd, on the other hand, is independent software, and -building it is simple and does not pull in any unnecessary code.
  • +when busybox is also used to provide other functionality, such as +coreutils or util-linux equivalents. However, most distributions find +that functionality lacking in compatibility (for instance, the busybox +implementation of POSIX utilities is often non-conformant), and choose to +use alternatives to busybox instead. In that case, having to use the whole +busybox configuration and build process just for mdev is a drawback, and +the code that gets included in the mdev binary is bigger than it needs to be. +mdevd, on the other hand, is independent software, and building it is simple +and does not pull in any unnecessary code.
    diff --git a/doc/mdevd.html b/doc/mdevd.html index 911b770..e7231e2 100644 --- a/doc/mdevd.html +++ b/doc/mdevd.html @@ -41,8 +41,8 @@ a daemon: it's long-lived, and there is only one instance, reading a series of uevents and performing actions without forking; the configuration file is read and parsed only once. -
  • Even when mdev is run as a daemon (via the recent -d -option), there are technical advantages +
  • Even though mdev can now be run as a daemon, via the -d +option, there are still technical advantages to running mdevd over mdev.
  • -- cgit v1.2.3