Manages the hardware in a computer and provides an environment for applications to run
Systems software
Controls the hardware inside the computer and provides an interface for users to interact with it, comprised of the operating system and utility software
Application software
The end-user programs that are designed to perform specific tasks, such as word processing, photo editing
Functions controlled by the OS
User interface to allow the user to interact with the system
Memory management to control the use of the RAM and to share processor time between different programs and processes
Peripheral management to control peripheral devices using drivers
User management to control who can access the computer and what resources they can use
File management to allow users to organise their work into folders and subfolders
Utility software
A collection of programs each of which does a specific housekeeping task to help maintain a computer system
Encryption software
Used to encode data so that it cannot be understood if it is intercepted by unauthorised users, uses an algorithm and key to transform plaintext into ciphertext
Defragmentation
Reorganises files on a hard drive, putting all of the free space together and all of the parts of the same file together, to improve performance
Data compression software
Uses algorithms to reduce the size of files so that they take up less storage space, can be lossy or lossless