0% found this document useful (0 votes)
9 views

System Software

The document provides an overview of system and application software, detailing their functions and examples. It explains the role of operating systems in managing hardware, file management, user interfaces, and security, as well as the importance of interrupts and memory management. Additionally, it covers programming languages, distinguishing between low-level and high-level languages, and their respective advantages and disadvantages.

Uploaded by

shc2439
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

System Software

The document provides an overview of system and application software, detailing their functions and examples. It explains the role of operating systems in managing hardware, file management, user interfaces, and security, as well as the importance of interrupts and memory management. Additionally, it covers programming languages, distinguishing between low-level and high-level languages, and their respective advantages and disadvantages.

Uploaded by

shc2439
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 44

System Software & Application

Software (Cambridge (CIE)


IGCSE Computer Science)
System Software & Application Software
• Software can be broken down in to two
categories, system and application software

What is system software?

• System software is software essential for the operation of the computer


system
• It gives users a platform to run applications and carry out tasks
• Examples of system software include:
o The operating system
o Utility software

Utility software

• Utility software is software designed to


help maintain, enhance and troubleshoot/repair a computer system
• Designed to perform a limited number of tasks
• Interacts with the computers hardware, for example, secondary storage
devices
• Some utility software comes installed with the operating system
• Examples of utility software and their function are:
o Defragmentation (maintain)
o Compression (enhance)
o Encryption (enhance)
o Task manager (troubleshoot/repair)

What is application software?

• Application software (abbreviated 'apps') is software chosen by a user to


help them carry out a specific task
• Installed on top of system software and is user chosen to best suit induvial
requirements
• Common categories of application software include:
o Productivity - get things done efficiently (word processors,
spreadsheets & presentation)
o Communication - stay connected (email, browser, messaging)
o Entertainment - Watch movies, play games or listen to music

The Purpose & Functionality of


Operating Systems
What is an operating system?
• An operating system (OS) is software that manages computer
hardware and provides a platform for running applications
• It provides an interface between the user and the hardware in a computer
system
• It hides the complexities of the hardware from the user, for example:
o A user does not need to know 'where' on secondary storage data is
kept, just that it is saved for when they want it again
• An operating systems main functions can be divided in to eight key areas

File Management
What is file management?

• File management is a process carried out by the operating system creating,


organising, manipulating and accessing files and folders on a computer
system
• The OS manages where data is stored in both primary and
secondary storage
• File management gives the user the ability to:
o Create files/folders
o Name files/folders
o Rename files/folders
o Copy files/folders
o Move files/folders
o Delete files/folders
• The OS allows users to control who can access, modify and delete
files/folders (permissions)
• The OS provides a search facility to find specific files based on various
criteria

Handling Interrupts
What is interrupt handling?

• Interrupt events require the immediate attention of the central processing


unit
• In order to maintain the smooth running of the system, interrupts need to
be handled and processed in a timely manner
• For example, if a user clicks cancel on a file conversion process, a signal is
sent from the mouse, interrupts the processor, and the operating system
will trigger the cancellation routine

User Interface
What is a user interface?

• A user interface is how the user interacts with the operating system
• Examples of user interfaces include:
o Command Line Interface (CLI)
o Graphical User Interface (GUI)
o Menu
o Natural language (NLI)
What is a command line interface?

• A Command Line Interface (CLI) requires users to interact with the operating
system using text based commands
• CLIs are more commonly used by advanced users
• Examples of CLIs are MSDOS (Microsoft Disk Operating System) and
Raspbian (for Raspberry Pi)

What is a graphical user interface?

• A Graphical User Interface (GUI) requires users to interact with the operating
system using visual elements such as windows, icons, menus & pointers
(WIMP)
• GUIs are optimised for mouse and touch gesture input
• Examples of GUIs are Windows, Android and MAC OS

What is a menu interface?

• A menu interface is successive menus presented to a user with a single


option at each stage
• Often performed with buttons or a keypad
• Examples include
o Chip and pin machines
o Vending machines
o Entertainment streaming services
What is a natural language interface?

• A natural language interface (NLI) uses the spoken word to respond to


spoken or textual inputs from a user
• Examples include
o Virtual assistants - Amazon Alexa, Google Assistant, Siri
o Search engines
o Smart home devices

Advantages and disadvantages of user interfaces

Interface Advantages Disadvantages


• Uses less system resources • Requires users to remember
• Useful for automation of tasks commands
Command line
• Commands are often faster to type • Typing errors are common
(CLI)
than navigating menus • Less intuitive than GUI

• Intuitive and user-friendly • Uses more system resources


• Requires no previous knowledge to • Can be slower to find and
use execute commands
Graphical (GUI)
• Information is visual, making it easier • Can be frustrating when doing
to understand repetitive tasks

• Simplicity • Limited flexibility


Menu • Efficiency • Accessibility issues

• Can be used by people with


• Not always reliable
Natural language disabilities
• Privacy concerns
(NLI) • Intuitive

Peripheral Management & Device Drivers


What is peripheral management?

• Peripheral management is a process carried out by the operating


system managing the way peripherals (hardware) interact with software
• The OS allocates system resources to peripherals to ensure efficient
operation
• Peripheral management makes plug-and-play (PnP) functionality
possible, automatically detecting and configuring new peripherals without
the need for manually installing device drivers or power cycling the system

What is a device driver?

• A device driver is a piece of software used to control a piece of hardware


• Peripherals require device drivers in order to be used by the operating
system
• The OS has generic device drivers built in which makes basic
compatibility possible and enables plug-and-play (PnP)
• In order for hardware to be used to its maximum capacity, often a separate
device driver must be downloaded from the manufacturer
• Device drivers are OS specific and are regularly updated

Memory Management & Multitasking


What is memory management?

• Memory management is a process carried out by the operating


system allocating main memory (RAM) between different programs that
are open at the same time
• The OS is responsible for copying programs and data from secondary to
primary storage as it is needed
• Programs and data require different amounts of RAM to operate efficiently
and the OS manages this process
• RAM is allocated based on priority and fairness, for example, system
applications (essential) may have a higher priority than user applications
• The OS dynamically manages the memory, adjusting allocation as needed
to maintain optimal system performance
• Memory management makes multitasking possible

What is multitasking?

• Multitasking is a process made possible by the OS simultaneously


managing system resources (memory, CPU etc) to give a user
the perception of being able to use multiple programs at the same time
• The OS splits tasks and allocates system resources based on a priority
• The CPU can only execute one instruction at a time, it can can execute
billions of them in one second.
• This makes it appear that multiple programs are running at the same time

Providing a Platform for Running Applications


• Operating systems provide a platform on which application software can
run, this is mainly by allowing software access to system resources
• For example, if a computer game has intensive graphics and online play, the
operating system will grant it access to the GPU and the network card
Organisation of application layer, operating system components, and
input/output
Providing System Security
What is system security?

• Operating systems provide various security features such as password-


protected system accounts, a firewall, virus scanning and file encryption
• Password-protected system accounts are a very common feature in operating
systems
• System accounts can also be restricted from performing certain actions, e.g.
editing network settings, installing unapproved software, changing the account
settings of other users

User Management
What is user management?
• User management is a process carried out by the operating system enabling
different users to log onto a computer
• The OS is able to maintain settings for individual users, such as desktop
backgrounds, icons and colour schemes
• A system administrator is able to allocate different access rights for different
users on a network

Worked Example

Ella uses her computer to create artwork for a magazine

Ella makes use of system software.

One type of system software is the operating system.

Identify and describe two functions of an operating system [6]

How to answer this question

• Break down the 6 marks, 1 mark each for identifying a function of the
operating system. For each function you need to make 2 points about how
they work

Answer

• Memory management
o Allocates memory to programs currently in use
o Gets data from RAM
o Stores data in RAM
• File management
o Creating/editing/renaming files
o Creating/editing/renaming folders
o Movement of files/folders
Hardware, Firmware & the
Operating System (Cambridge
(CIE) IGCSE Computer
Science)

Hardware, Firmware & the Operating System


How does application software, the operating system and hardware
communicate?

• Application software talks to the operating system, this allows it


to interact with the hardware
• The hardware processes and sends the information to the operating
system which talks directly to the applications software
• This process is repeated while application software is in use

What is firmware?

• Firmware is embedded directly in to the hardware of a device, to make


them function
• When a computer is turned on, it has to explore the ROM for its initial boot-up
instructions, these are contained in a Bootstrap loader
• The initial process is handled by the basic input/output system
(BIOS) which is known as firmware
• Once start-up is complete, instructions are sent to RAM to be processed by
the operating system
• This layer ensures that hardware devices e.g. keyboard and mouse are
available and can be communicated directly by the operating system
• Firmware translates between the hardware and the software

Interrupts (Cambridge (CIE)


IGCSE Computer Science)
Interrupts
What is an interrupt?

• An interrupt is a signal for the CPU to stop what it is currently doing and do
something else as a higher priority
• The CPU is in a continuous loop of carrying out the fetch-decode-execute
cycle, however there are occasions when this needs to be interrupted

How is an interrupt generated?

• An interrupt can be generated by hardware and software:


o Hardware - this is caused by a hardware device such as a hardware
failure
o Software - this occurs when an application stops or requests services
from the OS
• Interrupts are added to an area called the interrupt service routine
• The interrupt service routine holds instructions that will need to be fetched,
decoded and executed to complete the commands of the interrupt
• The contents of the registers within the CPU cannot be lost by an interrupt, so
contents are copied to a reserved area in RAM called a stack
• Contents are added to the top of the stack, which will save them for
later retrieval when the interrupt is complete
• The interrupt will be executed instead of the original instructions

What are examples of hardware interrupts?

• Hardware
o power button may have been pressed
o moving the mouse
o clicking an icon to open a new program
o keyboard presses e.g. ctrl, alt, delete

What are examples of software interrupts?


• Software
o a program is not responding
o division by zero
o two processes trying to access the same memory location

Examiner Tips and Tricks

The main focus of interrupts is the importance of the interrupt service routine and
the role it plays in moving current instructions to the stack so that they can be
interrupted BUT continue again afterwards

Worked Example

Describe the purpose of an interrupt in a computer system

[4]

Answer

Four from:

• Used to attend to certain tasks/issues


• Used to make sure that vital tasks are dealt with immediately
• The interrupt/signal tells the CPU/processor (that its attention is
required)
• A signal that can be sent from a device (attached to the computer)
• A signal that can be sent from software (installed on the computer)
• The interrupt will cause the OS/current process to pause
• The OS/CPU/ISR will service/handle the interrupt
• They have different levels of priority
• After the interrupt is serviced, the (previous) process is continued
• It enables multi-tasking to be carried out on a computer
• A valid example of an interrupt e.g. ‘out of paper’ message for a printer
Levels of Programming
Languages (Cambridge (CIE)
IGCSE Computer Science)

What is a programming language?


• A programming language acts as a bridge between what humans
understand and what a computer understands
• Early computers were complex and instructions would have to be in written
in binary code, 0s and 1s
• This process was slow, taking days to program simple tasks
• Over time, new generations of programming languages have enabled people
to become faster and more efficient at writing programs as they resemble
human language
• Generations of programming languages can be split in to two categories:
o Low-level
▪ First generation
▪ Second generation
o High-level
▪ Third generation

Low-Level Languages
What is a low-level language?

• A low-level language is a programming language that directly translates to


machine code understood by the processor
• Low-level languages allow direct control over hardware components such
as memory and registers
• These languages are written for specific processors to ensure they embed
the correct machine architecture

First generation

• Machine code is a first-generation language


• Instructions are directly executable by the processor
• Written in binary code

Second generation

• Assembly code is a second-generation language


• The code is written using mnemonics, abbreviated text commands such
as LDA (Load), STA(Store)
• Using this language programmers can write human-readable programs that
correspond almost exactly to machine code
• One assembly language instruction translates to one machine code
instruction
• Needs to be translated into machine code for the computer to be able to
execute it

Advantages Disadvantages
Complete control over the system
Difficult to write and understand
components
Occupy less memory and execute faster Machine dependent
Direct manipulation of hardware More prone to errors
Knowledge of computer architecture is key to program
effectively
High-Level Languages
What is a high-level language?

• A high-level programming language uses English-like statements to allow


users to program with easy to use code
• High-level languages allow for clear debugging and once programs are
created they are easier to maintain
• High level languages were needed due to the development of processor
speeds and the increase in memory capacity
• One instruction translates into many machine code instructions
• Needs to be translated into machine code for the computer to be able to
execute it
• Examples of high-level languages include:
o Python
o Java
o Basic
o C+

Advantages Disadvantages
The user is not able to directly manipulate the
Easier to read and write
hardware
Needs to be translated to machine code before
Easier to debug
running
Portable so can be used on any computer The program may be less efficient
One line of code can perform multiple
commands
Assembly
Language (Cambridge (CIE)
IGCSE Computer Science)
Assembly Language
What is assembly language?

• Assembly language is a second generation, low-level language designed to


simplify the writing of machine code instructions for programmers
• Programmers use assembly language for the following reasons:
o Need to make use of specific hardware or parts of the hardware
o To complete specific machine dependent instructions
o To ensure that too much space is not taken up in RAM
o To ensure code can completed much faster
• Assembly languages allow programmers to program with mnemonics. e.g.
o LDA Load - this will ensure a value is added to the accumulator
o ADD Addition - this will add the value input or loaded from memory to
the value in the accumulator
o STO, Store - stores the value in the accumulator in RAM

• Assembly language allowed continuation of working directly with the hardware


but removed an element of complexity
• A mnemonic is received by the computer and it is looked up within a specific
table
• An assembler is needed to check the word so that it can be converted into
machine code
• If a match from the word is found e.g. STO the word is replaced with the
relevant binary code to match that sequence

Worked Example

Complete the table to identify whether each example of computer code is High-
level, Assembly language or Machine code

Computer code High-level Assembly Machine code


10110111

00110110

11100110
FOR X = 1 to 10
PRINT x

NEXT X
INP X

STA X

LDA Y
[3]

Answer

Computer code High-level Assembly Machine code


10110111

00110110 X

11100110
FOR X = 1 to 10

PRINT x X

NEXT X
INP X

STA X X

LDA Y

Translators, Compilers &


Interpreters (Cambridge (CIE)
IGCSE Computer Science)
Translators, Compilers & Interpreters
What is a translator?

• A translator is a program that translates program source code into machine


code so that it can executed directly by a processor
• Low-level languages such as assembly code are translated using
an assembler
• High-level languages such as Python are translated using
a compiler or interpreter
What is a compiler?

• A compiler translates high-level languages into machine code all in one go


• Compilers are generally used when a program is finished and has been
checked for syntax errors
• Compiled code can be distributed (creates an executable) and run without
the need for translation software
• If compiled code contains any errors, after fixing, it will need re-compiling

Advantages Disadvantages
Speed of execution Can be memory intensive
Optimises the code Difficult to debug
Original source code will not be seen Changes mean it must be recompiled
It is designed solely for one specific processor
What is an interpreter?

• An interpreter translates high-level languages into machine code one line at a


time
• Each line is executed after translation and if any errors are found,
the process stops
• Interpreters are generally used when a program is being written in the
development stage
• Interpreted code is more difficult to distribute as translation software is
needed for it to run

Advantages Disadvantages
Stops when it finds a specific syntax error in the
Slower execution
code
Every time the program is run it has to be
Easier to debug
translated
Require less RAM to process the code Executed as is, no optimisation
Worked Example

A computer program is written in a high-level programming language.

(a) State why the computer needs to translate the code before it is executed.[1]

(b) Either a compiler or an interpreter can translate the code. Describe two
differences between how a compiler and an interpreter would translate the code.[2]

How to answer this question

• (a) what time of language does a computer understand?


• (b) the keyword is 'how'

Answer

(a)
• To convert it to binary/machine code
• The processor can only understand machine code

(b)

• Compiler translates all the code in one go...


• ...whereas an interpreter translates one line at a time
• Compiler creates an executable...
• ...whereas an interpreter does not/executes one line at a time
• Compiler reports an error at the end...
• ...whereas an interpreter stops when it finds an error

Tools & Facilities in


IDEs (Cambridge (CIE) IGCSE
Computer Science
Tools & Facilities in IDEs
What is an IDE?

• An Integrated Development Environment (IDE) is software designed to


make writing high-level languages more efficient
• IDEs include tools and facilities to make the process of
creating/maintaining code easier, such as:
o Editor
o Error diagnostics
o Run-time environment
o Translators

Editor

• An editor gives users an environment to write, edit and maintain high-level


code
• Editors can provide:
o Basic code formatting tools - changing the font, size of the font and
making text bold etc
o Prettyprint - using colour to make it easier to identify keywords, for
example 'print', 'input' and 'if' in Python
o Code editing - auto-completion and auto-correction of code, bracket
matching and syntax checks
o Commenting code - allows sections of code to be commented out
easily to stop it from being run or as comments on what the program is
doing

Error-diagnostics

• Tools that help to identify, understand and fix errors in code, such as:
o Identifying errors - highlight particular areas of code or provide direct
error messages where the error may have appeared e.g. indentation
errors etc
o Debugger - provide a 'step through' command which provides step by
step instructions and shows what is happening to the code line by line,
useful for finding logic errors

Run-time environment

• Gives users the ability to run and see the corresponding output of a high-
level language

Translator

• Built in to compile or interpret code without the need for an extra piece of
software

The Internet & the World Wide


Web (Cambridge (CIE) IGCSE
Computer Science)
The Internet & the World Wide Web
What is the Internet?

• The Internet is a global network of networks


• The Internet is the most well-known Wide Area Network (WAN)
• The Internet is the infrastructure used to provide connectivity to the World
Wide Web

What is the World Wide Web?

• The world wide web, or simply the web, is a collection of websites and web
pages that are accessed using the internet
• It was created in 1989 by Tim Berners-Lee, who envisioned it as a way
to share and access information on a global scale
• The web consists of interconnected documents and multimedia files that
are stored on web servers around the world
• Web pages are accessed using a web browser, which communicates with
web servers to retrieve and display the content

Network Protocols (Cambridge


(CIE) IGCSE Computer
Science)
HTTP & HTTPS
What is HTTP & HTTPS?

• Hypertext Transfer Protocol (HTTP) allows communication between clients


and servers for website viewing
• HTTP & HTTPS are protocols, a set of rules governing communication
between devices on a network
• HTTP allows clients to receive data from the sever (fetching a webpage)
and send data to the server (submitting a form, uploading a file)
• HTTPS works in the same way as HTTP but with an added layer of security
• All data sent and received using HTTPS is encrypted
• HTTPS is used to protect sensitive information such as passwords,
financial information and personal data
Web Browser (Cambridge (CIE)
IGCSE Computer Science)
Web Browser
What is a web browser?

• A web browser is a piece of software used


to access and display information on the internet
• A web browser displays web pages by rendering hypertext markup
language (HTML)
• Web browsers interpret the code in HTML documents and translate it into a
visual display for the user

Functions of a web browser

Function Description
Render HTML Display the web page
E.g. back/forward buttons and home button, to help users move
Provide navigation tools
between pages
Storing bookmarks & Allow users to save links to frequently visited websites and access them
favourites easily
Storing cookies Cookies
Record user history Allow users to quickly revisit recently viewed web pages
A place for user to type in the URL (link to URL page) of a web page
Provide address bar
to visit
Allow multiple web pages to be open at once so users can quickly
Multiple tabs
switch between them
Web Pages (Cambridge (CIE)
IGCSE Computer Science)
Loading a Web Page
How is a web page loaded?

• Web pages are held on web servers (1), known as 'hosting'


• To access a web page on a web server, a web browser is used
• In the browser, a user enters a web page URL (2)
• The browser sends the domain name to a DNS (3)
• The browser connects to the web server and requests to access the page
• HTML (4) is transferred and rendered by the browser, displaying the web
page

Web Servers (1)


What is a web server?

• A web server is a remote computer that stores the files needed to display
a web page on the Internet
• Web servers are generally available 24/7 and security is managed by the
owner of the hardware
• Web servers provide access to multiple users at the same time

Uniform Resource
Locator (URL) (2)
What is a URL?

• A Uniform Resource Locator (URL) is a unique identifier for a web page,


known as the website address
• It is text based to make it easier to remember
• A user enters a URL into a web browser to view a web page
• An example of a URL is:

https://www.savemyexams.com/igcse/computer-science/cie/23/revision-notes/

• A URL can typically be split into three parts:


o Protocol
o Domain name
o Web page/file name
• Using the example about the URL would be split as follows:
Communication method to transfer data
Protocol https
between client and server
Name of the server where the resource is
Domain name www.savemyexams.com
located
Web page/file /igcse/computer-
Location of the file or resources on the server
name science/cie/23/revision-notes/
Domain Name System (DNS) (3)
What is a DNS?

• The Domain Name System (DNS) can be thought of as the Internet's


equivalent to a phone book
• It is essentially a directory of domain names and is used to translate human-
readable domain names to the numeric IP addresses that computers use
• When you type a URL into your browser, the DNS translates the domain
name into its associated IP address so your computer can connect to the
server hosting the website
• Without DNS, we would have to remember the IP address of every site we
want to visit

HTML (4)
What is HTML?

• Hypertext Markup Language (HTML), is the foundational language used to


structure and present content on the web
• HTML consists of a series of elements, often referred to as "tags"
• Most tags are opened and closed e.g. <html> and </html>, whereas some
tags are only opened e.g. <img> and <link>

Structure

• HTML is used to define the basic structure of a webpage by organising


content into sections such as headers, paragraphs, and footers
• The <html> tag is the root element of an HTML page and includes all other
HTML elements used to create a page structure

<!DOCTYPE html>
<html>
<head>
<title>My Web Page</title>
</head>
<body>
<header>
<h1>Welcome to My Website</h1>
</header>
<main>
<section>
<h2>About Me</h2>
<p>This is a paragraph about me.</p>
</section>
<section>
<h2>My Projects</h2>
<p>This is a paragraph about my projects.</p>
</section>
</main>
<footer>
<p>Contact: [email protected]</p>
</footer>
</body>
</html>
• In this example, HTML is used to create a structure with a header, two
sections in the main body, and a footer
• Other examples of HTML being used for structure include:
o Creating lists to structure information
o Positioning of text on the screen
o Embedding media and interactive elements

Present

• HTML is also used to present and display information in a


visually meaningful way
• The content layer of a web page is made up of HTML elements such
as headings (<h1>, <h2>, etc.), paragraphs (<p>), links (<a>), images (<img>),
and more
• This layer is mainly handled by CSS (Cascading Style Sheets)

<!DOCTYPE html>
<html>
<body>
<h1>Welcome to My Website</h1>
<p>This is a paragraph introducing the content of the website.</p>

<h2>Subheading 1</h2>
<p>Here is some detailed information under the first subheading.</p>

<h2>Subheading 2</h2>
<p>Another section with more information.</p>

<p><strong>Bold text</strong> and <em>italic text</em> can emphasise important points.</p>


</body>
</html>
• In this example, headings (<h1>, <h2>) and text formatting tags
(<strong>, <em>) are used to present the content clearly and with emphasis
• Other examples of HTML being used to present information include:
o Presenting data in a table
o Displaying images with captions

Worked Example

A company sells products over the Internet.

Explain how the information stored on the company’s website is requested by the
customer, sent to the customer’s computer and displayed on the screen.
[7]

Answer

Seven from:

Requested

• a web browser is used


• user enters the URL / web address (into the address bar) // clicks a link
containing the web address // clicks an element of the webpage
• the URL / web address specifies the protocol
• protocols used are Hyper Text Transfer Protocol (HTTP) / Hyper Text
Transfer Protocol Secure (HTTPS)

Sent

• the URL / web address contains the domain name


• the domain name is used to look up the IP address of the company
• the domain name server (DNS) stores an index of domain names and IP
addresses
• web browser sends a request to the web server / IP address

Received

• Data for the website is stored on the company’s web server


• webserver sends the data for the website back to the web browser
• web server uses the customer’s IP address to return the data
• the data is transferred into Hyper Text Mark-up Language (HTML)
• HTML is interpreted/rendered by the web browser (to display the
website)

Cookies (Cambridge (CIE)


IGCSE Computer Science)
Cookies
What is a cookie?

• A cookie is a tiny data file stored on a computer by browser software that


holds information relating to your browsing activity
• Typically a cookie will contain:
o Browsing history - what websites you have visited
o Login information - usernames & passwords
o Preferences - language/font size/themes
• The two types of cookie are:
o Session - Created and replaced every time a user visits a website
o Persistent - Created and saved the first time a user visits a website,
retained until they expire

What is the Privacy and Electronic Communications Regulations


(2003)?

• The Privacy and Electronic Communications Regulations (2003) is a law


that governs the use of cookies
• Any website that wants to store a cookie must:
o Tell users the cookies are there
o Explain what the cookies are doing
o Obtain users consent to store the cookie

Digital Currency (Cambridge


(CIE) IGCSE Computer
Science)
Digital Currency
What is digital currency?

• Digital currency is one that only exists in digital form


• Currency is stored in digital wallets or accounts, there is no physical bank
notes or coins
• It can be exchanged online to pay for goods and services or for
transferring money internationally
• Unlike traditional currencies, digital currency is not controlled or
monitored by central banks or government (decentralised)
• This can make digital currencies highly volatile, their value can fluctuate
rapidly in a short period of time
• Digital currency investment can be risky due the volatility
• Digital currency can also be known as crypto currency
• All transactions made using crypto currency are publicly available and
tracked using cryptography
• Examples include
o Bitcoin
o Ethereum

Examiner Tips and Tricks

In the IGCSE exam digital currency and crypto currency are the same thing,
although in real life they are not strictly the same thing.
Blockchain
What is a blockchain?

• A blockchain is a digital ledger that records every transaction made with a


particular digital currency
• Transactions are time-stamped and added to the blockchain in
a permanent and unalterable way
• A blockchain is a decentralised technology, meaning that it is not controlled
by a single entity or authority
o Instead, every participant in the network has a copy of the
ledger and can verify the transactions independently
• The blockchain is made up of "blocks" of transactions that are linked
together in a "chain" using cryptographic algorithms
o This creates a secure and tamper-proof record of every
transaction made with the digital currency
• Each transaction in the blockchain must be verified by multiple
participants in the network
o This verification process ensures that the transaction
is legitimate and prevents any fraudulent activity

Cyber Security
Threats (Cambridge (CIE)
IGCSE Computer Science)
Forms of cyber security threat

• Computers face a variety of forms of attack and they can cause a large
number of issues for a network and computers
• The main threats posed are:
o Brute-force attacks
o Data interception & theft
o DDos attack
o Hacking
o Malware
o Pharming
o Phishing
o Social engineering

Brute Force Attack


What is a brute-force attack?
• A brute force attack works by an attacker repeatedly trying multiple
combinations of a user's password to try and gain unauthorised access to
their accounts or devices
• An example of this attack would be an attacker finding out the length of a PIN
code, for example, 4-digits
• They would then try each possible combination until the pin was cracked,
for example
o 0000
o 0001
o 0002
• A second form of this attack, commonly used for passwords is a dictionary
attack
• This method tries popular words or phrases for passwords to guess the
password as quickly as possible
• Popular words and phrases such as 'password', '1234' and 'qwerty' will be
checked extremely quickly.

Data interception
What is data interception & theft?

• Data interception and theft is when thieves or hackers


can compromise usernames and passwords as well as other sensitive data
• This is done by using devices such as a packet sniffer
• A packet sniffer will be able to collect the data that is being transferred on a
network
• A thief can use this data to gain unauthorised access to websites,
companies and more

DDoS Attack
What is a DDoS attack?

• A Distributed Denial of Service Attack (DDoS attack) is a large


scale, coordinated attack designed to slow down a server to the point of it
becoming unusable
• A server is continually flooded with requests from multiple distributed
devices preventing genuine users from accessing or using a service
• A DDoS attack uses computers as 'bots', the bots act as automated
tools under the attackers control, making it difficult to trace back to the
original source
• A DDoS attack can result in companies losing money and not being able to
carry out their daily duties
• A DDoS attack can cause damage to a company's reputation

Hacking
What is hacking?
• Hacking is the process of identifying and exploiting weaknesses in a
computer system or network to gain unauthorised access
• Access can be for various malicious purposes, such as stealing data,
installing malware, or disrupting operations
• Hackers seek out opportunities that make this possible, this includes:
o Unpatched software
o Out-of-date anti-malware

Malware
What is malware?

• Malware (malicious software) is the term used for any software that has been
created with malicious intent to cause harm to a computer system
• Examples of issues caused by malware include
o Files being deleted, corrupted or encrypted
o Internet connection becoming slow or unusable
o Computer crashing or shutting down

Malware What it Does


• Contains code that will replicate and cause unwanted and unexpected events to
occur
• Examples of issues a user may experience are
Virus o Corrupt files
o Delete data
o Prevent applications from running correctly

• Very similar to viruses, main difference being that they spread to other
drives and computers on the network
• Worms can infect other computers from
o Infected websites
Worms
o Instant message services
o Email
o Network connection

• Sometimes called a Trojan Horse


• Trojans disguise themselves as legitimate software but contain malicious code in the
Trojan
background

• Allow a person to spy on the users' activities on their devices


• Embedded into other software such as games or programs that have been downloaded
Spyware from illegitimate sources
• Can record your screen, log your keystrokes to gain access to passwords and more
• Displays adverts to the user
• Users have little or no control over the frequency or type of ads
Adware
• Can redirect clicks to unsafe sites that contain spyware

• Locks your computer or device and encrypts your documents and other important files
• A demand is made for money to receive the password that will allow the user to
Ransomware decrypt the files
• No guarantee paying the ransom will result in the user getting their data back

• There are various types of malware and each has slightly different issues
which they cause

Pharming
What is pharming?

• Pharming is typing a website address into a browser and it being redirected


to a 'fake' website in order to trick a user into typing in sensitive information
such as passwords
• An attacker attempts to alter DNS settings, the directory of websites and
their matching IP addresses that is used to access websites on the internet or
change a users browser settings
• A user clicks a link which downloads malware
• The user types in a web address which is then redirected to the fake
website

How can you protect against it?

• To protect against the threat of pharming:


o Keep anti-malware software up to date
o Check URLs regularly
o Make sure the padlock icon is visible

Phishing
What is phishing?

• Phishing is the process of sending fraudulent emails/SMS to a large number


of people, claiming to be from a reputable company or trusted source
• Phishing is an attempt to try and gain access to your details, often by coaxing
the user to click on a login button/link

Social Engineering
What is social engineering?

• Social engineering is exploiting weaknesses in a computer system


by targeting the people that use or have access to them
• There are many forms of social engineering, some examples include
o Fraudulent phone calls: pretending to be someone else to gain
access to their account or their details
o Pretexting: A scammer will send a fake text message, pretending to
be from the government or human resources of a company, this scam
is used to trick an individual into giving out confidential data
• People are seen as the weak point in a system because human errors can
lead to significant issues, some of which include:
o Not locking doors to computer/server rooms
o Not logging their device when they're not using it
o Sharing passwords
o Not encrypting data
o Not keeping operating systems or anti-malware software up to
date

Worked Example

A company is concerned about a distributed denial of service (DDoS) attack.

(i) Describe what is meant by a DDoS attack.

[4]

(ii) Suggest one security device that can be used to help prevent a DDoS attack.[1]

Answers

(i) Any four from:

• multiple computers are used as bots


• designed to deny people access to a website
• a large number / numerous requests are sent (to a server) …
• … all at the same time
• the server is unable to respond / struggles to respond to all the requests
• the server fails / times out as a result.
(ii)

• firewall OR proxy server

Keeping Data Safe (Cambridge


(CIE) IGCSE Computer
Science)
Access Levels
What are access levels?

• Access levels ensure users of a network can access what they need to
access and do not have access to information/resources they shouldn't
• Users can have designated roles on a network
• Access levels can be set based on a user's role, responsibility, or
clearance level
o Full access - this allows the user to open, create, edit & delete files
o Read-only access - this only allows the user to open files without
editing or deleting
o No access - this hides the file from the user
• Some examples of different levels of access to a school network could
include:
o Administrators: Unrestricted - Can access all areas of the network
o Teaching Staff: Partially restricted - Can access all student data but
cannot access other staff members' data
o Students: Restricted - Can only access their own data and files
• Users and groups of users can be given specific file permissions

Anti Malware
What is anti-malware software?

• Anti-malware software is a term used to describe a combination of different


software to prevent computers from being susceptible to viruses and
other malicious software
• The different software anti-malware includes are
o Anti-virus
o Anti-spam
o Anti-spyware

How does anti-malware work?


• Anti-malware scans through email attachments, websites and
downloaded files to search for issues
• Anti-malware software has a list of known malware signatures to
block immediately if they try to access your device in any way
• Anti-malware will also perform checks for updates to ensure the database of
known issues is up to date

Authentication
What is authentication?

• Authentication is the process of ensuring that a system is secure by asking


the user to complete tasks to prove they are an authorised user of the
system
• Authentication is done because bots can submit data in online forms
• Authentication can be done in several ways, these include
o Usernames and passwords
o Multi-factor authentication
o CAPTCHA - see example below
Biometrics
• Biometrics use biological data for authentication by identifying unique
physical characteristics of a human such as fingerprints, facial
recognition, or iris scans
• Biometric authentication is more secure than using passwords as:
o A biometric password cannot be guessed
o It is very difficult to fake a biometric password
o A biometric password cannot be recorded by spyware
o A perpetrator cannot shoulder surf to see a biometric password

Automating Software Updates


What are automatic software updates?

• Automatic software updates take away the need for a user to remember to
keep software updated and reduce the risk of software
flaws/vulnerabilities being targeted in out of date software
• Automatic updates ensure fast deployment of updates as they release

Communication
What is communication?

• One way of protecting data is by monitoring digital communication to


check for errors in the spelling and grammar or tone of the communication
• Phishing scams often involve communication with users, monitoring it can be
effective as:
o Rushed - emails and texts pretending to be from a reputable company
are focused on quantity rather than quality and often contain basic
spelling and grammar errors
o Urgency - emails using a tone that creates panic or makes a user feel
rushed is often a sign that something is suspicious
o Professionalism - emails from reputable companies should have
flawless spelling and grammar

URL
How to check a URL?

• Checking the URL attached to a link is another way to prevent phishing


attacks
• Hackers often use fake URLs to trick users into visiting fraudulent websites
o e.g. http://amaz.on.co.uk/ rather than http://amazon.co.uk/
• If you are unsure, always check the website URL before clicking any
links contained in an email

Firewalls
What is a firewall?

• A firewall monitors incoming and outgoing network traffic and uses a set
of rules to determine which traffic to allow
• A firewall prevents unwanted traffic from entering a network by filtering
requests to ensure they are legitimate
• It can be both hardware and software and they are often used together to
provide stronger security to a network
o Hardware firewalls will protect the whole network and prevent
unauthorised traffic
o Software firewalls will protect the individual devices on the network,
monitoring the data going to and from each computer

What form of attack would this prevent?

• Hackers
• Malware
• Unauthorised access to a network

Privacy Settings
What are privacy settings?

• Privacy settings are used to control the amount of personal


information that is shared online
• They are an important measure to prevent identity theft and other forms of
online fraud
• Users should regularly review their privacy settings and adjust them as
needed

Proxy Servers
What is a proxy server?

• A proxy-server is used to hide a user's IP address and location, making it


more difficult for hackers to track them
• They act as a firewall and can also be used to filter web traffic by setting
criteria for traffic
• Malicious content is blocked and a warning message can be sent to the user
• Proxy-servers are a useful security measure for protecting against external
security threats as it can direct traffic away from the server

SSL
What is SSL?

• Secure Socket Layer (SSL) is a security protocol which is used to encrypt


data transmitted over the internet
• This helps to prevent eavesdropping and other forms of interception
• SSL is widely used to protect online transactions, such as those involving
credit card information or other sensitive data
• It works by sending a digital certificate to the user’s browser
• This contains the public key which can be used for authentication
• Once the certificate is authenticated, the transaction will begin

Worked Example

(i) ) Identify a security solution that could be used to protect a computer from a
computer virus, hacking and spyware.

Each security solution must be different

Threat Security solution


Computer virus
Hacking
Spyware
[3]

(ii) Describe how each security solution you identified in (i) will help protect the
computer.

[6]

Answers

(i)

Threat Security solution


Computer virus Anti-malware/virus (software) Firewall
Firewall

Passwords
Hacking
Biometrics

Two-step verification
Anti-malware/virus (software)

Spyware Two-step verification

Firewall
(ii) Two marks for each description

• Anti-malware/virus (software)
o Scans the computer system (for viruses)
o Has a record of known viruses
o Removes/quarantines any viruses that are found
o Checks data before it is downloaded
o … and stops download if virus found/warns user may contain
virus
• Anti-malware/spyware (software)
o Scans the computer for spyware
o Removes/quarantines any spyware that is found
o Can prevent spyware being downloaded
• Firewall
o Monitors traffic coming into and out of the computer system
o Checks that the traffic meets any criteria/rules set
o Blocks any traffic that does not meet the criteria/rules set // set
blacklist/whitelist
• Passwords
o Making a password stronger // by example
o Changing it regularly
o Lock out after set number of attempts // stops brute force attacks
// makes it more difficult to guess
• Biometrics
o Data needed to enter is unique to individual
o … therefore it is very difficult to replicate
o Lock out after set number of attempts
• Two-step verification
o Extra data is sent to device, pre-set by user
o … making it more difficult for hacker to obtain it
o Data has to be entered into the same system
o … so if attempted from a remote location, it will not be accepted

Automated
Systems (Cambridge (CIE)
IGCSE Computer Science
Automated Systems
What is an automated system?

• An automated system is a computer system that collects information and


can react and perform tasks based on the data
• Automated systems are made using three components:
o Sensors
o Microprocessors
o Actuators
• A sensor collects information and provides the microprocessor with it as an
input
• A microprocessor processes the information and makes decisions based
on pre-programmed rules
• An actuator makes physical changes based on instructions given by the
microprocessor (outputs)
• Examples of physical changes include:
o Opening/closing a door/valve
o Activating an alarm

Advantages & Disadvantages of Automated


Systems
• There are general advantages and disadvantages of automated systems

Advantages Disadvantages
Cost - long-term cost saving Cost - short-term expensive to set up
Testing - significant testing must be done before
Safer - timely interventions
being used
Safer - keeps humans away from hazardous
Security - open to cyber attacks
environments
Flexibility - will only react to programmed
Efficient - materials and resources
scenarios
Consistent - results are repeatable Maintenance - needs to be well maintained
Unethical - can result in major job losses
• There are also scenarios where specific advantages and disadvantages are
important such as:

Scenario Advantages Disadvantages


• Increased production • High investment costs
Industry • Improved quality control • Job losses

• Less accidents & traffic


• Transportation drivers lose jobs
congestion
Transport • Technology reliability
• Increased logistical efficiency

• Less manual labour


• High start-up costs for equipment and
• Increased crop yield & resource
Agriculture sensors
management

• Accurate forecasting
• Dependence on accurate sensor data
Weather • Improved early warning systems

• Personalised experience • Reduced creativity & problem


• AI enhanced opponents add solving for players
Gaming
challenge • Repetitive gameplay
• Increased energy efficiency
• Lack of human control with light
• Better security with motion-
Lighting adjustments
activated systems

• High cost development and


• Faster & more precise
maintenance
Science • Reduced risk of human error
• Potential for algorithm bias

Worked Example

A theme park has a game where a player tries to run from the start to the finish
without getting wet.

The system for the game uses sensors and a microprocessor to spray water at a
player as they run past each sensor.

Describe how the sensors and the microprocessor are used in this system

[8]

Answer

• A motion sensor collects data [1]


• This data is converted to digital using ADC [1]
• The sensor sends data to the microprocessor... [1]
• ... where the data is compared to stored data [1]
• If the value is outside range, water will be sprayed [1]
• A signal is sent to the actuator to spray water [1]
• If the value is within range no action is taken [1]
• This runs in a continuous loop [1]

Robotics (Cambridge (CIE)


IGCSE Computer Science
Robotics
What is robotics?
• Robotics is the principle of a robot carrying out a task by following a
precise set of programmed instructions
• Robots can be categorised into two groups:

Dumb robots Smart robots


Repeat the same programmed instructions over and Carries out more complex tasks and can adapt
over again (no AI) and learn (AI)
E.g. Car assembly line E.g. Assisting surgeons in delicate procedures
• The development of artificial intelligence, including the increased use of
machine learning and robotics raises ethical and legal issues such as:
o Accountability
o Safety
o Algorithmic bias
o Legal liability

Characteristics of a Robot
What are the characteristics of a robot?

• Robots share three common characteristics:


o Mechanical structure
o Electrical components
o Programmable

Mechanical structure Electrical components Programmable


A physical body that can move and Sensors, microprocessors Designed to follow a precise
interact with the environment and actuators set of instructions
The Role of Robots
What is the role of robots?

• Robots play a crucial role in many areas such as:

Scenario Role Advantages Disadvantages


Advanced vision to inspect
May not work on defects that
Industry Quality inspector products for defaults,
might require human judgement
improving quality control
High infrastructure costs and
Efficiency in finding, moving
Warehouse potential safety concerns for
Transport and packing, less reliable on
worker human workers sharing the same
manual labour
space
High upfront costs, may struggle
Planting & Precise planting (optimum
Agriculture with uneven terrain and changing
seeding machine depths and distances)
weather conditions
Rehabilitation Personalised physical therapy Doesn't provide emotional
Medicine
therapist exercises to aid recovery support
Assists with meal prep by
doing basic duties (chopping,
Domestic Sous chef Limited ability and capabilities
measuring and following basic
recipes)
Interactive learning
Educational High cost, cannot replace the
Entertainment experiences for children,
robot guidance of human teachers
increased engagement
Worked Example

A company uses robots in its factory to manufacture restaurant tables and chairs

(i) One characteristic of a robot is that they contain electrical components.

State two other characteristics of a robot.

[2]

(ii) Give two advantages to company employees of using robots to manufacture


tables and chairs.

[2]

(ii) Give one disadvantage to the company’s owners of using robots to manufacture
table and chairs

[1]

Answers

(i)

• Mechanical structure
• Programmable

(ii)

• Employees don't need to lift heavy items


• Employees can be protected from dangerous tasks
• Employees can utilise their skills in other tasks
• Employees don’t need to perform repetitive/mundane tasks

(iii)

• Expensive to install/purchase/setup
• High ongoing costs/maintenance costs
• May deskill the workforce
• If they malfunction, production may stop
(AI) (Cambridge (CIE) IGCSE
Computer Science)

Artificial Intelligence (AI)


What is artificial intelligence?
• Artificial intelligence (AI) is a machine that can simulate intelligent
behaviours similar to that of a human
• AI is a system that can:
o Learn - acquire new information
o Decide - analyse and make choices
o Act autonomously - take actions without human input
• There are two main types of AI:
o Weak AI, also known as narrow AI, is designed to perform a specific
task or set of tasks
o Strong AI, also known as artificial general intelligence (AGI), is
designed to perform any intellectual task that a human can do

Advantages and disadvantages of AI

Advantages Disadvantages
Increased efficiency Job losses
Increased accuracy Potential for biased decision making
Scalability Ethical concerns over its use
Characteristics of AI
• AI shares three common characteristics:
o Collection of data
o Rules for using data
o Ability to reason

Collection of data Rules for using data Ability to reason


AI systems require large amounts of
data to perform tasks AI systems can use logical
reasoning to evaluate information It can change its
The data is processed using rules or and make decisions based on that own rules and data
algorithms that enable the system to information
make decisions and predictions
Expert systems
What is an expert system?
• An expert system mimics human knowledge and experience and uses a
combination of the two to solve problems or answer questions
• Examples of expert systems include:
o Equipment troubleshooting and repair
o Technical support
o Medical diagnosis system
• Expert systems share four key characteristics

Knowledge base Rule base Inference engine Interface


A database of facts to A set of rules or logic that is A program that applies the A way for users to
generate rules that are used to apply the rules in the rule base to interact with the
used to solve problems knowledge in the knowledge the facts in the knowledge system and provide
and make decisions base to specific problems base to solve problems input
Advantages and disadvantages of expert systems

Advantages Disadvantages
Consistent results Only as good as the data entered
Faster responses Responses can be cold and lack human emotion
Can store large amounts of data Requires training to use correctly
Unbiased
Machine Learning
What is machine learning?
• Machine learning is one method that can help to achieve an artificial
intelligence (AI)
• By giving a machine data so that it can 'learn over time' it helps
towards training a machine or software to perform a task and improve its
accuracy and efficiency
• Uses algorithms to analyse data and identify patterns or relationships

Worked Example

Describe the characteristics of AI

[3]

Answer

Any three from:

• Collects data
• Stores rules for using the data
• The ability to reason
• The ability to learn // uses machine learning
• … by adapting what it does
• … for example, from mistakes to not make them again // result from
previous decisions impacts future
• … by changing its own rules
• …by changing its own data
• …by being trained
• Makes one or more predictions (to make a decision)
• Find/analyse patterns

You might also like