Hardware is the physical aspect of computers, telecommunications, and other information technology devices. The term arose as a way to distinguish the "box" and the electronic circuitry and components of a computer from the program you put in it to make it do things. The program came to be known as the software.


Hardware implies permanence and invariability. Software or programming can easily be varied. You can put an entirely new program in the hardware and make it create an entirely new experience for the user. You can, however, change the modular configurations that most computers come with by adding new adapters or cards that extend the computer's capabilities.
Like software, hardware is a collective term. Hardware includes not only the computer proper but also the cables, connectors, power supply units, and peripheral devices such as the keyboard, mouse, audio speakers, and printers.


Hardware is sometimes used as a term collectively describing the physical aspects of telephony and telecommunications network infrastructure.
Software is a general term for the various kinds of programs used to operate computers and related devices. (The term hardware describes the physical aspects of computers and related devices.)
Software can be thought of as the variable part of a computer and hardware the invariable part. Software is often divided into application software (programs that do work users are directly interested in) and system software (which includes operating systems and any program that supports application software).

The term middleware is sometimes used to describe programming that mediates between application and system software or between two different kinds of application software (for example, converting data from one file format to another file format).
An additional and difficult-to-classify category of software is the utility, which is a small useful program with limited capability. Some utilities come with operating systems. Like applications, utilities tend to be separately installable and capable of being used independently from the rest of the operating system.
Applets are small applications that sometimes come with the operating system as "accessories." They can also be created independently using the Java or other programming languages.


Software can be purchased or acquired as shareware (usually intended for sale after a trial period), liteware (shareware with some capabilities disabled), freeware (free software but with copyright restrictions), public domain software (free with no restrictions), and free software (software whose users agree not to limit its further distribution).
Software is usually packaged on CD-ROM and diskettes. Today, much purchased software, shareware, and freeware is downloaded over the Internet.
Some general kinds of application software include:
Productivity software, which includes word processors, spreadsheets, and tools for use by most computer users
Presentation software
Graphics software for graphic designers
CAD/CAM software
Specialized scientific applications
Vertical market or industry-specific software (for example, for banking, insurance, retail, and manufacturing environments)
Firmware or microcode is programming that is loaded into a special place area on a microprocessor or read-only memory on a one-time or infrequent basis so that thereafter it seems to be part of the hardware.
Our Quick Search facility looks for matching term names only.

(The term names can be one or more words.) You can find related terms and the results of full text indexing by using the Full Search facility.
To assist you in finding a term, the following two special wildcard characters will help find a match for the term.An asterisk ( * ) following a sequence of letters means: Find any term that matches the beginning of the character string plus zero or more characters following the asterisk.A questionmark ( ? ) following a sequence of letters means: Find any term that matches the beginning of the character string plus any single character.If the query finds more than one result, a results list is returned from which you can choose a term for viewing.

Our Quick Search facility looks for matching term names only. (The term names can be one or more words.) You can find related terms and the results of full text indexing by using the Full Search facility.
To assist you in finding a term, the following two special wildcard characters will help find a match for the term.An asterisk ( * ) following a sequence of letters means: Find any term that matches the beginning of the character string plus zero or more characters following the asterisk.

A questionmark ( ? ) following a sequence of letters means: Find any term that matches the beginning of the character string plus any single character.If the query finds more than one result, a results list is returned from which you can choose a term for viewing.