Software

Software is a general term for the various kinds of programs used to operate 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 applicationsoftware (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, sending a remote work request from an application in a computer that has one kind of operating system to an application in a computer with a different operating system).

________________________________________________________________________________________

Purpose, or domain of use
Based on the goal, computer software can be divided into: ________________________________________________________________________________________
 * Application software, which uses the computer system to perform special functions or provide entertainment functions beyond the basic operation of the computer itself. There are many different types of application software, because the range of tasks that can be performed with a modern computer is so large.
 * System software, which is designed to directly operate the computer hardware, to provide basic functionality needed by users and other software, and to provide a platform for running application software. System software includes:
 * Operating systems, which are essential collections of software that manage resources and provides common services for other software that runs "on top" of them. Supervisory programs, boot loaders, shells and window systems are core parts of operating systems. In practice, an operating system comes bundled with additional software (including application software) so that a user can potentially do some work with a computer that only has an operating system.
 * Device drivers, which operate or control a particular type of device that is attached to a computer. Each device needs at least one corresponding device driver; because a computer typically has at minimum at least one input device and at least one output device, a computer typically needs more than one device driver.
 * Utilities, which are computer programs designed to assist users in maintenance and care of their computers.
 * Malicious software or malware, which are computer programs developed to harm and disrupt computers. As such, malware is undesirable. Malware is closely associated with computer-related crimes, though some malicious programs may have been designed as practical jokes.

License
The software's license gives the user the right to use the software in the licensed environment, and in the case of free software licenses, also grants other rights such as the right to make copies.

Proprietary software can be divided into two types: Open source software, on the other hand, comes with a free software license, granting the recipient the rights to modify and redistribute the software.
 * freeware, which includes the category of "free trial" software or "freemium" software (in the past, the term shareware was often used for free trial/freemium software). As the name suggests, freeware can be used for free, although in the case of free trials or freemium software, this is sometimes only true for a limited period of time or with limited functionality.
 * software available for a fee, often inaccurately termed "commercial software", which can only be legally used on purchase of a license.

________________________________________________________________________________________