Types of Software & Interrupts
Revise Types of Software & Interrupts for Computer Science 0478 (O Level) — revision notes and instant AI marking. Free to start.
Types of Software & Interrupts
Every computer is a stack of layers — hardware → firmware → operating system → application software — all talking to each other, and interrupts are how the CPU knows when something urgently needs its attention.
Quick Summary
- Software splits into two families: system software (keeps the computer running) and application software (lets the user do a specific job).
- The operating system is the most important piece of system software — it manages hardware and gives applications a platform to run on, across 8 key functions.
- Utility software maintains, enhances, or repairs the system (e.g. defragmentation, compression, encryption, task manager).
- Communication flows in one direction through layers: application software → OS → hardware, never straight from app to hardware.
- Firmware (the BIOS/bootloader) lives permanently in ROM and gets the hardware ready before the OS even loads.
- An interrupt is a signal that forces the CPU to pause its current task and deal with something more urgent — the register contents get saved to a stack first so nothing is lost.
- Interrupts can come from hardware (key press, mouse click, power button) or software (a crash, division by zero, memory conflict).
1. System Software vs Application Software
Think of a computer like a restaurant. System software is everything behind the scenes that makes the restaurant able to function at all — the kitchen, the electricity, the staff rota. Application software is the actual menu items the customer orders — what they came in for.
System Software
System software is essential for the operation of the computer system — without it, nothing else can run. It gives the user a platform to run applications and carry out tasks. It includes:
- The operating system (covered in full detail below)
- Utility software — smaller programs that keep the system healthy
Utility Software — the "maintenance crew"
Utility software is designed to maintain, enhance, or troubleshoot/repair a computer system. Each utility does one specific, limited job — unlike the OS, which does everything at once. Here are the four you must know, grouped by what they actually achieve:
| Utility | Category | What it actually does |
|---|---|---|
| Defragmentation | Maintain | Rearranges fragmented files on a hard disk so related data sits together, speeding up read/write access |
| Compression | Enhance | Reduces file size so files take up less storage space or transfer faster |
| Encryption | Enhance | Scrambles data so it's unreadable without the correct key — protects data if intercepted |
| Task Manager | Troubleshoot/repair | Shows running processes and lets the user close ones that have frozen or are hogging resources |
Application Software — the "menu items"
Application software (informally: "apps") is software chosen by the user to help carry out a specific task. It sits on top of system software and is installed to suit individual needs. It falls into three broad categories:
| Category | Purpose | Generic examples |
|---|---|---|
| Productivity | Get things done efficiently | Word processor, spreadsheet, presentation software |
| Communication | Stay connected | Email client, browser, messaging app |
| Entertainment | Leisure/media | Media player, game, streaming app |
State the difference between system software and application software, and give one example of each.
2. The Operating System — 8 Key Functions
The operating system (OS) is software that manages computer hardware and provides a platform for running applications. Picture it as the receptionist and manager of a hotel: guests (applications) never deal with the plumbing, electricity, or staff scheduling (hardware) directly — they just ask the receptionist, who handles everything behind the scenes.
Crucially, the OS hides the complexity of the hardware from the user. You don't need to know which physical sector of your hard disk your holiday photo is stored on — you just know it's "saved," and the OS deals with the rest.
① File Management
File management is the process by which the OS creates, organises, manipulates, and accesses files and folders, managing where data is stored in both primary and secondary storage. It gives users the ability to create, name, rename, copy, move, and delete files/folders. It also controls permissions (who can access/modify/delete files) and provides a search facility to locate files.
② Handling Interrupts
Interrupt events require the immediate attention of the CPU. The OS handles and processes these in a timely manner so the system keeps running smoothly. (Full detail in Section 4 below — this is a big topic on its own!)
③ Providing a User Interface
The user interface is how the user interacts with the OS. There are four types you need to know:
| Interface | How it works | Example |
|---|---|---|
| Command Line (CLI) | User types text-based commands | MS-DOS, Raspbian terminal |
| Graphical (GUI) | User clicks visual elements — Windows, Icons, Menus, Pointers (WIMP) | Windows, Android, macOS |
| Menu | Successive menus, one option chosen at each stage | Chip & pin machines, vending machines, streaming services |
| Natural Language (NLI) | Spoken or typed natural language input | Virtual assistants (Alexa, Siri), search engines, smart home devices |
| Interface | Advantages | Disadvantages |
|---|---|---|
| CLI | Low system resource use; fast for automation; quicker than navigating menus once learned | Must memorise commands; typos common; less intuitive |
| GUI | Intuitive; no prior knowledge needed; visual information is easy to understand | Uses more resources; can be slower for repetitive tasks |
| Menu | Simple; efficient | Limited flexibility; accessibility issues |
| NLI | Usable by people with disabilities; intuitive | Not always reliable; raises privacy concerns |
④ Peripheral Management & Device Drivers
Peripheral management controls how peripherals (hardware like a printer or mouse) interact with software, allocating system resources for efficient operation. It's what makes plug-and-play (PnP) possible — automatically detecting and configuring new hardware without you manually installing anything or restarting the computer.
A device driver is a piece of software used to control a specific piece of hardware. Peripherals need these to be usable by the OS. The OS ships with generic drivers built in for basic compatibility, but to use hardware to its maximum capacity, you often need a dedicated driver from the manufacturer. Drivers are OS-specific and regularly updated.
⑤ Memory Management & Multitasking
Memory management is the process of allocating main memory (RAM) between different programs that are open at the same time. The OS copies programs and data from secondary storage into primary storage (RAM) as needed, because different programs need different amounts of RAM to run efficiently.
RAM is allocated based on priority and fairness — for example, essential system applications may get higher priority than a user's game. The OS dynamically adjusts this allocation to maintain optimal performance.
This is what makes multitasking possible: the OS gives the user the perception of running multiple programs simultaneously, even though the CPU can only execute one instruction at a time. It just does this so fast (billions of instructions per second) — splitting tasks and switching between them by priority — that it appears seamless.
⑥ Providing a Platform for Running Applications
The OS provides a platform on which application software can run — mainly by giving that software controlled access to system resources. For example, if a game has intensive graphics and online play, the OS grants it access to the GPU and the network card specifically.
⑦ Providing System Security
The OS provides security features such as password-protected accounts, a firewall, virus scanning, and file encryption. Accounts can also be restricted from certain actions — e.g. editing network settings, installing unapproved software, or changing other users' account settings.
⑧ User Management
User management lets different users log onto the same computer, each with their own settings (desktop background, icons, colour scheme). A system administrator can allocate different access rights to different users on a network — e.g. a student account might not be able to install software, while an admin account can.
Ella uses her computer to create artwork for a magazine. She makes use of the operating system, a type of system software. Identify and describe two functions of an operating system. [6]
3. Hardware, Firmware & the Operating System
Nothing in a computer talks directly to hardware except through a strict chain of command. Applications never touch hardware directly — they always go through the OS.
Application software talks to the OS, which allows it to interact with hardware. The hardware processes a request and sends information back to the OS, which then talks directly to the application. This loop repeats constantly while an application is in use.
What is Firmware?
Firmware is software embedded directly into the hardware of a device to make it function. When a computer is switched on, it has no operating system loaded yet — so it has to explore ROM (Read-Only Memory) for its very first boot-up instructions. These instructions are contained in a bootstrap loader.
This initial process is handled by the Basic Input/Output System (BIOS) — this is the firmware. Once start-up is complete, instructions are sent to RAM to be processed by the operating system. This firmware layer ensures hardware devices (like the keyboard and mouse) are available and can be communicated with directly by the OS once it's running. In short: firmware translates between the hardware and the software, acting as the very first handshake the moment you press the power button.
Explain the role of firmware when a computer starts up.
4. Interrupts
Imagine you're deep in a phone call and someone bangs urgently on your front door. You don't ignore it — you politely tell the person on the phone "hold on a sec," remember exactly where you left off in the conversation, deal with the door, and then pick the phone call back up right where you paused it. That's exactly what an interrupt does to the CPU.
Normally, the CPU sits in a continuous loop running the fetch–decode–execute cycle. But sometimes this loop needs to be interrupted — because something more urgent has come up.
How is an interrupt generated?
Interrupts can be triggered by either hardware or software:
| Source | Definition | Examples |
|---|---|---|
| Hardware | Caused by a physical hardware device | Power button pressed; moving the mouse; clicking an icon to open a program; keyboard combination (e.g. Ctrl+Alt+Delete) |
| Software | Occurs when an application stops or requests a service from the OS | A program not responding; division by zero; two processes trying to access the same memory location |
What actually happens step-by-step
This is the part students often gloss over, but it's exactly what examiners want in detail:
The key word to remember is the stack — a reserved area in RAM. Because the CPU's registers hold whatever the current program was working on, and that data absolutely cannot be lost, the CPU copies register contents to the stack before handling the interrupt. It then retrieves them afterwards to resume exactly where it left off.
✅ Correct: the CPU copies register values to a stack.
❌ Incorrect: the CPU deletes the program or its values.
A real-world worked example
Suppose a user clicks "cancel" during a file conversion. A signal is sent from the mouse, which interrupts the processor, and the operating system triggers the cancellation routine — pausing the file conversion process, running the cancel instructions, and then either ending or resuming as appropriate.
Describe the purpose of an interrupt in a computer system. [4]
A user is typing a document when they accidentally hit a key combination that triggers a system error. Explain, step by step, what the CPU does when this interrupt occurs.
What to Memorise
Concepts Checklist
- I can explain the difference between system software and application software
- I can name and describe at least 4 utility software examples with their category (maintain/enhance/troubleshoot)
- I can name all 8 functions of an operating system
- I can describe at least 3 of the OS functions in exam-answer depth (not just naming them)
- I can compare CLI, GUI, menu, and natural language interfaces with an advantage and disadvantage of each
- I understand the difference between a device driver and firmware
- I can draw/describe the communication flow: Application → OS → Hardware
- I can explain the role of firmware/BIOS/bootloader during start-up
- I can define what an interrupt is and why it's needed
- I can list examples of both hardware and software interrupts
- I can explain the role of the stack and register contents during an interrupt, step by step
- I can explain how the CPU resumes its original task after an interrupt is serviced
Exam Tips — Mark Scheme Traps
- 3. Hardware, Firmware & the Operating System
- ④ Peripheral Management & Device Drivers
- ⑤ Memory Management & Multitasking
Read the full Types of Software & Interrupts notes free
That's the preview — create a free account to read the rest, plus flashcards and practice questions with instant AI marking. No credit card.
Unlock the full notes free →