Installation (computer programs)
||It has been suggested that Application packaging be merged into this article. (Discuss) Proposed since February 2012.|
||This article has multiple issues. Please help improve it or discuss these issues on the talk page.
Installation (or setup) of a computer program (including device drivers and plugins), is the act of making the program ready for execution. Because the process varies for each program and each computer, programs (including operating systems) often come with an installer, a specialized program responsible for doing whatever is needed for their installation.
Some computer programs can be executed by simply copying them into a folder stored on a computer and executing them. Other programs are supplied in a form unsuitable for immediate execution and therefore need an installation procedure. Once installed, the program can be executed again and again, without the need to reinstall before each execution.
Common operations performed during software installations include:
- Making sure that required system requirements are present
- Checking for existing versions of the software this will help an individual understand the installing of a software
- Creating or updating program files and folders
- Adding configuration data such as configuration files, Windows registry entries or environment variables
- Making the software accessible to user, for instance by creating links, shortcuts or bookmarks
- Configuring components that run automatically, such as daemons or Windows services
- Performing product activation
As mentioned earlier, some computer programs need no installation. This was once usual for many programs which run on DOS, Mac OS, Atari TOS and AmigaOS. As computing environments grew more complex and fixed hard drives replaced floppy disks, the need for tangible installation presented itself.
Nowadays, a class of modern applications that do not need installation are known as portable applications, as they may be roamed around onto different computers and run. Similarly, there are live operating systems, which do not need installation and can be run directly from a bootable CD, DVD, or USB flash drive. Examples are AmigaOS 4.0, various Linux distributions, MorphOS or Mac OS versions 1.0 through 9.0. (See live CD and live USB.) Finally, web applications, which run inside a web browser, do not need installation.
Attended installation 
On Windows systems, this is the most common form of installation. An installation process usually needs a user who attends it to make choices, such as accepting or declining an end-user license agreement (EULA), specifying preferences such as the installation location, supplying passwords or assisting in product activation. In graphical environments, installers that offer a wizard-based interface are common. Attended installers may ask users to help mitigate the errors. For instance, if the disk in which the computer program is be installed was full, the installer may ask the user to specify another target path.
Silent installation 
Installation that does not display messages or windows during its progress. "Silent installation" is not the same as "unattended installation" (see below): All silent installations are unattended but not all unattended installations are silent. The reason behind a silent installation may be convenience or subterfuge. Malware is almost always installed silently.
Unattended installation 
Installation that is performed without user interaction during its progress or with no user present at all. An unattended installation either does not require the user to supply anything or has received all necessary input prior to the start of installation. Such input may be in the form of command line switches or an answer file, a file that contains all the necessary parameters. Windows XP is an example of an operating system that can be installed with an answer file. In unattended installation, it is assumed that there is no user to help mitigate errors. For instance, if the installation medium was faulty, the installer should fail the installation, as there is no user to fix the fault or replace the medium. Unattended installers may record errors in a computer log for later review.
Headless installation 
Installation performed without using a computer monitor connected. In attended forms of headless installation, another machine connects to the target machine (for instance, via a local area network) and takes over the display output. Since a headless installation does not need a user at the location of the target computer, unattended headless installers may be used to install a computer software on multiple machines at the same time.
Scheduled or automated installation 
An installation process that runs on a preset time or when a predefined condition transpires, as opposed to an installation process that starts explicitly on a user's command. For instance, a system administrator willing to install a later version of a computer program that is being used can schedule that installation to occur when that program is not running. An operating system may automatically install a device driver for a device that the user connects. (See plug and play.) Malware may also be installed automatically. For example, the infamous Conficker was installed when the user plugged an infected device to his computer.
Clean installation 
A clean installation is one that is done in the absence of any interfering elements such as old versions of the computer program being installed or leftovers from a previous installation. In particular, the clean installation of an operating system is an installation in which the target disk partition is erased before installation. Since the interfering elements are absent, a clean installation may succeed where an unclean installation may fail or may take significantly longer.
Network installation 
An installation of a program from a shared network resource. This may simply be a copy of the original media but software publishers which offer site licenses for institutional customers may provide a version intended for installation over a network.
An installation program or installer is a computer program that installs files, such as applications, drivers, or other software, onto a computer. Some installers are specifically made to install the files they contain; other installers are general-purpose and work by reading the contents of the software package to be installed.
The differences between a package management system and an installer are:
|Package management system||Installer|
|Usually part of an operating system.||Each product comes bundled with its own installer.|
|Uses one installation database.||Performs its own installation, sometimes recording information about that installation in a registry.|
|Can verify and manage all packages on the system.||Works only with its bundled product.|
|One package management system vendor.||Multiple installer vendors.|
|One package format.||Multiple installation formats.|
During the installation of computer programs it is sometimes necessary to update the installer or package manager itself. To make this possible, a technique called bootstrapping is used. The common pattern for this is to use a small executable file..... which updates the installer and starts the real installation after the update. This small executable is called bootstrapper.Sometimes the bootstrapper installs other prerequisites for the software during the bootstrapping process too.
Common types 
Cross platform installer builders that produce installers for Windows, Mac OS X and Linux include InstallAnywhere (Flexera Software), JExpress (DeNova), InstallBuilder (BitRock Inc.) and Install4J (ej-technologies) 
Installers for Microsoft Windows include Windows Installer, a software installation component. Additional third party commercial tools for creating installers for Windows include InstallShield (Flexera Software), Advanced Installer (Caphyon Ltd), InstallAware (InstallAware Software), Wise Installation Studio (Wise Solutions, Inc.), SetupBuilder (Lindersoft, Inc.), Installer VISE (MindVision Software), MSI Studio (ScriptLogic Corporation), Actual Installer (Softeza Development), Smart Install Maker (InstallBuilders Company), MSI Factory and Setup Factory (Indigo Rose Software), Visual Installer (SamLogic), Centurion Setup (Gammadyne Corporation). Free installer-authoring tools include NSIS, IzPack, Clickteam, InnoSetup, InstallSimple and WiX.
Mac OS X includes Installer, a native Package Manager software. Mac OS X also includes a separate software updating application, Software Update but only supports Apple and system software. Included in the dock as of 10.6.6, the Mac App Store shares many attributes with the successful App Store for iOS devices, such as a similar app approval process, the use of Apple ID for purchases, and automatic installation and updating. Although this is Apple's preferred delivery method for Mac OS X, previously purchased licenses can not be transferred to the Mac App Store for downloading or automatic updating. Commercial applications for Mac OS X may also use a third-party installer, such as Mac version of Installer VISE (MindVision Software) or InstallerMaker (StuffIt).
See also 
- Application virtualization
- List of installation software
- Package management system
- Portable application
- Pre-installed software
- Software distribution
- "ej-technologies GmbH".
- "Caphyon setup authoring solutions". Advanced Installer.
- "Installation Software for Windows Programs". InstallAware.
- "Lindersoft: Software Installation Solutions - High-quality Software Installations". Setupbuilder.com. Retrieved 2010-05-02.
- "Installation Software for Windows Programs". Actual Installer. Retrieved 2010-05-02.
- "Smart Install Maker - Custom setup files made easy". Sminstall.com. Retrieved 2010-05-02.
- "Centurion Setup". Gammadyne Corporation.
|Look up installer in Wiktionary, the free dictionary.|