J277 Glossary Booklet
J277 Glossary Booklet
Glossary of Key
Terms
This guide explains each of the key terms you need to be
familiar with as part of your studies in GCSE Computer Science.
2
1.1 Systems Architecture
1.1.1 Architecture of the CPU
Instructions are fetched one by one from main memory, decoded, and
Fetch-execute
then executed by the processor. This cycle repeats until the program is
Cycle
complete
CPU (Central A chip within the computer which controls the operation of all parts of the
Processing Unit) computer and decodes then executes program instructions.
ALU (Arithmetic
Logic Unit) The part of the CPU responsible for arithmetic and logical operations.
High speed memory built into the CPU. Instructions are copied to cache
Processor Cache memory allowing them to be accessed more quickly and therefore
increasing the speed of the CPU.
A small area of memory within the CPU where data is stored temporarily
Register
to avoid the delay in copying to and from main memory,
The design on which most computers are based. It defines several
Von Neumann
registers along with the fetch-execute cycle and how the CPU interacts
Architecture
with main memory.
MAR (Memory
Address A register. It contains the address of the instruction currently being read
Register) from or written to main memory.
MDR (Memory A register. It contains the instruction which has just been copied from
Data Register) main memory.
A register. It contains the address of the next instruction to be fetched
Program Counter from memory. It is updated each time a new instruction is fetched to
contain the address of the next needed instruction.
Accumulator A register. Stores the result of the last operation.
1.1.2 CPU Performance
How many instruction cycles the CPU can deal with in a second.
Clock Speed
Measured in MHz or GHz. Faster is better.
The larger the amount of cache the CPU has the more instructions it can
Cache Size store without having to transfer to main memory and therefore the faster it
will perform.
Some CPUs have more than one core, each containing its own ALU and
registers and therefore capable of carrying out instructions independently.
Cores
The more cores, the more instructions the CPU can process at once and
therefore the faster it performs.
1.1.3 Embedded Systems
Specialist hardware and software build into a device with a single specific
Embedded
purpose. They are usually found within appliances such as washing
System
machines.
1.2 Memory and Storage
1.2.1 - Primary Storage (Memory)
Also known as memory. Holds the data, programs and instructions
Primary Storage
currently in use.
Random Access Memory. Stores programs and data before they are
RAM processed by the CPU. Read/write memory, meaning the contents can
be changed. The contents are lost when the computer is turned off.
Read Only Memory. Data can be retrieved but not changed and the
ROM contents are not lost when the computer is turned off. Used to store
programs for embedded system
Volatile Memory Data stored in volatile memory is lost when the computer is turned off.
No-Volatile Data stored in non-volatile memory is not lost when the computer is
Memory turned off.
3
Space on the computer's hard drive used as main memory (RAM). Virtual
Virtual Memory
memory is slower than main memory.
1.2.2 Secondary Storage
A type of secondary storage which stores data on a spinning plastic or
Optical Storage
metal disk. Data is read from and written to the disk using a laser.
Magnetic A type of secondary storage which uses magnetic fields to store data. A
Storage read/write head reads and writes data from the media.
A type of secondary storage which uses flash memory to store data. They
Solid State
have no moving parts and are much faster than optical or magnetic
Storage
storage.
A magnetic storage drive which can store large amounts of data and is
HDD (Hard Disk often the main method of secondary storage in personal computers. The
Drive) drive contains a number of internal disks and a read/write head used to
read and write data.
DVD (Digital A high capacity optical storage disk commonly used for video storage. A
Versatile Disk) range of capacities are available up to 17GB
CD (Compact An optical storage disk often used to store music. Capacity is usually
Disk) around 800mb
A solid state storage drive which carries out the function of a traditional
SSD (Solid State HDD. They are much faster than HDDs and less easy to damage as they
Drive) have no moving parts. They are also more expensive and usually lower
capacity.
1.2.3 Units
Bit The smallest unit of storage, containing a binary 1 or 0.
Nibble 4 bits (half a byte)
Byte 8 bits
Kilobyte (KB) 1000 bytes
Megabyte (MB) 1000 KB
Gigabyte (GB) 1000MB
Terabyte (TB) 1000GB
Petabyte (PB) 1000TB
A number system used by computers. It contains only two symbols, 0 and
Binary
1 and is also known as base 2.
1.2.4 Data Storage
The number system most often used by people. It uses the digits 0 to 9
Denary
and is also known as base 10 or decimal.
Positive Number A number greater than 0.
Negative
Number A number less than 0.
Integer A whole number without a decimal point or fraction. E.g. 1, 100 or 88122
This happens when not enough space has been allocated to store the
Overflow Error results of a calculation. For example, if one byte has been allocated but
the result is 9 bits long.
A number system used by computers. It contains only two symbols, 0 and
Hexadecimal
1 and is also known as base 2.
A process used to preform maths on binary numbers. It involves moving
Binary Shift
all the digits to the left or right.
Most Significant The furthest left digit in a string of binary numbers, its position means it
Bit has the highest value.
Least Significant The furthest right digit in a string of binary numbers, its position means it
Bit has the lowest value.
Character A single symbol, for example a letter, number or punctuation mark.
4
A system for representing characters in binary, each character is
Character Set
assigned a unique binary number.
American Standard Code for Information Interchange. A 7 bit character
ASCII
set used to represent characters.
A much larger character set created to overcome the limited number of
Unicode characters available in ASCII. It includes many different language
characters as well as other symbols such emojis.
Short for Picture Element. Pictures on a computer are divided into a grid,
Pixel
with each square in the grid being one pixel which can be a single colour.
Additional data about a file such as when it was created or who created it.
Metadata Commonly used with photos to store things like the make of camera or
location the photo was taken.
The amount of bits available for colours in an image. The higher the
Colour Depth colour depth the more colours available and therefore the more realistic
the image will appear.
The number of pixels an image is divided into. The higher the resolution,
Resolution
the more pixels in the image and the clearer it will be.
The number of samples taken in one second. This is measured in hertz
Sample Rate (Hz), 1Hz is one sample per second. The higher the sample rate, the
more samples per second and therefore the higher the quality of the file.
The number of bits available for each sample. The higher the bit depth,
Bit Depth
the more bits available and therefore the better the quality.
A continuously varying signal, usually represented as a curved line.
Analogue
Examples include sound or temperature recordings.
1.2.5 Compression
A way of reducing the size of a file. It is often used with photos, music
Compression
and video files.
A compression method which reduces the file size by removing certain
Lossy
data. The original file cannot be restored from the compressed version
Compression
but the file is reduced by more than with lossless compression.
A compression method which reduces the file size without losing any
Lossless
data. The original file can be restored from the compressed version, but
Compression
the file size is not reduced by as much.
1.3 Computer networks, connections and protocols
1.3.1 Networks and topologies
Two or more computers connected together for the purposes of sharing
Network
data or resources.
LAN (Local Area A network which covers a small geographic area such as a single
Network) building.
WAN (Wide Area
Network) A network which covers a large geographic area.
A network setup where resources or processing are carried out by a
Client - Server central computer (called a server) with other devices (called clients)
accessing resources via the network.
A network setup where all computers have an equal status and function
Peer to Peer
as both client and server.
Wireless Access Uses a wireless radio to allow devices to connect wirelessly to an existing
Point network.
A device which connects two or more different networks together allowing
Router
them to communicate with one another.
A device which provides computers and other devices with a wired
Switch
connection to a network.
NIC (Network A component within a computer or other device which allow it to connect
Interface Card) to a network. The card provides the physical connection to the network
5
and controls the sending and receiving of data between the computer and
the network. It may be built into the computer motherboard or a separate
expansion card.
Transmission The physical connection which carries data between network devices.
Media This could be a cable or wireless signals depending on the network.
DNS (Domain A system which links a URL or other human readable name with an IP
Name System) address.
The storing of files or other data on a server. The server storing the data
Hosting
is called the host.
A term for accessing storage or other resources remotely across The
The Cloud
Internet.
A server which hosts web sites and pages for users to access, usually via
Web Server
The Internet.
Network The way in which computers and other network devices are connected
Topology together.
A network topology where all devices connect back to a single central
Star Network
point. All communications travel via the central point.
A network topology where all devices are connected to each other rather
Mesh Network
than a central point.
The amount of data which can be transferred via a network in any given
Bandwidth time. More bandwidth allows more data to travel across the network at
the same time resulting in faster transfer speeds.
The Internet A global network connecting millions of computers and other devices.
Uniform Resource Locator. A human readable name given to websites
URL and other Internet resources. DNS is used to translate the URL into the
IP of the web server.
Client A computer or other device which accesses data from a central server.
1.3.2 Wired and Wireless Networks, Protocols and Layers
A physical copper cable used to connect devices on a network. The term
Ethernet also refers to the protocols and standards used to control how data is
sent and received on the cable.
Wi-Fi A technology which uses wireless signals to connect network devices.
A short range wireless networking technology. It has relatively low range
Bluetooth and speeds and is most often used for peripheral devices such as mice
or headsets.
The process of converting data so that it cannot be easily read or
Encryption understood without first being decrypted. It is often used to keep
important data secure when sharing it over a network.
Stands for Internet Protocol Address. A unique address assigned to every
IP Address
computer on a network.
Internet Protocol Version 4. Devices are assigned addresses made up of
IPv4 four numbers separated by dots, e.g. 232.112.11.1 each number can be
between 0 and 255.
Internet Protocol Version 6. Designed in response to the limited number
of addresses in IPv4. Devices are assigned an address made of eight
IPv6
groups of hexadecimal characters such as
FE80:CD00:0000:0CDE:1257:0000:211E:729C
Media Access Control Address. A 12 digit hexadecimal number assigned
MAC Address to a network interface card. Each card has its own unique MAC
addressed assigned when the card is made.
An agreed way of doing something allowing different people and
Standard
organisations to make products and services which work together.
An agreed set of rules for how network communications should take
Protocol
place.
6
Transfer Control Protocol / Internet Protocol. A group of standards which
TCP/IP control how data is sent and received over networks including the
Internet.
Hypertext Transfer Protocol. A standard for transferring web pages
HTTP between a client and web server. It is based around the idea that clients
send a request which the server responds to.
Hypertext Transfer Protocol Secure. A version of the HTTP standard with
HTTPS security added. Commonly used for accessing secure websites such as
online banking.
FTP File Transfer Protocol. A standard for file transfer over networks.
Post Office Protocol. A standard used by email clients to retrieve emails
POP
from an email server.
Internet Message Access Protocol. A standard used by email clients to
IMAP access emails stored on an email server. It has the advantage over POP
of allowing emails to be stored and organised on the mail server.
Simple Message Transfer Protocol. A standard used for the sending of
SMTP
emails over networks and The Internet.
1.4 Network Security
A term for any software which is designed with malicious intent. Malware
may damage the computer, monitor user activity and files or delete or
Malware
damage data. There are many different types of malware which behave
in different ways.
Attempting to gain access to computer systems by targeting the people
using the system instead of using technical measures to attack the
Social system itself. People are often the weakest security point in a computer
Engineering system and examples such as watching someone enter their password or
pretending to be their boss and telling them to do something urgently aim
to take advantage of this fact.
Attempting to trick someone in to revealing information such as their
password, financial, or other private information by pretending to be
Phishing someone else. Phishing usually takes place by email, and involves
sending an email which pretends to have come from the user's bank or
other trusted organisation or person.
Attempting to guess a code or password by trying every possible solution
Brute-force until the correct one is found. The attack may work through a list of
attack common passwords or dictionary words, or simply start with a code of
0000, followed by 0001 etc.
Attempting to send more traffic or data to a computer system than it is
Denial of Service able to handle. If successful, this results in parts of the system, or even
Attack the whole system, being unable to process the data is receiving and
failing.
Attempting to access data whilst it is being transferred between devices,
usually over a network. The victim usually has no idea that their data has
Data Interception
been stolen, and the attacker may access usernames and passwords or
whole files.
Entering SQL code into a data input field on a web site or application. If
the system is not correctly coded, and uses a SQL database, the code
SQL Injection
could be run directly on the database, allowing the attacker to access,
change or delete the entire database.
An authorised hacking attempt where a person or company attempts to
Penetration hack into a system or network and then reports their finding to the
Testing system's owner. This allows security flaws to be fixed before real hackers
can take advantage of them.
7
Software which attempts to detect, prevent and remove malware on a
Anti-Malware
computer system. Anti-Virus software is a common example of anti-
Software
malware software.
A network security device which checks traffic passing through it against
a set of rules, only traffic which meets the rules is allowed through. This
Firewall
prevents traffic from unauthorised devices or using unauthorised
protocols from passing through.
Controlling which aspects of a system or network users can access.
User Access Users are allowed access only to the parts of the system the need,
Level preventing them from accidentally or deliberately damaging sensitive
parts of the system or accessing sensitive data.
A secret word or phrase, usually provided alongside a username, to
Password control access to a system or network. Only someone who knows the
correct password can access the system.
The process of converting data so that it cannot be easily read or
Encryption understood without first being decrypted. It is often used to keep
important data secure when sharing it over a network.
Securing the physical components of a system or network. This could be
Physical Security as simple as locking a portable computer to a desk or advanced as
storing servers in a reinforced building with multiple locked doors.
1.5 Systems Software
1.5.1 Systems Software
Operating Controls the operation of all aspects of the computer and provides an
System (OS) interface by which a user can interact with the computer.
A part of the operating system or other software which allows the user to
interact with and control it. They usually comprise of a graphical
User Interface component which the user can see on a monitor or other display
hardware, and way for the user to interact with the system, either by
typing commands, or clicking items with a mouse or touchscreen.
The function of the Operating System which manages the computer's
Memory
memory, controlling how the memory is used and which applications can
Management
access it.
The ability for an operating system to run more than one task or
Multitasking
application at the same time.
The ability of an operating system to control and manage hardware
Peripheral
devices such as printers, mice or speakers which are connected to the
Management
computer.
Computer code which provides instructions for how the operating system
should interact with a specific piece of hardware. Device drivers are
Device Driver
specific to the operating system and piece of hardware for which they
were designed.
A function of the operating system which manages user accounts. In
User many cases, multiple user accounts can exist with their own username,
Management password and access rights allowing more than one person to use the
same computer.
A function of the operating system which manages files and folders
File
stored on either the computer's internal storage, or external storage
Management
devices such as a USB Stick.
A function of the operating system which manages the access that
different users and applications have to the system. It allows different
Access Rights
user accounts or applications to be granted access to different parts of
the system.
1.5.2 Utility Software
Encryption Software which encrypts data. The encryption process turns the data into
Software code which is only readable with the correct key. This is designed to keep
8
the data secure and prevent it being read by those who should not have
access to it.
Software which reorders files stored on a hard disk so that they run in a
Defragmentation
sensible order to improve performance and efficiency.
Data
Compression Software which compresses data so that it takes up less storage space.
1.6 Ethical, Legal, Cultural and Environmental
Impacts of Digital Technology
The idea of right and wrong by which people should behave. This is not
Ethical the same as what is legal or illegal, but the idea of always doing the right
thing.
A set of rules which lay out behaviours which are not allowed and the
Legal punishments for breaking these rules. Laws vary from country to country,
with new laws being made and existing ones being updated.
A set of behaviours and expectations which people accept as being
normal and expected within their daily lives. These are not enforced by
Cultural any laws, and don't always have to do with right and wrong, but are how
people expect things should be. An example might be colouring a delete
button red, or ordering items starting at the top left of the screen.
Matters relating to the natural world around us and making sure we take
Environmental good care of things like animals, the atmosphere and the planet as a
whole.
The expectation that certain information is kept secret. Usually this
Privacy relates to personal information such as someone's address or medical
history which they would not want to be shared.
The Data A law in the United Kingdom which governs the processing of personal
Protection Act data. It outlines the requirements for organisations who handle data and
(2018) the rights of those who provide the data.
Computer
Misuse Act A law in the United Kingdom which makes misuse of computer systems
(1990) illegal if certain criteria are met.
Copyright
Designs and A law in the United Kingdom which provides protection in law for works
Patents Act and materials. The act explains what protections are available, and what
(1998) (if any) steps need to be taken to register for these protections.
The right for an organisation or user to use a piece of computer software.
The license is an agreement between the person or organisation who
Software License made the software and those using it and lays out any rules or
restrictions associated with use. The user may have to pay either a one
time or yearly fee for the license.
Open Source Software where the code is made available to the public to view or edit as
Software they wish. Open source software is usually free for anyone to use.
Proprietary Software where the source code is owned by a person or organisation
Software and is not available to the public.
2.1 Algorithms
2.1 Computational Thinking
Computational The process of thinking about a problem using computational means in
Thinking order to create a solution which a computer can implement.
The process of removing irrelevant or unnecessary information from the
Abstraction
problem in order to better understand the basic parts of it.
The process of breaking a problem down into smaller parts to make it
Decomposition
easier to solve.
9
Algorithmic The process of working out the individual steps needed to solve a
Thinking problem in order to produce an algorithmic solution.
2.1.2 Designing, Creating and Refining Algorithms
Algorithm A sequence of logical instructions to carry out a particular task.
A diagram which shows in graphical format the steps needed to solve a
Structure
problem. There are several different types of structure diagram and a flow
Diagram
chart is one example.
A way of writing out algorithms or other computer programs in a way
Pseudocode
which sits somewhere between full sentences and computer code.
A way of using pictures and shapes to represent the steps needed to
Flowchart
solve a problem or that a program will take.
Programming A language which can be understood by computers to produce computer
Language software.
Something wrong in computer code which causes it either to not run at all
Error
or to produce an incorrect output.
A table which records the values stored in each of a program's variables
Trace Table at each stage through the program. It is a useful tool when trying to find
errors in the code.
2.1.3 Searching and Sorting Algorithms
Search Finding a value or piece of information within a set of data.
A way of searching an ordered list by looking at the middle item in the list,
then looking at either the items above or below depending on if the
Binary Search
required value is higher or lower. This process repeats until the value is
found.
A way of searching through a list items, checking them one at a time until
Linear Search
the required value is found.
A way of placing information into a certain order, such as alphabetically
Sort
or by number.
A way or sorting a list by comparing the items in a list, two at a time, and
Bubble Sort changing the order if needed. The process repeats until the list is in the
correct order.
A way of sorting a list by dividing it in two until each item is separated
Merge Sort individually. Pairs of items are compared and placed in order until the list
as a whole is ordered.
A way of sorting a list by working through the items one at a time and
Insertion Sort
placing them in the correct position in the list.
2.2 Programming Fundamentals
2.2.1 Programming Fundamentals
A named value in which data can be stored by a computer program. The
Variable
data can be changed as the program runs.
A named value which is accessed by a computer program but is fixed
Constant
and cannot be changed.
Operators compare or modify values in computer code. Examples include
Operator
+ < and NOT.
Data or information which is put into the program. This could be entered
Input
via a user, or taken from a sensor.
Data or information which the program produces. This could be shown on
Output
a screen, sent to a printer, or saved to a file.
Assignment The process of placing a value in to a variable.
Sequence Following through a set of steps in a particular order.
Selection Taking different paths through the code depending on a condition.
Iteration Repeating a set of steps several times.
10
Count Controlled Using a counter to loop through one or more lines of code until they have
Loop been run a certain number of times.
Condition Using a loop to repeat one or more lines of code until a certain condition
Controlled Loop is met.
Arithmetic
Operator An operator which uses maths to modify numbers such as +
Boolean An operator which uses a logical criteria to compare two values such as <
Operator or AND
2.2.2 Data Types
Integer A whole number without a decimal point or fraction. E.g. 1, 100 or 88122
Real A number which may include a decimal point such as 11.2
Boolean
Operator A value which can be only TRUE or FALSE.
Character A single symbol, for example a letter, number or punctuation mark.
String A number of characters together, usually to form a word or sentence.
The process of forcing a value into a certain format, for example forcing a
Casting
telephone number to be stored as a string and not an integer.
2.2.3 Additional Programming Techniques
String
Manipulation A broad term for a number of ways to change or modify strings.
Concatenation The process of joining two or more strings together.
Slicing The process of splitting a string into two or more parts.
Ways in which computer code can interact with files on the computer's
File Handling
disk, such as opening them or writing data to them.
Record A single row or related information in a database table
Table A group of records and fields stored together in a database.
A part of a record in the database which stores specific information such
Field
as a name or address.
Structured Query Language. A programming language designed to be
SQL
used with databases.
A set of data items stored together with a single name and accessed by a
Array
program.
Sub Program A smaller part of the program which performs a specific task.
A sub program which performs a specific tasks and always returns a
Function
specific value when run.
A sub program which performs a specific task but does not always return
Procedure
a value.
Random Number A number generate by computer at random.
2.3 Producing Robust Programs
2.3.1 Defensive Design
Defensive Designing and building computer code with the ability to keep it secure,
Design easy to maintain and robust as a priority.
A security mechanism which requires a password, code, fingerprint or
Authentication
other factor to gain access to all or part of a system.
The process of comparing data entered into the program to a set of rules
Input Validation
to ensure it is valid and will not damage the system before processing it.
Maintainability The ability to keep code updated, fix bugs and add new features easily.
Naming An agreed way of naming parts of the program such as variables or sub
Conventions programs such that they are easy to read and their purpose is clear.
Inserting spaces at the start of a line or lines of code so to group them
Indentation
together and make the code easier to read.
11
Lines which do not form part of the code and are not executed but
Comment
instead provide notes and explanations to those looking at the code.
2.3.2 Testing
The process of trialling a program in order to ensure it performs as
Testing
expected.
Iterative Testing Testing which is carried out whilst the program is being developed.
Testing which is carried out at the end of development just before the
Final Testing
code is released.
An error which breaks the rules of the programming language and stops
Syntax Error
the code from running.
An error which produces an unexpected output even though the code still
Logic Error
runs.
Normal Data Data which the program should accept without error.
Boundary Data Data at the extremes of what the program should accept without error.
Data of the correct type, but not valid for the program and which should
Invalid Data
be rejected.
Erroneous Data Data which is the wrong type and should be rejected
2.4 Boolean Logic
AND Has two inputs and outputs 1 only if both are 1.
OR Has two inputs, if both are 1 then outputs 1, otherwise outputs 0.
NOT Has a single input and outputs the opposite of that input.
Truth Tables A table which shows the possible input and output values for a logic gate
An operator such as AND, OR or NOT which performs a logical function
Logic Gate
on the input.
Logic Diagram A diagram showing one or more logic gates together.
2.5 Programming Languages and Integrated
Development Environments
Programming A language which can be understood by computers to produce computer
Language software.
High Level A programming language which is close to English in the commands
Language used making it easier to learn and understand.
Low Level A programming language closer to machine code, using less English like
Language commands making it harder to understand.
A piece of software which converts programming language into machine
Translator
code which the computer can understand and execute.
Compiler A translator which converts code in one go.
Interpreter A translator which converts code line by line.
Integrated A piece of software used by developers to write computer code. They
Development often contain features such as translators and syntax highlighters to
Environment make it easier to write code.
Editor A piece of software used to write computer code.
Error Diagnostics Tools to help locate and resolve errors in code.
A tool which allows code to run on a system for which it was not
Runtime
designed. For example, running a mobile phone app on a desktop
Environment
computer.
12