Installation (computer programs)
From Wikipedia, the free encyclopedia
Installation (or setup) of a program (including drivers) is the act and the effect of putting the program in a computer system so that it can be executed.
Most programs are supplied in a condensed form intended for sale and distribution. In order to be used, they must be 'unpacked' and the relevant information placed correctly on the computer, taking account of variations between computers, and any customized settings required by the user. During installation, various tests are made of system suitability, and the computer is configured to store the relevant files and any necessary settings required for that program to operate correctly.
Because the requisite process varies for each program and each computer, many programs (including operating systems) come with a general-purpose or dedicated installer – a specialized program which automates most of the work required for their installation.
Some software is designed to be installed simply by copying their files to the desired location, and there is no formal installation process. This is common for Mac OS X applications and is also used for many Windows applications. Operating systems also exist which don't require installation, and can therefore be run directly from a bootable CD, DVD, or USB drive, without affecting other operating systems installed on the machine. An example is Knoppix Linux or Mac OS 1-9.
The term then naturally extends to plugins, device drivers and software files which are not by themselves programs.
Common operations performed during software installations include creation or modification of:
- Shared and non-shared program files
- Folders/directories
- Windows registry entries (Windows only)
- Configuration file entries
- Environment variables
- Links or shortcuts
Contents |
[edit] Some jargon expressions
- Manual installation
- Installation performed without an installer or with a significant amount of manual user operations in addition to installer-assisted part(s).
- Silent installation
- Installation that does not display messages or windows during its progress. "Silent installation" is not a synonym of "unattended installation", though it is often improperly used as such.
- Unattended installation
- Installation that is performed without user interaction during its progress or, in a stricter sense, with no user present at all, except eventually for the initial launch of the process. An installation process usually requires a user who "attends" it to make choices at request: accepting an EULA, specifying preferences and passwords, etc. In graphical environments, installers that offer a wizard-based interface are common. However these installers may also provide command line switches that allow performing unattended installations.
- Self installation
Unattended installation, without the need of initial launch of the process (i.e. Vodafone Mobile Connect USB Modem that self-installs from the USB port).
- Headless installation
- Installation performed without using a monitor connected to the destination computer (in particular, on a computer with no video output at all). This can be an (attended) installation performed from another machine connected via LAN or via a serial cable.
- Unattended and headless installations are common tasks for system administrators.
- Clean installation
- Given the complexity of a typical installation there are many factors that may interfere with its successful completion. In particular files that are leftover of old installations of the same program or an unstable situation of the operating system may all prevent a given program to install and work correctly. An installation performed in absence of such interfering factors (which may vary from program to program) is called a clean installation. In particular a clean Windows installation can be performed by formatting its destination partition before the actual installation process.
- Flat installation
- An installation of a program performed from a copy (called a flat copy) of its original media contents (mostly CDs or DVDs) to a hard drive, rather than directly from the media. This may help in some situations where the target machine isn't able to cope with random access reads from CD/DVD at the same time as performing the CPU-intensive tasks often required by an installation.
[edit] Installer
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 |
---|---|
Typically part of the operating system. | Each product comes bundled with its own installer. |
Uses a single installation database. | Tracks its own installation. |
Can verify and manage all packages on the system. | Only works with its bundled product. |
Single package management system vendor. | Multiple installer vendors. |
Single package format. | Multiple installation formats. |
[edit] Common installers
A currently popular format for Microsoft Windows is the MSI installation package, which is installed by Windows Installer. Companies making tools for creating installers for Windows include InstallShield, Macrovision's InstallAnywhere, Wise, SetupBuilder and ScriptLogic Corporation (Formerly MaSaI Solutions). Most of these tools can create MSI packages as well as their own proprietary executables.
Free alternatives include NSIS and InnoSetup, and a tool from Microsoft called WiX. BitRock has a multiplatform tool, called InstallBuilder, that creates installers for Windows, Mac OS X, Linux and many others and is free for open source projects. Java projects will also be interested in the opensource IzPack installer which allows to generate cross-platform installers.
Mac OS X has an application called Installer bundled with it. However, this is not technically an installer (see table above), but a Package Manager. Some commercial applications for Mac OS X use a custom installer, often Installer VISE or Stuffit InstallerMaker. Applications that do not need to install additional system components can be installed by moving the application files to a desired location on a hard drive; this is known as "drag-and-drop installation" and no installer software is needed. Mac OS X also includes a separate software updating application, Software Update (also known by its shell command, "softwareupdate") but only supports Apple and system software.
An installation program on a CD is often designed to run automatically when inserted into the optical disc drive.
[edit] Windows Package Managers
As a compromise between the Windows installer concept and the package management systems of UNIX-like systems, Windows installation management systems exist. Many of these form a part of a systems management software suite, but some free (and in some cases open source) alternatives exist.