Computer Science p1 Notes With Marking Schemes
Computer Science p1 Notes With Marking Schemes
Computer Science p1 Notes With Marking Schemes
Computer ethics are a concern for any users of the Internet. Identify and describe three
ethical issues that could be a concern when using the Internet.
Virus
• Software/code that replicates
• …when the user runs it // with an active host
• Deletes/damages/corrupts data/files // takes up storage/memory space
Worm
• Software/code that replicates itself on a network
• …without user input // without active host
• Takes-up bandwidth
• Deletes/damages/corrupts data/files // takes up storage/memory space
• Opens back doors to computers over the network
• Used to deposit other malware on networked computers
Trojan horse
• Software/code that is hidden within other software // Software that is
disguised as authentic software
• …when downloaded/installed the other malware/by example it
contains is installed
Adware
• Software/code that generates/displays (unwanted) adverts on a user's
computer
• Some may contain spyware/other malware
• Some when clicked may link to viruses
• Reduces device performance // reduces internet speed
• Redirects internet searches/user to fake websites
Ransomware
• Software/code that stops a user accessing/using their computer/data
• …by encrypting the data/files/computer
• A fee has to be paid to decrypt the data // A fee has to be paid to
'release' the computer/device/data
Identify two similarities and one difference between proxy‑servers and firewalls.
Similarities e.g.
• Check incoming and outgoing signals // filter traffic
• Store whitelist/blacklist
• Block incoming/outgoing signals
• Both block unauthorised access
• Keep a log of traffic
• Both can be hardware or software (or both)
Differences e.g.
• Proxy can hide user's IP address, firewall does not hide the user's IP
address
• Proxy intention is to divert attack from server, firewall is to stop
unauthorised access
• Proxy protects a server, firewall protects individual computer
• Proxy examines/processes requests for a website but a firewall does
not (checks type of signal) // Proxy processes client-side requests
whereas firewall filters packets
• Proxy transmits website data to the user, but a firewall does not (it
allows valid signals)
• Proxy allows faster access to a web page using cache, but a firewall
does not (allow faster access or have cache)
• Proxy can hide internal network from internet, but a firewall cannot
High-level
• Easier for programmer to read/write/understand/edit
• … therefore, the programmer is less likely to make mistakes // can write
in shorter timeframe
• Easier to debug // Easier to find/correct errors
• …so, the programmer can find and correct errors in less time
• Game will be machine independent // Game will be portable (between
hardware)
• …the game can be used on any computer without a need for
understanding of the hardware / compilation for that hardware
• Programmer can focus on the problem instead of the manipulation of
memory/hardware
Low-level
• More memory/RAM efficient
• … 3D graphics will have high memory consumption anyway
• Allows direct manipulation of memory
• … allows for more efficient control/response time
• Allows for use of specialised hardware
Compiler
• Checks all code before executing any code
• Produces error report with all errors found for the whole code (before
translating/running any of the code)
• Produces executable file
Interpreter
• Checks/translates one line of code and then executes it before moving
on to the next line
• Stops when an error is found
• … when corrected the program can be run from the same position //
allows error correction in real time
Serial
• Data arrives in order sent // does not need reordering
• Less likely to experience interference
• … less likely to have errors
• Can transmit over a longer distance (i.e. another room)
• Still fast transmission…
• …sufficient for this purpose
Parallel
• Faster transmission speed than serial
• … faster response to requests
• Very long connection not needed
• …next room is (likely) within distance for parallel
• … unlikely to error/arrive out of sequence/skew
Identify two other functions of a web browser.
• Storing bookmarks/favourites
• Storing history
• Allow multiple tabs/web pages to be open
• Allow movement back and forth between web pages // provides
navigation tools
• Allows the user to enter a URL/IP into the address bar
• Manages HTTP/HTTPS protocol
• Search cache for IP // Request IP from DNS // Send URL to DNS
• Sends a request to the IP address/web server (to obtain the contents
of a web page)
• Runs active script/JavaScript/client-side script
• Allows files to be downloaded from website/internet
Identify two ways that cookies can be used to enhance the user’s experience of this
website
• Storing preferences // so the user does not have to select their
preferences each time they visit the site
• Storing account details // so the user does not have to remember/enter
their username and password each time they visit the site
• Storing recent purchases // to allow the user to quickly re-order more
items
• Storing the pages visited/items selected // to display relevant adverts
• Storing shopping basket // so when the user leaves the site the items
are still in their basket
Give two reasons why the programmer would choose to write the computer program
in a low‑level language instead of a high‑level language.
Can directly manipulate the hardware
No requirement for the program to be portable
Program will be more memory efficient
No requirement for a compiler/interpreter
Quicker to execute
Can use specialised hardware
Address bus
Transmit / carries addresses …
… between components in the CPU
Data bus Transmit / carries data …
… between components in the CPU
Control bus
Transmits control signals …
… from the control unit to other components in the CPU
(b) Translators are used to translate the high-level language so that it can be
processed by the
computer.
(i) State what the high-level language is translated into.
..................................................................................................................................... [1]
(ii) One translator converts and executes the code line by line.
Identify which type of translator would do this.
..................................................................................................................................... [1]
(iii) One translator creates an error report displaying all the errors in the code before
it can
be executed.
Identify which type of translator would do this.
.......................................................................................................................................[1]
(iv) One translator creates an executable file. Identify which type of translator would
do this. .....................................................................................................................................
[1]
4(a) B
4(b)(i) Machine code // low-level language // object code
4(b)(ii) Interpreter
4(b)(iii) Compiler
4(b)(iv) Compiler
A computer has pages A, B and C that are stored in RAM. Page D needs to be sent to
the RAM
but the RAM is full.
Page B is not needed immediately.
Explain how virtual memory can be used in this scenario.
The secondary storage / hard drive can be partitioned to create the virtual memory
… and page B sent to the virtual memory …
… which makes space for page D in RAM
… Once page A / C / D / another page is not required / has been processed
… page B can be sent from the virtual memory back to RAM when it is required
• Resistive
• … cheap to manufacture/buy
• … more simple/easier technology to manufacture
• … less affected by weather // more waterproof
• … does not need bare finger // can be pressed with most things
• … screen less likely to shatter/break
• … lower power consumption
• … (can) support multitouch
• Capacitive
• … good visibility in sunlight
• … supports multitouch
• … more longevity
• … faster response times
• … requires less/no pressure
• … high quality image/screen
• … doesn’t need to be calibrated
• … if screen is shattered, it will still register touch
• Infrared
• … good visibility in sunlight
• … supports multitouch
• … does not need bare finger // can be pressed with most things
• … high quality image/screen
• … if screen is shattered, it will still register touch
• … does not need to be calibrated
• … requires less/no pressure
• … faster response times
IP MAC SIMILARITIES
• They are both unique addresses
• They can both be used to identify a device (on a network)
• They are both assigned to hardware
• They can both be represented as hexadecimal
IP MAC DIFFERENCES
• A MAC address is assigned by the manufacturer, whereas an IP address is assigned by
the network/router/ISP
• A MAC address is represented as hexadecimal, whereas an IP address can sometimes be
represented as numeric
• A MAC address is normally static, whereas an IP address can be dynamic
• A MAC address has 6 groups of digits, whereas an IP address has 4/8 groups
• A MAC address is 6 bytes (48 bit), whereas an IP address is 4/16 bytes (32/128 bit)
MAGNETIC STORAGE − Storage device has platters − Platters/disk divided into tracks −
Storage platter / disk is spun − Has a read/write arm that moves across storage media −
Read/writes data using electromagnets − Uses magnetic fields to control magnetic dots of
data − Magnetic field determines binary value
MAGNETIC OVER SSD − Magnetic is cheaper per unit of data − Magnetic has more
longevity // Magnetic can perform more read/write cycles
HOW CHECKSUM WORKS − Sending device creates value from calculation on data // By
example − Value is transmitted with the data − Receiving device performs same calculation
− Values are compared after transmission // If values do not match « − « an error is detected
HIGH LEVEL LANGUAGE ADVANTAGE OVER LOW LEVEL − Closer to English
statements / human language − Easier / quicker to write / read / understand / remember −
Easier / quicker to debug − Less likely to make errors − One line of code can carry out
multiple commands − Portable language
High-level
• Easier for programmer to read/write/understand/edit
• … therefore, the programmer is less likely to make mistakes // can write
in shorter timeframe
• Easier to debug // Easier to find/correct errors
• …so, the programmer can find and correct errors in less time
• Game will be machine independent // Game will be portable (between
hardware)
• …the game can be used on any computer without a need for
understanding of the hardware / compilation for that hardware
• Programmer can focus on the problem instead of the manipulation of
memory/hardware
Low-level
• More memory/RAM efficient
• … 3D graphics will have high memory consumption anyway
• Allows direct manipulation of memory
• … allows for more efficient control/response time
• Allows for use of specialised hardware
an interpreter is mostly used when developing a program and a compiler is used to translate
the final program
• Software interrupts include division by zero and two processes trying to access the same
memory location
• Hardware interrupts include pressing a key on the keyboard and moving the mouse
• Secondary storage is not directly accessed by the CPU and is necessary for more
permanent storage of data
• Magnetic storage uses platters which are divided into tracks and sectors. Data is read and
written using electromagnets
• Optical storage uses lasers to create and read pits and lands
• Solid-state (flash memory) uses NAND or NOR technology. Transistors are used as control
gates and floating gates
• Pages of data are transferred between RAM and virtual memory when needed
• Cloud storage can be accessed remotely in comparison to storing data locally
• Physical servers and storage are needed to store data in cloud storage
• An instruction set is a list of all the commands that can be processed by a CPU and the
commands are machine code
• An embedded system is used to perform a dedicated function, e.g. domestic appliances,
cars, security systems, lighting systems or vending machines. This is different to a general
purpose computer that is used to perform many different functions, e.g. a personal computer
(PC) or a laptop
• The CPU processes instructions and data that are input into the computer so that the result
can be output
• A microprocessor is a type of integrated circuit on a single chip
• Compression exists to reduce the size of the file
• The impact of this is, e.g.:
– less bandwidth required
– less storage space required
– shorter transmission time