Bag Of Cows

OCR GCSE Computer Science Syllabus

Papers

All
Paper 1
Paper 2

View all detail of all sections
View all detail of expanded sections

1.1 Systems architecture

1.1.1 The purpose of the CPU

1.1.2 Von Neumann architecture:

1.1.3 MAR (Memory Address Register) MDR (Memory Data Register) Program Counter, Accumulator

1.1.4 Common CPU components and their function:

ALU (Arithmetic Logic Unit),
CU (Control Unit),
Cache

1.1.5 The function of the CPU as fetch and execute instruc ons stored in memory

1.1.6 How common characteristics of CPUs affect their performance

clock speed,
cache size,
number of cores

1.1.7 Embedded systems

purpose of embedded systems

1.2 Memory

1.2.1 Diference between RAM and ROM

1.2.2 Purpose of ROM in a computer system

1.2.3 Purpose of RAM in a computer system

1.2.4 The need for virtual memory

1.2.5 Cash memory.

1.3 Storage

1.3.1 The need for secondary storage

1.3.2 Data capacity and calculation of data capacity requirements

1.3.3 Common types of storage

optical,
magnetic,
solid state

1.3.4 Suitable storage devices and storage media for a given application

The advantages and disadvantages of these using characteristics:,
capacity,
speed,
portability,
durability,
reliability,
cost.

1.4 Wired and wireless networks

1.4.1 Types of networks:

LAN (Local Area Network) ,
WAN (Wide Area Network)

1.4.2 Factors that affect the performance of networks

1.4.3 Different roles of computers in a client-server and a peer-to-peer network

1.4.4 Hardware needed to connect stand-alone computers into a Local Area Network:

wireless access points,
routers/switches,
NIC (Network Interface Controller/Card),
transmission media

1.4.5 The internet as a worldwide collec on of computer networks:

DNS (Domain Name Server),
hosting,
the cloud

1.4.6 Virtual networks.

1.5 Network topologies, protocols and layers

1.5.1 Star and mesh network topologies

1.5.2 Wifi :

frequency and channels,
encryption

1.5.3 The uses of IP addressing, MAC addressing

1.5.4 Protocols, including:

TCP/IP (Transmission Control Protocol/Internet Protocol),
HTTP (Hyper Text Transfer Protocol),
HTTPS (Hyper Text Transfer Protocol Secure),
FTP (File Transfer Protocol),
POP (Post O ce Protocol),
IMAP (Internet Message Access Protocol) ,
SMTP (Simple Mail Transfer Protocol)

1.5.5 Ethernet

1.5.6 The concept of layers

1.5.7 Packet switching.

1.6 System security

1.6.1 Forms of attack

1.6.2 Threats posed to networks:

malware,
phishing,
people as the 'weak point' in secure systems (social engineering),
brute force attacks,
denial of service attacks,
data interception and theft,
the concept of SQL injection,
poor network policy

1.6.3 Identifying and preventing vulnerabilities:

penetration testing,
network forensics,
network policies,
anti-malware software,
firewalls,
user access levels,
passwords,
encryption.

1.7 Systems software

1.7.1 The purpose and functionality of systems software

1.7.2 Operating systems:

user interface,
memory management/multi tasking,
peripheral management,
drivers,
user management,
file management

1.7.3 Utility system software:

encryption software,
defragmentation,
data compression,
the role and methods of backup: full and incremental.

1.8 Ethical, legal, cultural and environmental concerns

1.8.1 How to inves gate and discuss Computer Science technologies while considering:

ethical issues,
legal issues,
cultural issues environmental issues,
privacy issues.

1.8.2 How key stakeholders are a ected by technologies

1.8.3 Environmental impact of Computer Science

1.8.4 Cultural implications of Computer Science

1.8.5 Open source vs proprietary software

1.8.6 Legislation relevant to Computer Science:

The Data Protection Act 1998,
Computer Misuse Act 1990,
Copyright Designs and Patents Act 1988,
Creative Commons Licensing,
Freedom of Information Act 2000.

2.1 Algorithms

2.1.1 Computational thinking:

2.1.2 Abstraction decomposition algorithmic thinking

2.1.3 Standard searching algorithms:

binary search,
linear search

2.1.4 Standard sortng algorithms:

bubble sort,
merge sort,
insertion sort

2.1.5 How to produce algorithms

pseudocode,
flow diagrams

2.1.6 Interpret, correct or complete algorithms.

2.2 Programming techniques

2.2.1 Variables, constants, operators, inputs, outputs and assignments

2.2.2 The three basic programming constructs used to control the flow of a program:

sequence,
selection,
iteration (count and condition controlled loops)

2.2.3 Basic string manipulation

2.2.4 Basic file handling operations

open,
read,
write,
close

2.2.5 Use of records to store data

2.2.6 Use of SQL to search for data

2.2.7 Arrays (or equivalent) when solving problems

one dimensional arrays,
two dimensional arrays

2.2.8 Sub programs (functions and procedures) to produce structured code

2.2.9 Data types:

integer,
real,
Boolean,
character ,
string,
casting

2.2.10 Common arithmetic operators

2.2.11 Common Boolean operators.

2.3 Producing robust programs

2.3.1 Defensive design considerations:

input sanitisation/validation,
planning for contingencies,
anticipating misuse,
authentication

2.3.2 Maintainability:

comments,
indentation

2.3.3 The purpose of testing

2.3.4 Types of testing:

iterative,
final/terminal

2.3.5 How to identify syntax and logic errors

2.3.6 Selecting and using suitable test data.

2.4 Computational logic

2.4.1 Why data is represented in computer systems in binary form

2.4.2 Simple logic diagrams using the operations AND, OR and NOT

2.4.3 Truth tables

2.4.4 Combining Boolean operators using AND, OR and NOT to two levels

2.4.5 Applying logical operators in appropriate truth tables to solve problems

2.4.6 Applying computing-related mathematics:

/ + * - ^ MOD DIV

2.5 Translators and facilities of languages

2.5.1 Characteristics and purpose of different levels of programming language

"including low level languages "

2.5.2 The purpose of translators

2.5.3 The characteristics of an assembler, a compiler and an interpreter

2.5.4 Common tools and facili es available in an integrated development environment (IDE):

editors,
error diagnostics run-time environment translators.

2.6 Data representation

2.6.1 Units

Bit,
nibble,
byte,
kilobyte,
megabyte,
gigabyte,
terabyte,
petabyte.

2.6.2 Conversions

how data needs to be converted into a binary format to be processed by a computer.

2.6.3 Numbers: how to convert positive denary whole numbers (0_255) into 8 bit binary numbers and vice versa

2.6.4 Numbers: how to add two 8 bit binary integers and explain overflow errors which may occur

2.6.5 Numbers: binary shifts

2.6.6 Numbers: how to convert positive denary whole numbers (0_255) into 2 digit hexadecimal numbers and vice versa

2.6.7 Numbers: how to convert from binary to hexadecimal equivalents and vice versa

2.6.8 Numbers: check digits

2.6.9 Characters: the use of binary codes to represent characters

2.6.10 Characters: the term 'character-set'

2.6.11 Characters: the relationship between the number of bits per character in a character set and the number of characters which can be represented

ASCII,
extended ASCII,
Unicode

2.6.12 Images: how an image is represented as a series of pixels represented in binary

2.6.13 Images: metadata included in the file

2.6.14 Images: the effect of colour depth and resolution on the size of an image file.

2.6.15 Sound: how sound can be sampled and stored in digital form

2.6.16 Sound: how sampling intervals and other factors affect the size of a sound file and the quality of its playback:

sample size,
bit rate,
sampling frequency.

2.6.17 Compression: need for compression

2.6.18 Compression: types of compression:

lossy,
lossless