Bug 105398 - Boot Linux faster by starting services in parallel
Summary: Boot Linux faster by starting services in parallel
Keywords:
Status: CLOSED DUPLICATE of bug 104706
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: initscripts
Version: 9
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Bill Nottingham
QA Contact: Brock Organ
URL: http://www-106.ibm.com/developerworks...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-09-25 18:48 UTC by Thomas Frayne
Modified: 2014-03-17 02:38 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-02-21 18:58:44 UTC
Embargoed:


Attachments (Terms of Use)

Description Thomas Frayne 2003-09-25 18:48:17 UTC
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:
Always

Steps to Reproduce:
1. Reboot
2.
3.
    
Actual results:
Slow

Expected results:
Fast

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 18:53:14 UTC

*** This bug has been marked as a duplicate of 104706 ***

Comment 2 Red Hat Bugzilla 2006-02-21 18:58:44 UTC
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.