course TOC

2.3. Introduction to Computers

Hardware and Software [src]

Hardware

Hardware refers to the physical elements of a computer. This is also sometime called the machinery or the equipment of the computer. Examples of hardware in a computer are the keyboard, the monitor, the mouse and the central processing unit. However, most of a computer's hardware cannot be seen; in other words, it is not an external element of the computer, but rather an internal one, surrounded by the computer's casing (tower). A computer's hardware is comprised of many different parts, but perhaps the most important of these is the motherboard. The motherboard is made up of even more parts that power and control the computer.

In contrast to software, hardware is a physical entity. Hardware and software are interconnected, without software, the hardware of a computer would have no function. However, without the creation of hardware to perform tasks directed by software via the central processing unit, software would be useless.

Hardware is limited to specifically designed tasks that are, taken independently, very simple. Software implements algorithms (problem solutions) that allow the computer to complete much more complex tasks.

Quick overview of pc hardware
Basic internal hardware
Miko3k [GFDL or CC-BY-SA-3.0], from Wikimedia Commons
wikipedia icon personal computer hardware search icon what is computer hardware  

Software

Software, commonly known as programs or apps, consists of all the instructions that tell the hardware how to perform a task. These instructions come from a software developer in the form that will be accepted by the platform (operating system + CPU) that they are based on. For example, a program that is designed for the Windows operating system will only work for that specific operating system. Compatibility of software will vary as the design of the software and the operating system differ. Software that is designed for Windows XP may experience a compatibility issue when running under Windows 2000 or NT.

Software is capable of performing many tasks, as opposed to hardware which can only perform mechanical tasks that they are designed for. Software provides the means for accomplishing many different tasks with the same basic hardware. Practical computer systems divide software systems into two major classes:

  • System software: Helps run the computer hardware and computer system itself. System software includes operating systems, device drivers, diagnostic tools and more. System software is almost always pre-installed on your computer.
  • Application software: Allows users to accomplish one or more tasks. It includes word processing, web browsing and almost any other task for which you might install software. (Some application software is pre-installed on most computer systems.)

Software is generally created (written) in a high-level programming language, one that is (more or less) readable by people. These high-level instructions are converted into "machine language" instructions, represented in binary code, before the hardware can "run the code". When you install software, it is generally already in this machine language, binary, form.

Screenshot shows browser and wordprocessing application on left with file explorer and task manager on right
System software on right. Applications on left. More system and application software is indicated in the tray at the bottom.
By Paul Mullins: screenshot


Movie algorithm
Diagrammatic view of a very simple decision algorithm that could be programmed
public domain image
wikipedia icon software search icon what is software  

Firmware

Firmware is a very specific, low-level program for the hardware that allows it to accomplish some specific task. Firmware programs are (relatively) permanent, i.e., difficult or impossible to change. From the higher-level view of software, firmware is just part of the hardware, although it provides some functionality beyond that of simple hardware.

Firmware is part of devices (or device components) such as a video card, sound card, disk drive and even the motherboard. The AMIBIOS image to the right is from a Baby AT Motherboard.

American Megatrends BIOS ROM chip
ROM BIOS chip holding firmware used to boot the computer
public domain image


pictorial analogy with pilot and manual as software, cockpit as hardware and autopilot as firmware
Analogy with autopilot as firmware
By Paul Mullins: constructed image
wikipedia icon firmware search icon what is firmware video icon what is firmware

course TOC


Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Attribution: Dr. Paul Mullins, Slippery Rock University
These notes began life as the Wikiversity course Introduction to Computers.
The course draws extensively from and uses links to Wikipedia.
A large number of video links are provided to labrats.tv. (I hope you like cats. And food demos.)