GCSE / Computer

Computer Systems

Learn the key GCSE Computer Science concepts behind computer systems, including hardware and software, Boolean logic and truth tables, system and application software, operating systems, programming language translators, CPU architecture, the Fetch–Decode–Execute cycle, RAM, ROM, cache, secondary storage, cloud storage and embedded systems.

Hardware means the physical components of a computer system that can be touched, such as the processor, memory, storage devices, keyboard and monitor. Software means the programs and instructions that tell the hardware what to do. A computer system needs both: hardware provides the physical resources, while software controls and uses those resources.
A logic gate is an electronic circuit that takes one or more binary inputs and produces a binary output. GCSE students need to understand the NOT, AND, OR and XOR gates. A truth table shows every possible combination of inputs and the output produced. Simple logic circuits may contain combinations of these gates and up to three inputs.
The NOT gate reverses an input: 0 becomes 1 and 1 becomes 0. AND outputs 1 only when all required inputs are 1. OR outputs 1 when at least one input is 1. XOR outputs 1 when the two inputs are different. NAND and NOR are not required for this specification section.
Logic circuits can also be represented using Boolean expressions. Students should be able to interpret a Boolean expression, construct the matching logic circuit and create a Boolean expression from a circuit. Boolean logic is based on binary values, which is one reason computers use binary internally.
Software can be divided into system software and application software. System software manages the computer and provides a platform for other programs. Application software performs tasks for the end user, such as word processing, image editing or web browsing.
An operating system (OS) is system software that manages a computer's resources and provides an environment in which applications can run. The OS manages processors, memory, input/output devices, applications and security. It also allows the user and applications to interact with computer hardware.
Utility software performs maintenance, management or protection tasks for a computer system. Utilities are classed as system software. Their purpose is to help manage the system rather than to complete a normal end-user task.
Programming languages can be classified as high-level or low-level. High-level languages are generally easier for programmers to read, write and maintain because their instructions are closer to human language. Low-level languages provide greater direct control over hardware but are more closely related to the processor's machine instructions.
Machine code consists of binary instructions that a processor can execute directly. It is specific to a processor or processor family. Assembly language is also a low-level language but uses mnemonics instead of binary instructions. Assembly language normally has approximately a 1:1 relationship with machine-code instructions.
Programs written in high-level or assembly languages must be translated before the processor can execute them. An assembler converts assembly language into machine code. A compiler translates a high-level program into machine code before execution. An interpreter translates and executes the program instruction by instruction and does not normally create a separate machine-code executable in the same way as a compiler.
CPU stands for Central Processing Unit. The purpose of the CPU is to process instructions and data and control the operation of the computer. Important CPU components include the Arithmetic Logic Unit (ALU), control unit, clock, registers and buses. The ALU performs arithmetic and logical operations, while the control unit coordinates CPU activities.
CPU performance can be affected by clock speed, the number of processor cores and cache size. A higher clock speed can allow more processing cycles per second. Multiple cores can process more instructions simultaneously when software can use them. Cache is very fast memory close to or inside the CPU that stores frequently needed instructions and data. A cache miss occurs when the required data is not found in the cache and must be retrieved from slower memory.
The CPU continuously performs the Fetch–Decode–Execute cycle. During fetch, the next instruction is obtained from main memory. During decode, the CPU works out what the instruction means. During execute, the instruction is carried out, which may involve arithmetic, logic, input/output or reading/writing data.
RAM (Random Access Memory) is volatile main memory used to hold programs and data currently in use. Its contents are lost when power is removed. ROM (Read Only Memory) is non-volatile and retains its contents without power. Cache provides very fast temporary access to commonly required data and instructions. Registers are extremely fast storage locations within the CPU used during processing.
Secondary storage provides long-term, non-volatile storage for programs and data. HDDs use magnetic storage, while SSDs use solid-state electronic storage. SSDs are generally faster, quieter and more resistant to physical shock, whereas HDDs can offer high storage capacities economically. Cloud storage stores data using storage devices at a remote location and offers access from different devices, but depends on connectivity and an external provider. An embedded system is a computer system built into a larger device to perform a specific function; it may use a microcontroller containing processing, memory and input/output capabilities.
Computer Systems GCSE Computer | Hardware, CPU & OS | TSL