Want to keep learning?

This content is taken from the Raspberry Pi Foundation & National Centre for Computing Education's online course, Understanding Computer Systems. Join the course to learn more.

Types of Software

Software is the programs used to control a computer. There are different types of software that can run on a computer: system software, utility software, and application software.

System software

If you think of software as being in layers, the system software is the bottom layer: it sits between the hardware and the application software. Operating systems like Windows and macOS are examples of system software. Operating systems are loaded into RAM when the computer starts up, and have access to the hard drive.

Utility software

Utility software is part of the system software, and performs specific tasks to keep the computer running. Utility software is always running in the background. Examples of utility software are security and optimisation programs.

Security programs include anti-virus software that scans and removes viruses. Most computers will include some sort of anti-virus software, but you can add your own.

Optimisation programs can include tools for system clean-up, disk defragmentation, and file compression. These tools are typically installed as part of the operating system. They have access to the hard drive to keep it tidy.

Application software

This is everything else! Anything that is not an operating system or a utility is an application or app. So Word, Excel, Chrome, and Photoshop are all examples of application software, and they can do many specific tasks. You can remove and add applications on your computer using the operating system.

Application software like Word regularly directs the operating system to load and save files from and to the hard drive. When you are working on a file, it is saved temporarily in the RAM. It is only when you choose to save it that it is written to the hard drive. This is why, if the computer crashes while you’re working on a file, you may lose any changes you didn’t save. Data stored in the RAM is volatile. The data is lost when the RAM loses power.

Application software also uses the operating system to talk to the hardware on the computer and to other software. When a web browser wants to load a web page, it is the operating system that controls access to the internet and fetches the information from the web. Similarly, the operating system also provides the application software information about what key is being pressed, and about the mouse: where it is, what it clicked, and where it’s moving on screen. Application software relies heavily on the operating system to do these tasks and send it all this information.

Share this article:

This article is from the free online course:

Understanding Computer Systems

Raspberry Pi Foundation