Skip to content

A2 · Software in a Computer System

Spec reference: Section A2 - Hardware and Software Key idea: Understand operating systems, utility software, application software, and open source principles.


Operating systems

An operating system (OS) manages hardware and software resources and provides an interface between the user and the hardware.

Types of operating system

TypeDescriptionExample
Real-time OSProcesses inputs and responds immediately, used in safety-critical systemsAircraft control, medical devices
Single-user single-taskOnly one user, one program at a timeEarly MS-DOS
Single-user multi-taskingOne user, multiple programs simultaneouslyWindows, macOS
Multi-userMultiple users access the same system at onceLinux servers, mainframes

The kernel

The kernel is the core of the OS. It runs with full access to hardware and manages:

Kernel functionWhat it does
Program executionLoads programs into memory and runs them
InterruptsResponds to hardware and software signals requiring attention
ModesSwitches between user mode (restricted) and kernel mode (full access)
Memory managementAllocates and protects memory for each process
Multi-taskingSchedules processes so they share the CPU efficiently
Disk accessControls reading and writing to storage devices
File systemsOrganises how data is stored and retrieved
Device driversActs as translators between the OS and hardware peripherals

OS and networking/security

The OS also manages:

  • Networking: Configuring network interfaces, assigning IP addresses, managing connections.
  • Security: User authentication, permissions, access control lists, firewalls.

User interfaces

TypeDescriptionWhen used
Graphical (GUI)Windows, icons, menus, pointer-basedGeneral-purpose users
Command line (CLI)Text commands typed at a promptDevelopers, system administrators
Menu-basedNavigated using menus onlyATMs, kiosks, embedded systems

Utility software

Utility software performs maintenance and management tasks to keep the system running efficiently.

UtilityPurpose
AntivirusDetects and removes malware
Disk defragmenterReorganises fragmented files on HDDs to improve read speed
Backup softwareCreates copies of data for recovery purposes
File compressionReduces file sizes to save storage space
Encryption toolProtects data by scrambling it with a key
System monitorTracks CPU, RAM, and disk usage

Factors affecting choice of utility software include cost, compatibility, ease of use, and performance overhead.


Application software

Application software performs specific tasks for users. It runs on top of the operating system.

CategoryExamples
ProductivityWord processors, spreadsheets, presentation tools
CreativeImage editors, video editors, music production
CommunicationEmail clients, video conferencing tools
DatabaseSystems for storing and querying structured data
Web browserSoftware for accessing and displaying web content

Factors affecting choice include: functionality, cost, compatibility, ease of use, support, and security.


Open source software

What is open source?

Open source software makes its source code publicly available. Anyone can inspect, modify, and distribute it.

Examples

  • Linux (operating system)
  • LibreOffice (productivity suite)
  • Firefox (web browser)
  • MySQL (database)

Principles and implications

AspectOpen SourceProprietary (Closed Source)
Source codePublicly availableHidden from users
CostUsually freeOften requires a licence fee
ModificationAnyone can modify and redistributeCannot be modified by users
SupportCommunity forums, documentationOfficial vendor support
SecurityCode can be audited by anyoneVulnerabilities may go undetected longer
ReliabilityWidely tested by large communitiesTested internally by the vendor

Exam point

The exam often asks you to discuss the implications of open source. Consider both sides: open source code can be audited for security flaws by anyone (good), but it can also be studied by attackers looking for vulnerabilities (risk).


Summary

TermMeaning
KernelCore of the OS, manages all hardware and process communication
Multi-taskingRunning multiple processes by rapidly switching between them
DriverSoftware allowing the OS to communicate with a hardware device
Open sourceSoftware with publicly available source code
Utility softwareTools for maintaining and managing a computer system

Test Yourself

Ad

PassMaven - revision made simple.