The present invention comprises systems and methods, and computer readable
media comprising the methods, for installing software components. A
user's need for a software component may be determined prior to
installation. The systems and methods of the present invention provide
automation and flexibility to the installation process. In an embodiment,
processor usage and network usage are monitored and software installation
are initiated and/or continued during periods where processor and/or
network usage are low. The installation process may be halted when the
processor and/or network connection are called upon for other uses.
Processor and/or network usage may also be throttled, for example
limiting the bandwidth available for the installation to maintain
sufficient processor share and/or bandwidth for other tasks. Adverse
impact on a computer user is minimized.