User:Nachlader/System Requirements
To be used efficiently, all computer software needs certain hardware components or other software resources to be present on a computer system. These pre-requisites are known as (computer) system requirements and are often used as a guideline as opposed to an absolute rule. Most software defines two sets of system requirements: minimum and recommended. With increasing demand for higher processing power and resources in newer versions of software, system requirements tend to increase over time. Industry analysts suggest that this trend plays a bigger part in driving upgrades to existing computer systems than technological advancements.
Minimum system requirements[edit | edit source]
The 'Minimum system requirements' must be satisfied for the software to be usable at all. Computers with lower specifications than the minimum requirements may sometimes also run the software. It is suggested, however, that the user will not have a representative experience of the software this way. Generally this set is regarded more of a rule than a guideline. A system meeting this requirement will provide basic performance of a software application.
Recommended system requirements[edit | edit source]
Recommended system requirements are often suggested by software vendors for optimal performance of a software. Although not a necessity, this set of requirements is often sought after by power users who expect to gain a better experience of software usability. Recommended System Requirements do not promise best possible performance of a software and are treated as more of a guideline than a rule. Almost always a better system is available, or will be in future, to provide better performance. Also, exceeding by far these requirements does not guarantee to the user that everything will run with absolute smoothness and look its best. More often than not, games are a bit disappointing in this respect, presenting issues that may or may not be corrected with future modifications.
Hardware requirements[edit | edit source]
The most common set of requirements defined by any operating system or software application is the physical computer resources, also known as hardware, A hardware requirements list is often accompanied by a hardware compatibility list (HCL), especially in case of operating systems. An HCL lists tested, compatible, and sometimes incompatible hardware devices for a particular operating system or application. The following sub-sections discuss the various aspects of hardware requirements.
Architecture[edit | edit source]
All computer operating systems are designed for a particular computer architecture. Most software applications are limited to particular operating systems running on particular architectures. Although architecture-independent operating systems and applications exist, most need to be recompiled to run on a new architecture. See also a list of common operating systems and their supporting architectures.
Processing power[edit | edit source]
The power of the central processing unit (CPU) is a fundamental system requirement for any software. Most software running on x86 architecture define processing power as the model and the clock speed of the CPU. Many other features of a CPU that influence its speed and power, like bus speed, cache, and MIPS are often ignored. This definition of power is often erroneous, as AMD Athlon and Intel Pentium CPUs at similar clock speed often have different throughput speeds. Intel Pentium CPUs have enjoyed a considerable degree of popularity, and are often mentioned in this category [Citation not needed at all; thank you very much].
Memory[edit | edit source]
All software, when run, resides in the random access memory (RAM) of a computer. Memory requirements are defined after considering demands of the application, operating system, supporting software and files, and other running processes. Optimal performance of other unrelated software running on a multi-tasking computer system is also considered when defining this requirement.
Secondary storage[edit | edit source]
Hard-disk requirements vary, depending on the size of software installation, temporary files created and maintained while installing or running the software, and possible use of swap space (if RAM is insufficient).
Display adapter[edit | edit source]
Software requiring a better than average computer graphics display, like graphics editors and high-end games, often define high-end display adapters in the system requirements.
Peripherals[edit | edit source]
Some software applications need to make extensive and/or special use of some peripherals, demanding the higher performance or functionality of such peripherals. Such peripherals include CD-ROM drives, keyboards, pointing devices, network devices, etc.
Software requirements[edit | edit source]
Software Requirements deal with defining software resource requirements and pre-requisites that need to be installed on a computer to provide optimal functioning of an application. These requirements or pre-requisites are generally not included in the software installation package and need to be installed separately before the software is installed.
Platform[edit | edit source]
In computing, a platform describes some sort of framework, either in hardware or software, which allows software to run. Typical platforms include a computer's architecture, operating system, or programming languages and their runtime libraries.
Operating system is one of the first requirements mentioned when defining system requirements (software). Software may not be compatible with different versions of same line of operating systems, although some measure of backward compatibility is often maintained. For example, most software designed for Microsoft Windows XP does not run on Microsoft Windows 98, although the converse is not always true. Similarly, software designed using newer features of Linux Kernel v2.6 generally does not run or compile properly (or at all) on Linux distributions using Kernel v2.2 or v2.4.
APIs and Drivers[edit | edit source]
Software making extensive use of special hardware devices, like high-end display adapters, needs special API or newer device drivers. A good example is DirectX, which is a collection of APIs for handling tasks related to multimedia, especially game programming, on Microsoft platforms.
Web browser[edit | edit source]
Most web applications and software depending heavily on Internet technologies make use of the default browser installed on system. Microsoft Internet Explorer is a frequent choice of software running on Microsoft Windows, which makes use of ActiveX controls, despite their vulnerabilities.
Other requirements[edit | edit source]
Some software also has other requirements for proper performance. Internet connection (type and speed) and resolution of the display screen are notable examples.
Examples[edit | edit source]
Following are a few examples of system requirement definitions for popular computer games and trend of ever increasing resource needs:
For instance, while StarCraft (1998) needed:
- Windows 95 or NT or superior
- Pentium processor at 90 MHz or higher
- 16 MB RAM
- 80 MB available in the hard disk
- CD-ROM, 2x or higher
- DirectX 3.0 or higher
and Spider-Man (2002) needed:
- 3D Hardware Accelerator
- Windows 98/2000/NT/XP
- Pentium III processor at 500 MHz or higher
- 128 MB RAM
- 1.5 GB available in the hard disk
- DirectX 8.1
Doom 3 (2004) needed:
- 3D Hardware Accelerator - 64MB of memory minimum
- Windows 2000/XP
- Pentium 4 1.5 GHz or [[|Experience|Athlon XP]] 1500+ processor or higher
- 384 MB RAM
- 8x Speed CD-ROM
- 2.2 GB free hard disk space
- DirectX 9.0b compatible 16-bit sound card
- DirectX 9.0b