Skip to main content
EnglandComputer Science

Eduqas A-Level Computer Science functional programming and the operating system: pure functions, scheduling, memory and software made exam-ready

A deep-dive Eduqas Component 2 guide to functional programming and the operating system (sections 3.5 to 3.7). Covers the functional paradigm with pure functions and immutability, higher-order functions (map, filter, fold), the operating system with scheduling and interrupts, memory management with paging and virtual memory, and software applications, utilities and licensing.

Generated by Claude Opus 4.815 min readEduqas-A-Level-CS-3.5-3.7

Reviewed by: AI editorial process; not yet individually human-reviewed

Jump to a section
  1. What this section actually demands
  2. The functional paradigm
  3. The operating system and software
  4. How this section is examined
  5. Check your knowledge

What this section actually demands

This part of Component 2 (specification sections 3.5 to 3.7) covers a deliberately different programming paradigm (functional), the software that runs the machine (the operating system), how memory is managed, and how all software is classified and licensed. Eduqas rewards precise definitions (purity, referential transparency, paging versus segmentation) and the ability to apply concepts, building a functional pipeline, tracing an interrupt, or recommending software.

This guide walks through the topics in order and sets out the exam patterns Eduqas repeats. Each topic has a matching dot-point page with practice; this overview ties them together.

The functional paradigm

The functional programming paradigm treats functions as first-class values and is built on pure functions (output depends only on input, no side effects), referential transparency, immutability and recursion in place of loops, contrasting with the state-changing imperative style. Higher-order functions and list processing covers functions that take or return functions, the map (transform each), filter (keep those that pass) and fold/reduce (combine to one value) operations, function composition, and processing lists by head and tail. Eduqas teaches this in Haskell.

The operating system and software

The operating system covers its role as the interface and resource manager, process management and CPU scheduling (round robin, priority and others), interrupts (save state, run the ISR, restore), and input/output and file management. Memory management covers allocation and protection, paging (fixed-size frames) versus segmentation (variable-size logical segments), and virtual memory with disk thrashing. Software applications covers system versus application software, generic/special-purpose/bespoke, utility programs, and licensing.

How this section is examined

A typical Eduqas profile for sections 3.5 to 3.7:

  • Functional. Define pure functions and referential transparency; compare functional with imperative; build a map/filter/fold pipeline.
  • Operating system. List the OS functions; explain scheduling; trace an interrupt with the save/restore of state.
  • Memory. Distinguish paging and segmentation; explain virtual memory and thrashing.
  • Software. Classify system versus application and generic/special/bespoke; describe utilities; explain licensing.

Check your knowledge

A mix of recall and applied questions covering the section. Attempt them under timed conditions, then check against the solutions.

  1. State the two properties of a pure function. (2 marks)
  2. What does the filter operation produce when applied to a list? (1 mark)
  3. Give two functions of an operating system. (2 marks)
  4. State the first thing the processor does after finishing the current instruction when an interrupt occurs. (1 mark)
  5. State one difference between paging and segmentation. (2 marks)
  6. Give one example of a utility program and what it does. (1 mark)

Sources & how we know this

  • computer-science
  • a-level-eduqas
  • eduqas-computer-science
  • functional-programming
  • operating-system
  • virtual-memory
  • software