Beginner

Software, Operating Systems and System Software

AicademyAicademy
·A-Level Computer Science·AQA 7517·5 min
4.6.1 Hardware and software

Hardware and Software

Hardware is the physical components of a computer — the circuitry, storage devices, input/output devices, and the processor itself. Hardware cannot change its own behaviour.

Software is programs and the data they process. Software controls hardware — it tells the hardware what operations to perform.

The relationship is a two-way dependency:

  • Software requires hardware to execute
  • Hardware without software can do nothing useful

This separation is fundamental: the same hardware can run different software to perform entirely different tasks.

System Software vs Application Software

All software falls into one of two categories:

System SoftwareApplication Software
PurposeManages and controls hardware; provides a platformDesigned to help users perform specific end-user tasks
ExamplesOperating system, device drivers, compilers, antivirusWord processor, web browser, spreadsheet, game
RunsTypically at startup or in the backgroundLaunched by the user
Interacts withHardware directlySystem software (via OS services)

Application software depends on system software to function. A word processor calls on the OS to access files, manage memory, and display output — it does not interact with the hardware directly.

Types of System Software

System software includes four categories:

1. Operating system (OS)

The core system software. Controls all other software and all hardware. Provides services that applications rely on.

2. Utility programs

Specialised tools for maintaining and managing a computer system:

  • Antivirus / malware scanner — detects and removes threats
  • Disk defragmenter — reorganises fragmented files for faster access
  • Backup utility — copies files to prevent data loss
  • Compression utility — reduces file sizes

3. Libraries

Collections of pre-written code routines that programs can call without reimplementing common functionality. Examples: maths libraries, graphics libraries, file-format parsers.

4. Translators

Programs that convert source code (written by developers) into executable code (machine code the processor can run). Types: compiler, assembler, interpreter — covered in the Programming Languages lesson.

The Role of an Operating System

An OS has two primary roles:

1. Hiding hardware complexity

Application programs and users do not deal with raw hardware. The OS presents a clean, abstract interface:

  • A file system (instead of raw disk sectors)
  • Memory addresses (instead of physical chip locations)
  • Standard input/output (instead of device-specific I/O protocols)

This abstraction allows software to be written once and run on different hardware configurations — the OS handles the hardware-specific details.

2. Resource management

Multiple programs and users compete for the same hardware resources. The OS acts as a referee, allocating:

ResourceWhat the OS manages
Processor timeScheduling: which process runs and for how long
MemoryAllocating RAM to processes; swapping to disk when full
StorageManaging file systems; read/write access to disks
I/O devicesQueuing requests for printers, keyboards, network interfaces

Without resource management, processes would interfere with each other — reading each other's memory, monopolising the CPU, or writing conflicting data to the same device.

Want more lessons like this one?

Generate lessons on anything you study. Free account, no card needed.

Start generating

Specific OS Services

Beyond the two headline roles, an OS provides:

  • Process management: creating, scheduling, and terminating processes
  • Memory management: allocating address spaces; virtual memory
  • File system management: directory structure, file permissions, access control
  • Device management: device drivers as intermediaries between the OS and hardware
  • Security: user authentication, access control, isolation between processes
  • Networking: managing network interfaces and communication protocols

Common Exam Mistakes

1. Confusing system and application software

System software manages hardware and provides infrastructure. Application software does user-facing tasks. A compiler is system software; a word processor is application software. Device drivers are system software — they sit between the OS and specific hardware components.

2. Thinking the OS is the only system software

The OS is one type of system software. Utility programs (antivirus, disk tools), libraries, and translators are also system software. They support and maintain the system but are not part of the OS itself.

3. Listing OS features that go beyond the spec

The spec requires: hides hardware complexity from users/applications; manages processor time, memory, and I/O devices. For a 2-mark question, state both: abstraction (hiding complexity) and resource management. Do not pad answers with unrelated OS details like file system management unless specifically asked.

4. Stating that software "runs on" hardware directly

Application software runs on top of the OS, not directly on hardware. The OS mediates all hardware access. Only the OS (and firmware) communicate directly with hardware.

Generate revision on any topic you study

Type any topic you're studying and Aicademy generates a complete lesson, quiz, and flashcard set — personalised to your level.

Lessons on anything

Structured, level-matched lessons on any topic you study

Practice quizzes

Find out what you actually know before the exam does

Flashcard sets

Lock in key concepts with instant revision cards

Ask Aica

Stuck on something? Get a clear explanation, any time

Prev

Data Compression and Encryption

Next

Programming Languages and Translators

Related lessons

6 Slides

Lesson

Programming Languages and Translators

A-Level Computer Science · AQA 7517

10 hours ago

7 Slides

Lesson

CPU Architecture and the Stored Program Concept

A-Level Computer Science · AQA 7517

10 hours ago