Bug 105398 - Boot Linux faster by starting services in parallel
Boot Linux faster by starting services in parallel
Status: CLOSED DUPLICATE of bug 104706
Product: Red Hat Linux
Classification: Retired
Component: initscripts (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Bill Nottingham
Brock Organ
: FutureFeature
Depends On:
  Show dependency treegraph
Reported: 2003-09-25 14:48 EDT by Thomas Frayne
Modified: 2014-03-16 22:38 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-02-21 13:58:44 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Thomas Frayne 2003-09-25 14:48:17 EDT
Description of problem:
Linux system initialization is sometimes slow because services are started in a
fixed order, waiting for one to complete before starting the next.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Reboot
Actual results:

Expected results:

Additional info:

Please implement the idea in the referenced web page to allow services to be
started in parallel when all services they depend on are running.  The idea is
to use the dependencies facilities in the Make tool to determine what services
have to wait for what other services.

Also allow most services with dependencies to start in parallel by enhancing
them to mark themselves running as soon as possible, and to check if a service
about to be used is running before calling it.  Error recovery would involve
timed waits, logging, and possibly user interaction, but the result would allow
the user to log on and start applications while little used services are
starting as low priority background tasks.  

When one of these enhanced services is called in the foreground before its
startup is complete, it should raise the priority of its background task and any
other service starter its own starter is currently waiting for.  This would
eliminate the problem seen in Windows XP, which allows the user to log on before
system initialization is complete, but makes the user wait for completion of
almost all initialization before any applications can be launched.

Note that it would be easy to implement this piecemeal.  Just implement the
original Make so that all services previous to a given service in the current
init order would be listed as dependencies of the given service.  When previous
services are known not to be required for the given service, just remove them
from the list.  When a service is enhanced as above, all its dependencies can be
removed from the list.  Thus, the implementation of the enhancements of the
services can be done in parallel, possibly even to the point of updating an
entry on the Make list during installation.
Comment 1 Bill Nottingham 2003-09-25 14:53:14 EDT

*** This bug has been marked as a duplicate of 104706 ***
Comment 2 Red Hat Bugzilla 2006-02-21 13:58:44 EST
Changed to 'CLOSED' state since 'RESOLVED' has been deprecated.

Note You need to log in before you can comment on or make changes to this bug.