Library Computer Science 0478 Types of Software & Interrupts
O Level · Computer Science 0478

Types of Software & Interrupts

Revise Types of Software & Interrupts for Computer Science 0478 (O Level) — revision notes and instant AI marking. Free to start.

📖 Revision notes · preview
Cambridge (CIE) IGCSE · Computer Science 0478

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.

Computer System | ┌────────────┴────────────┐ │ │ Hardware Software | ┌──────────────┴──────────────┐ │ │ System Software Application Software (OS + Utility Software) (word processor, browser, games, media player...)

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:

UtilityCategoryWhat it actually does
DefragmentationMaintainRearranges fragmented files on a hard disk so related data sits together, speeding up read/write access
CompressionEnhanceReduces file size so files take up less storage space or transfer faster
EncryptionEnhanceScrambles data so it's unreadable without the correct key — protects data if intercepted
Task ManagerTroubleshoot/repairShows running processes and lets the user close ones that have frozen or are hogging resources
Utility software interacts directly with the computer's hardware (e.g. secondary storage devices), and some utilities come bundled with the operating system itself.

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:

CategoryPurposeGeneric examples
ProductivityGet things done efficientlyWord processor, spreadsheet, presentation software
CommunicationStay connectedEmail client, browser, messaging app
EntertainmentLeisure/mediaMedia player, game, streaming app
Common Mistake Writing "Microsoft Word" or "Google Chrome" as your answer. Examiners do NOT award marks for brand names. Always use the generic type instead: word processor, browser, email client. Save the brand names for casual conversation, not the exam paper.
Practice Question

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.

The OS provides an interface between the user and the hardware, and its work can be broken into 8 key functions — memorise all 8, because exam questions often ask you to "identify and describe two functions."

① 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:

InterfaceHow it worksExample
Command Line (CLI)User types text-based commandsMS-DOS, Raspbian terminal
Graphical (GUI)User clicks visual elements — Windows, Icons, Menus, Pointers (WIMP)Windows, Android, macOS
MenuSuccessive menus, one option chosen at each stageChip & pin machines, vending machines, streaming services
Natural Language (NLI)Spoken or typed natural language inputVirtual assistants (Alexa, Siri), search engines, smart home devices
InterfaceAdvantagesDisadvantages
CLILow system resource use; fast for automation; quicker than navigating menus once learnedMust memorise commands; typos common; less intuitive
GUIIntuitive; no prior knowledge needed; visual information is easy to understandUses more resources; can be slower for repetitive tasks
MenuSimple; efficientLimited flexibility; accessibility issues
NLIUsable by people with disabilities; intuitiveNot 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.

Firmware vs Drivers — don't mix them up! Firmware is permanently stored in ROM and controls the most basic hardware functions (like getting a computer to boot up). Device drivers are OS-level software that let specific hardware communicate with applications, and they get updated regularly. Firmware = built-in and rarely changes. Drivers = flexible and updated often.

⑤ 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.

Exam Tip Just naming a function ("memory management, file management...") earns almost nothing. You must explain each one using active exam-friendly verbs like "allocates," "controls," or "manages" — and back it up with a concrete detail.

⑥ 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.

Practice Question (Worked Example Style — 6 marks)

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
Operating System
Hardware

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.

Common Mistake Saying software "talks to hardware" without mentioning the OS in between. The OS is the essential bridge — skip it in your answer and you lose marks, even if the rest of your explanation is correct.

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.

┌─────────────────────┐ │ Application │ ← the app you clicked open │ Software │ └──────────┬────────────┘ │ ↑↓ ┌──────────┴────────────┐ │ Operating System │ ← manages everything, the "bridge" └──────────┬────────────┘ │ ↑↓ ┌──────────┴────────────┐ │ Firmware │ ← BIOS / bootloader, lives in ROM │ (Bootloader / BIOS) │ wakes hardware up before OS loads └──────────┬────────────┘ │ ↑↓ ┌──────────┴────────────┐ │ Hardware │ ← the physical components └─────────────────────┘

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.

Practice Question

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.

An interrupt is a signal for the CPU to stop what it's currently doing and deal with something else as a higher priority.

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:

SourceDefinitionExamples
HardwareCaused by a physical hardware devicePower button pressed; moving the mouse; clicking an icon to open a program; keyboard combination (e.g. Ctrl+Alt+Delete)
SoftwareOccurs when an application stops or requests a service from the OSA 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:

1. CPU is busy running the fetch-decode-execute cycle 2. An interrupt signal arrives (hardware or software) 3. CPU finishes its CURRENT instruction (doesn't abandon mid-way) 4. Contents of the CPU's registers are COPIED to a reserved area of RAM called the STACK (so nothing is lost) 5. Values are pushed onto the TOP of the stack 6. CPU jumps to the Interrupt Service Routine (ISR) — an area holding instructions to deal with the interrupt 7. ISR instructions are fetched, decoded, and executed 8. Once the interrupt is serviced, register values are POPPED back off the stack, restoring the CPU to its exact previous state 9. The CPU resumes the original task as if nothing happened

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.

Common Mistake Students often say the CPU "loses" or "replaces" data when an interrupt occurs. This is wrong.
✅ Correct: the CPU copies register values to a stack.
❌ Incorrect: the CPU deletes the program or its values.
Exam Tip Always mention that the CPU saves its current state to a stack before executing the Interrupt Service Routine. Just writing "the CPU stops" earns almost nothing — you must include the idea of resuming the original task afterwards to get full marks.

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.

Practice Question — 4 marks

Describe the purpose of an interrupt in a computer system. [4]

Practice Question

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

System Software
Software essential for the operation of a computer system — includes the OS and utility software.
Application Software
Software chosen by a user to carry out a specific task — productivity, communication, entertainment.
Utility Software
Maintains, enhances or troubleshoots/repairs a system — e.g. defragmentation, compression, encryption, task manager.
Operating System
Manages hardware and provides a platform for applications; hides hardware complexity from the user.
8 OS Functions
File management · Interrupt handling · User interface · Peripheral management & drivers · Memory management/multitasking · Application platform · System security · User management.
Device Driver
Software controlling a specific piece of hardware; OS-specific and regularly updated.
Firmware
Embedded permanently in ROM; the BIOS/bootloader handles the initial boot-up before the OS loads.
Communication Chain
Application Software ⇄ Operating System ⇄ Hardware — never app directly to hardware.
Interrupt
A signal forcing the CPU to stop its current task and handle something more urgent.
Stack
A reserved area in RAM where CPU register contents are copied before an interrupt is handled, so they can be restored afterwards.
Interrupt Service Routine (ISR)
Holds the instructions needed to be fetched, decoded and executed to complete the interrupt's commands.
Plug-and-Play (PnP)
The OS auto-detects and configures new peripherals without manual driver installation or restarting.

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

Always describe, never just name For any "identify and describe" question on OS functions, expect roughly 1 mark for naming the function and 1–2 further marks for explaining how it actually works. A bare list of function names will not get you far.
Use generic terms, not brand names "Word processor" scores marks. "Microsoft Word" does not. This applies across the whole application software topic.
Get the communication chain right Any question about how software and hardware interact expects: Application Software → Operating System → Hardware, with the OS explicitly named as the go-between.
Don't confuse firmware and drivers Firmware = permanently stored in ROM, controls basic hardware start-up. Drivers = OS-level software, updated regularly, control specific hardware once the OS is running.
Interrupts: never say data is "lost" or "deleted" The correct process is that register values are copied to a stack, then later restored — nothing is ever lost or deleted during a correctly handled interrupt.
For 4-mark "describe the purpose of an interrupt" questions Mix these ideas: what triggers it (hardware/software), that it tells the CPU its attention is needed, that the current process pauses, that it's handled by the OS/ISR, that priorities exist, and that the original process resumes afterwards. Throwing in a concrete example (e.g. "printer out of paper") is a safe way to pick up an extra mark.
Revision guide generated from Cambridge (CIE) IGCSE Computer Science — Types of Software & Interrupts.
Study smart, not just hard. Good luck! 🎓
🔓 Read the full Types of Software & Interrupts note — free You're seeing the preview · free account, no card needed
Also in the full note
  • 3. Hardware, Firmware & the Operating System
  • ④ Peripheral Management & Device Drivers
  • ⑤ Memory Management & Multitasking
What's inside
📖 Revision notes 🎯 Learn mode ✦ AI flashcards ✓ Instant AI marking 🧊 3D explorers 🧪 Experiments & simulations 📈 Progress tracking
📄 Practise Types of Software & Interrupts with Computer Science 0478 past papers Every paper with its mark scheme — answer online, marked instantly. Open →

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 →

More Computer Science topics