Know and understand examples of system software including compilers, linkers, device drivers, operating systems and utilities
System Software – Definition, Types and Functions
Objective
Know and understand examples of system software, including compilers, linkers, device drivers, operating systems and utilities, and be able to relate their security aspects to the IGCSE ICT AO3 (e‑safety and data‑protection) requirements.
What is System Software?
System software is a collection of programmes that manage the computer’s hardware and provide a platform on which application software can run. It acts as an intermediary between the user, the applications and the physical components of the machine.
System Software vs. Application Software
System software provides the environment (hardware control, resource management, user interface) that application software uses to perform specific tasks such as word‑processing, web browsing or gaming.
Key Types of System Software
Software Type
Primary Function
Typical (non‑brand‑specific) Examples
Compiler
Translates high‑level source code into machine‑code (object code) that the CPU can execute.
GCC, Clang, javac, Microsoft Visual C++
Linker
Combines one or more object files (and libraries) into a single executable programme, resolving inter‑module references.
GNU ld, Microsoft LINK
Device Driver
Enables the operating system to control a specific hardware device (printer, graphics card, network adapter, etc.).
Process Management – creates, schedules, synchronises and terminates processes; allocates CPU time.
Multitasking – allows several processes to run seemingly simultaneously.
Memory Management – allocates RAM, provides virtual memory, and protects each process’s address space.
File‑System Control – organises data on storage devices, handles creation, deletion, access permissions and directory structures.
Device Management – loads and communicates with device drivers, abstracts hardware details for applications.
Security Services – user authentication, access control, driver signing, protection against malware, and audit logging.
User Interface – command‑line interface (CLI), graphical user interface (GUI), or touch/gesture‑based interface.
Security Implications of Drivers and Utilities
Device drivers run with high privilege; a faulty or malicious driver can compromise system integrity and data confidentiality.
Most modern OSes require drivers to be digitally signed – unsigned drivers are often blocked because they pose a security risk.
Utilities that modify system settings (e.g., registry cleaners, system‑optimisers) must be obtained from reputable sources; otherwise they may create vulnerabilities or data loss.
e‑Safety / Data‑Protection Box
Why driver and utility security matters for AO3 (e‑safety):
Unsigned or outdated drivers can be exploited to gain unauthorised access to personal data.
Malicious utilities may install spyware, delete files or alter security settings, breaching data‑protection policies.
Regularly updating drivers and using only trusted utilities helps maintain the confidentiality, integrity and availability of information – the three pillars of ICT security.
Development Phase vs. Runtime Phase
Development Phase (used by programmers)
Compiler – translates the programmer’s source code into object code.
Linker – merges object code with required libraries to produce an executable file.
Runtime Phase (experienced by the end‑user)
The operating system loads at start‑up, takes control of the hardware and provides the environment for applications.
When an application runs, the OS calls the appropriate device drivers to communicate with hardware (e.g., printer, graphics card).
During normal operation, utilities may be invoked to maintain performance, protect security or manage data (e.g., disk‑defragmentation, backup, anti‑malware scan).
Interaction Diagram (Development → Runtime)
Source Code
Compiler
Object Code
Linker
Executable
Operating System
Device Drivers
Utilities
orient="auto" markerUnits="strokeWidth">
Compilation Chain
Runtime Environment
Flow of software from source code → compiler → object code → linker → executable, then loading by the OS, which uses device drivers and utilities during runtime.
Key Points to Remember
System software is essential for a computer to function; without it the hardware cannot be used.
Compilers and linkers are development‑time tools; they are not part of the end‑user environment.
Device drivers are specific to each hardware component, must match the OS version and are normally required to be digitally signed.
The operating system provides the core environment for all other software, handling multitasking, virtual memory, device management, security and the user interface.
Utilities are distinct from applications; they perform system‑maintenance, optimisation, security or backup tasks.
Ensuring drivers and utilities are trusted and kept up‑to‑date is a key e‑safety practice (AO3).
Link to Other Syllabus Topics
Understanding system software underpins safe and responsible use of ICT (e.g., evaluating security risks, protecting data, and applying e‑safety measures – AO3 of the IGCSE ICT syllabus). It also connects to the “Data Management” and “Network Technologies” sections where OS file‑system services and driver‑based network adapters are discussed.
Support e-Consult Kenya
Your generous donation helps us continue providing free Cambridge IGCSE & A-Level resources,
past papers, syllabus notes, revision questions, and high-quality online tutoring to students across Kenya.