An instruction that tells a computer to do something is called a programme. A set of related programmes is called software. Software is what actually controls a computer and helps solve the tasks a user needs done, everything a computer does happens because some piece of software told it to.
Hardware you can drop, software you cannot
There is a rough test that has been used for years and still works. Hardware is the part you could drop on your foot. The screen, the keyboard, the box itself, the pen drive. Software is everything else, the part that has no weight because it is not a thing at all. It is a set of written instructions, stored as data, waiting to be followed.
Think about what that means for a brand new computer with nothing installed on it. Every piece of hardware is present and working. The screen lights up, the fan turns, the keyboard is connected. And it can do nothing at all, because nobody has told it what to do. Hardware supplies the ability. Software supplies the instructions. Neither is any use without the other, which is why a computer is really a partnership rather than a machine.
Three kinds of software
Software can be grouped into three broad kinds, based on the job it does.
| Kind | What it does | Examples |
|---|---|---|
| System software | Runs and controls the computer's hardware, an important base layer the whole computer depends on | Windows, Mac OS, Android, Linux |
| Application software | Built for a user's specific need, chosen and used to complete a particular task | MS Office, Photoshop, PDF Reader |
| Utility software | Keeps the relationship between software and hardware smooth, fast, and dependable | Antivirus, disk cleaner, disk defragmenter |
The three kinds are layers, not just groups
The table makes them look like three separate boxes. They are really three layers stacked on top of each other, and seeing that makes the whole topic click into place. System software sits at the bottom, directly on the hardware. Application software sits on top of it. When you save a document, the application does not touch the disk itself. It asks the system software to do it, and the system software carries the request down to the hardware.
Why not let each application talk to the hardware directly? Because a computer runs many programmes at once, and they would all be reaching for the same disk, the same screen, the same speaker at the same moment. Somebody has to keep order. That is the real job of system software: it is the one in charge of the hardware, and every other programme has to queue up and ask. This is also why one operating system cannot run another one's applications, and why a programme written for Windows will not simply open on Android.
Utility software does not sit neatly in that stack, because it works sideways across it. An antivirus, a disk cleaner, and a defragmenter are not doing a job you wanted done. They are looking after the machine so that the jobs you do want stay possible. That is the cleanest way to tell utility software apart from an application: an application serves you, a utility serves the computer.
Sorting three real examples
The rule only becomes useful once you have used it on something that is not obvious, so here are three, including one that catches almost everybody.
| Software | Ask: whose job is it doing? | Kind |
|---|---|---|
| A web browser | Yours. You opened it because you wanted to read something | Application |
| Android on a mobile phone | The machine's. It runs the hardware so every app has something to sit on | System, even though it is on a phone |
| An antivirus programme | The machine's. Nobody switches on a computer in order to run a virus scan | Utility, and this is the one people get wrong |
The antivirus is worth pausing on. It has a window, it has buttons, you can open it and click things, so it feels exactly like an application. But look at whose job it is doing. You did not sit down at the computer wanting a virus scan. You wanted to write something, and the antivirus is quietly keeping that possible. It serves the computer, not you, so it is a utility.
A simple way to sort software is to ask what it is really for. If it runs the whole computer, it is system software. If it does one specific task for the user, it is application software. If it keeps everything else running smoothly, it is utility software.
Free and paid software
Some software can be downloaded and installed from the internet at no cost, and is called open or free software. Other software must be paid for before it can be used. Both kinds are common, and the right choice depends on what a task actually needs.
The word free is doing two different jobs here, and it is worth separating them. Sometimes it means free of cost, you simply do not pay. Sometimes it means open, which is a bigger idea: the instructions inside the software are published, so anyone can read them, check them, and improve them. Linux is the best known example, and it was built by people all over the world adding to the same work.
It is also worth knowing that free of cost does not always mean nothing is being given. Some free software shows advertisements, and some collects information about how you use it. That does not make it bad, but it does mean the sensible question is not which one costs less. It is which one does the job the school actually needs, from a source that can be trusted.
The same programme downloaded from two different websites is not always the same programme. A copy taken from a site you do not know may have had something extra added to it, which is one of the routes a virus uses to get in. Download software from the maker's own website or an official store, not from whichever search result appears first.
System software
The layer in charge of the hardware. Every other programme has to ask it before anything reaches the disk or the screen.
Application software
Serves you. You chose to open it because you wanted a particular job done.
Utility software
Serves the computer. Nobody switches a machine on in order to run a disk cleaner.
Open software
Its instructions are published, so anyone can read, check, and improve them. Linux was built this way.
TODO: Add YouTube video ID for Software
The full lesson is waiting for you
Create a free account to unlock activities, practice tests, presentations and videos - and to track your progress and confidence score for every subject.
The full lesson is waiting for you
Create a free account to unlock activities, practice tests, presentations and videos - and to track your progress and confidence score for every subject.