How Computers Work
Friday 6 March 2020 : 10.00 − 12.00
Time allowed: 2 hours
This examination paper is in two parts: Part A and Part B. You should answer
ALL of question 1 in Part A and TWO questions from Part B. Part A carries 40
marks, and each question from Part B carries 30 marks. If you answer more
than TWO questions from Part B only your first TWO answers will be marked.
All answers must be written in the answer books; answers written on the
question paper will not be marked. You may write notes in your answer book.
Any notes or additional answers in the answer book(s) should be crossed out.
The marks for each part of a question are indicated at the end of the part in [.]
brackets. There are 100 marks available on this paper.
Calculators are not permitted in this examination.
c© University of London 2020
UL20/0034 Page 1 of 6
Candidates should answer ALL of Question 1 in Part A.
Question 1
(a) Storage typically has to trade off between size and speed. Put these in
order starting from the fastest to the slowest (assume average speeds,
since speeds of each will vary), for example you might write a, b, c, d, e for
your answer. [4]
i) hard disc (magnetic storage)
ii) cache memory
iii) main memory
iv) register
v) SSD
(b) Which of the following would be sent as the input in a DNS request?
Choose ONE option. [4]
iii) https
(c) What does a PROJECT database operation do?
Select ALL correct statements. [4]
i) returns a row of a database table
ii) returns a column of a database table
iii) combines database tables
iv) copies a row from one database table to another using the primary key
as a reference.
UL20/0034 Page 2 of 6
(d) My home wifi network is a:
Choose ONE option. [4]
i) personal area network
ii) local area network
iii) metropolitan area network
iv) wide area network.
(e) Which compression method would work best on this sequence of data?
Choose ONE option. [4]
i) run length encoding
ii) dictionary encoding
iii) lossy compression
iv) none of the above.
(f) In machine learning it is typical to use multiple threads (processes with
shared memory) to train a model. Each thread will use separate bits
of training data but they all have to access the parameters of the same
machine learning model, which means they have to read the model parameters,
do calculations with them, and then write new values to the model parameters.
Which of the following describes the situation?
Choose ONE option. [4]
i) It requires semaphores but does not risk deadlock
ii) It does not require semaphores but does risk deadlock
iii) It requires semaphores and does risk deadlock
iv) It does not require semaphores but does not risk deadlock.
UL20/0034 Page 3 of 6
(g) What is the process of transforming the representation of data to a secure
form that cannot be read by someone without a key?
Choose ONE option. [4]
i) abstraction
ii) compression
iii) registration
iv) encryption.
(h) The memory manager allocates a separate memory area for each:
Choose ONE option. [4]
i) application
ii) thread
iii) process
iv) operating system.
(i) What does a machine learning algorithm do?
Choose ONE option. [4]
i) It uses a hand-coded rules to classify data.
ii) It uses a data to classify hand-coded rules.
iii) It uses a data to train a model.
iv) It uses a model to train data.
(j) What does the system bus do?
Choose ONE option. [4]
i) It connects input devices (e.g. keyboard) with main memory
ii) It connects the CPU to output devices (e.g. screen)
iii) It connects the CPU to main memory
iv) all of the above.
UL20/0034 Page 4 of 6
Candidates should answer any TWO questions from Part B.
The final part of all questions in this section should be answered in terms
of the computer science concepts covered in this course. They will be marked
according to the following rubric:
Does the answer describe an appropriate range of computer science concepts
from this course?
Does the answer illustrate the concepts with a suitable example?
Does the answer explain how the computer system or data format works?
Does the answer predict how different technical choices or situations affect
the system?
Question 2
(a) What does a JUMP machine instruction do? [6]
(b) Describe how the JUMP machine instruction can be used to implement a
for loop. [8]
(c) As a computer science student you would probably prefer to be taking this
exam online rather than on a piece of paper. Write a technical description
of a system that would allow you to take exams online. Describe any
important problems that might be raised by online exams and how they
could be solved technically. [16]
Question 3
(a) A computer application consists of various components, including resources.
Give a definition of a resource. [5]
(b) Describe three examples of different types of resource files. [9]
(c) My phone has a photo app that stores my photos in the cloud and allows
me to download the ones I want to look at. It has advanced search options
including recognising people in photos and allowing me to search by a
person’s name. Explain how you think it works. [16]
UL20/0034 Page 5 of 6
Question 4
(a) How is an image represented in terms of binary data? [5]
(b) What does the IP protocol do? [9]
(c) We often use Voice over IP (or video chat) apps to talk to friends, relatives
and colleagues in different countries. Describe how a video chat app
works in terms of the concepts you have learned in this course. [16]
UL20/0034 Page 6 of 6