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

Software & Programming Q

Uploaded by

dd
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views

Software & Programming Q

Uploaded by

dd
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 58

Answer all the questions.

1. A processor contains a number of special registers.

Explain the need for the Current Instruction Register (CIR) and describe how the data which it
holds is used.

[6]

2. State what is meant by a distributed system.

[1]

3. Intensive Care Units in hospitals are for patients in need of round the clock monitoring and
support. Computerised systems can be used to monitor patients’ vital signs (temperature,
heart rate, blood pressure and breathing). They can then alert medical professionals to any
significant changes.

These systems usually run on an embedded, real-time, operating system.

i. State what is meant by the term real-time.

[1]

ii. Explain why a real-time operating system would be suitable for Intensive Care Units.

© OCR 2017. You may photocopy this page. Page 1 of 58 Created in ExamBuilder
[2]

4(a). The following assembly code in Fig. 1 is written for the Little Man Computer instruction set.

State the output when the inputs are 13 followed by 5.

[1]

(b). In the line:

i. State what opcode SUB does.

[1]

ii. Name the register in which the result of this line is stored.

[1]

(c). i. State what the program in Fig. 1 does.

[1]

ii. Using pseudocode write a program for a procedural language that takes in two inputs
and gives the same output as the program in Fig. 1.

© OCR 2017. You may photocopy this page. Page 2 of 58 Created in ExamBuilder
[2]

5. Burger House is a fast food restaurant which wants to encourage healthy eating amongst its
younger diners.

a.
i. Shown below in Fig.2 is the Burger House children’s menu.

Children receive a free toy when they select a meal (i.e. one burger, one side
dish and one dessert) made up of only healthy options.

• Let g be a Boolean value for if a child has chosen a grilled chicken burger.
• Let s be a Boolean value for if a child has chosen salad.
• Let c be a Boolean value for if a child has chosen carrot sticks.
• Let f be a Boolean value for if a child has chosen fruit salad.
• Let t be a Boolean value for whether a child receives a toy.

Write an expression using Boolean algebra to determine whether a child receives


a toy when they select a meal.

© OCR 2017. You may photocopy this page. Page 3 of 58 Created in ExamBuilder
t
=

[3]

b.

ii. Burger House wants to add this logic into its till system.
Complete the code below assuming that g,s,c,f and t are Boolean variables with
the same meaning as part (i).

[2]

6(a). The website also includes JavaScript.

i. Describe what is meant by the term JavaScript.

[2]

ii. Explain why it is usually the case that JavaScript is interpreted rather than compiled.

[2]

© OCR 2017. You may photocopy this page. Page 4 of 58 Created in ExamBuilder
(b). Laser Tag is a game where teams of players move round an arena shooting each other with
infrared guns. Players wear sensors that keep track of how many times they have been hit by
the laser. This is known as being ‘tagged’.

At the end of each match players upload their score to a computer. The computer stores the
scores in the order they are received in a 2D array called . The array stores the team
as an integer (1 for green, 2 for red) and their score. An extract of the array called is
shown below. The first entry shows a green team member scored 45 points and the next
shows a red team member scored 30 points.

1 45
2 30
2 46
1 31
1 10
1 32
2 2

Once all the players have uploaded their scores the computer adds up the scores for each
team.

Using pseudocode write a program for a procedural language that works out and outputs the
total score for each team. You may assume that there are always 20 players.

[6]

7(a). A software company decides to release a duplicate file finder which it has named “De-
Duplicator”. Duplicate files are files that are exactly the same (bit for bit identical). Space is
often wasted on computers by having multiple versions of the same file. Duplicate file finders
are programs that find and identify duplicate files on a hard drive so that they can be removed.

A duplicate file finder is an example of a utility. Describe what is meant by a utility.

© OCR 2017. You may photocopy this page. Page 5 of 58 Created in ExamBuilder
[2]

(b). * The software team that produces De-Duplicator decides to make a new version that can
detect duplicated images the previous version could not. The software team must decide which
methodology they will use for the project. Some members of the team suggest extreme
programming whilst others would prefer to use the waterfall lifecycle.

Discuss the two methodologies and justify which you would recommend.

© OCR 2017. You may photocopy this page. Page 6 of 58 Created in ExamBuilder
[12]

8(a). Identify an attribute in the Lizard class.

[1]

(b). Livid Lizards is a computer game in which players get to fire lizards from a cannon to knock
down walls. Players get to pick different types of lizards, each with qualities and special
powers.

The game is coded using an object-oriented language. Below is the code for the lizard class:

Lizard is a class. Describe what is meant by a class.

[2]

(c). i. Describe what is meant by the term inheritance.

© OCR 2017. You may photocopy this page. Page 7 of 58 Created in ExamBuilder
[3]

ii. Explain one way the game’s developers might use inheritance for Livid Lizards.

[3]

(d). The game uses a 2D graphics library. Explain why a linker would need to be used after
compilation.

[3]

9(a). The program, as shown in Fig.2 below, is written in assembly code using the Little Man
Computer instruction set. It is supposed to take in two numbers and output the higher.

© OCR 2017. You may photocopy this page. Page 8 of 58 Created in ExamBuilder
State what type of translator program would be needed to convert the code above into machine
code.

[1]

(b). Explain how you would correct the program so it outputs the higher of the two numbers
entered.

[2]

(c). The program does not work correctly. Describe what the program actually does, using the
numbers 4 and 9 being entered as an example.

[2]

(d). Programs can also be written in high level languages. In pseudocode write a procedural
program that takes in two numbers and outputs the higher of them.

© OCR 2017. You may photocopy this page. Page 9 of 58 Created in ExamBuilder
[4]

10(a). A gaming company decides to release a new video games console. The console will use a
modified version of an operating system called Linux.

Describe two functions an operating system might be expected to carry out on the console.

[4]

(b). Linux is open-source.

Explain how Linux being open-source would benefit the games company.

[2]

(c). Explain two reasons why games designed for other companies’ consoles may not work on this
machine.
© OCR 2017. You may photocopy this page. Page 10 of 58 Created in ExamBuilder
1

[4]

11(a). A company releases a utility called RAMStore. The utility creates a virtual storage drive from
an area of the computer's RAM.

Describe what is meant by the term utility software.

[2]

(b). It is important that enough RAM is left for the operating system to use. Describe a technique
that allows operating systems to overcome a lack of available RAM.

[4]

© OCR 2017. You may photocopy this page. Page 11 of 58 Created in ExamBuilder
12. Below are extracts from the ASCII and EBCDIC character sets.

ASCII

EBCDIC

Write a function that given the denary value of an EBCDIC uppercase letter, returns the denary
value of an ASCII uppercase letter. If a value is entered that doesn't correspond to an
uppercase EBCDIC letter the function should return −1.

e.g.

© OCR 2017. You may photocopy this page. Page 12 of 58 Created in ExamBuilder
endfunction
[5]

13(a). The following is a program written using the Little Man Computer instruction set.

Describe the difference between the STA and LDA instructions.

[2]

(b). Identify the type of memory addressing the program uses.

[1]

(c). State the output this program generates.

© OCR 2017. You may photocopy this page. Page 13 of 58 Created in ExamBuilder
[3]

14(a). A company is writing a syntax checker to be used when writing HTML.

The first thing the program does is add every tag in a piece of text to the data structure
.

The string X is added to with the code

The string type variable holds the code that is to have its tags added.

If htmlCode were to contain:

would have the following contents:

Write the code to fill with the tags in .

© OCR 2017. You may photocopy this page. Page 14 of 58 Created in ExamBuilder
[7]

(b). Part of the program checks that the HTML tags are well formed.
Well formed HTML has tags that are nested but never overlapping.

e.g.
is well formed.

Whereas is not well formed as p


closes before the strong inside it has been closed.

All comments and single tags are removed from .


All attributes are removed from the within the tags.

i. The contents of may look similar to below:

Tags are removed from in the same order they were added.

Identify what type of data structure is.

[1]

is given a closing tag and gives the corresponding opening tag.

e.g.

© OCR 2017. You may photocopy this page. Page 15 of 58 Created in ExamBuilder
ii. Identify what type of data structure is.

[1]

The following code is used to check if the tags are well formed.

iii. Identify what type of data structure is.

[1]

iv. Explain why is suited to checking if HTML is well formed.

[2]

© OCR 2017. You may photocopy this page. Page 16 of 58 Created in ExamBuilder
15(a). A software development company is building an operating system for a mobile phone that is in
the process of being designed.

Give one reason the phone needs an operating system.

[1]

(b). Explain how the developers could use virtual machines.

[2]

(c). One of the developers is responsible for writing the code for what happens when the CPU
receives an interrupt. Outline what the code must do.

[6]

© OCR 2017. You may photocopy this page. Page 17 of 58 Created in ExamBuilder
(d). The developers follow the waterfall lifecycle.

i. List three stages of the waterfall lifecycle.

ii.

iii.

3 [3

iv. Justify why the waterfall lifecycle is suited to the development of the operating system.

[2]

v. Give one disadvantage of using the waterfall lifecycle to develop the operating system.

[1]

(e). * The code is written using an object-oriented programming (OOP) language. Discuss the
advantages and disadvantages to the team of developers of using OOP over procedural
programming. You should refer to inheritance, encapsulation and polymorphism in your
answer.

© OCR 2017. You may photocopy this page. Page 18 of 58 Created in ExamBuilder
[9]

16(a). The owner of a small shop has bought some new stock-handling software and is setting up a
computer system in order to run it.

The owner will use a number of pieces of utility software.

State the purpose of each of the following types of utility software and describe how the owner
would use them.

File handlers

© OCR 2017. You may photocopy this page. Page 19 of 58 Created in ExamBuilder
[3]

(b). Hardware drivers

[3]

(c). Backup utility

[3]

17. Beryl has to write a program that explains patterns in crystals, using the following information.

All the patterns in crystals have two lengths, x and y, and an angle A.

• If A is 90° you need to check the lengths.


o If the lengths are equal it is a square crystal.
o If the lengths are not equal it is a rectangular crystal.
• If A is not 90° it may be a hexagonal crystal. These crystals have angles of 60° and
120° and the lengths are always equal.
• If A is not 60° or 90° or 120° it must be a parallelogram crystal if the lengths are not
equal, or a rhombic crystal if the lengths are equal.

© OCR 2017. You may photocopy this page. Page 20 of 58 Created in ExamBuilder
Beryl's flow chart contains variables.

i. What is meant by a variable?

[2]

ii. List the variables in Beryl's flow chart.

[1]

© OCR 2017. You may photocopy this page. Page 21 of 58 Created in ExamBuilder
18. José works for a company that provides loans to its customers. When customers take out a
loan they decide how much money to borrow and for how many years.

The interest rate is currently 10% but it may change in the future.

José writes the following program to calculate the monthly payment for a loan.

The algorithm uses a constant.

Identify the constant, and explain why a constant has been used.

Constant:

Explanation:

[3]

19(a). A company organises a word guessing game to be played using text messages. Players have
to guess a six letter word and send it to the company's computer. The program which
processes the message contains several subroutines.

The code for one of these subroutines is shown below.

© OCR 2017. You may photocopy this page. Page 22 of 58 Created in ExamBuilder
The subroutine ReceiveMessage is a procedure.

State whether each of the following subroutines, which are called within ReceiveMessage, is a
function or a procedure.

NotInDictionary:

CheckAnswer:

SendMessage:

[3]

(b). Line 02 converts the message to uppercase.

Explain why it is necessary for the word to be in uppercase in this program.

[2]

(c). The procedure uses validation.

Describe the validation checks in the procedure.

© OCR 2017. You may photocopy this page. Page 23 of 58 Created in ExamBuilder
[4]

20(a). An operating system uses scheduling. One method of scheduling is first come, first served.

i. Explain why the first come, first served scheduling method may not be efficient.

[2]

ii. Describe one other scheduling method.

[2]

iii. Explain why scheduling is necessary.

[4]

© OCR 2017. You may photocopy this page. Page 24 of 58 Created in ExamBuilder
(b). Explain why memory management is necessary.

[3]

(c). Paging may be used in memory management.

Describe paging.

[3]

21(a). When translating computer languages, intermediate code may be produced.

Explain the need for intermediate code and its purpose in a virtual machine.

The quality of written communication will be assessed in your answer to this question.
[8]

© OCR 2017. You may photocopy this page. Page 25 of 58 Created in ExamBuilder
(b). State three benefits of using library routines when a program is written.

© OCR 2017. You may photocopy this page. Page 26 of 58 Created in ExamBuilder
2

[3]

22. i. Give the name of the computer architecture that uses the fetch-execute cycle with a
single control unit.

[1]

ii. Registers used during the fetch-execute cycle include the current instruction register
(CIR), memory address register (MAR), memory data register (MDR) and program
counter (PC).

Place ticks in the table to show which statements are correct during processing.

iii. CIR MDR PC


Holds a binary value
Always holds only an address
May change more than once during a single cycle
May pass a value to the MAR

iv.

[4

23(a). When writing a program, programmers may use low-level or high-level languages.

Explain why a low-level language is more suitable for programming a processor to control a
washing machine.

© OCR 2017. You may photocopy this page. Page 27 of 58 Created in ExamBuilder
[3]

(b). Place ticks in the table to show which statements apply to the modes of addressing shown for
a low-level instruction in the form ADD 123.

Addressing mode
None
Immediate Direct Relative of
these
123 is the address of the
data to use
ADD is an operand
The data to use in a
calculation is 123
The address 123 holds a
value which is the
address of the data to
use

[4]

(c). Caz is studying low-level languages. She has lost some of her notes on modes of addressing,
but has the following part of an example.

Address in current instruction register (CIR) is 3


Address to be used is 3+11=14

Name and explain two modes of addressing that this example could show.

[4]
© OCR 2017. You may photocopy this page. Page 28 of 58 Created in ExamBuilder
24(a). An assembler may be used to produce machine code from assembly language.

Describe machine code and assembly language, making clear the differences between them,
and describe the tasks done by an assembler.

The quality of written communication will be assessed in your answer to this question.
[8]

© OCR 2017. You may photocopy this page. Page 29 of 58 Created in ExamBuilder
(b). Describe what happens during syntax analysis, when code is compiled.

[5]

25. Some high-level languages are object-oriented.

Describe three features of an object-oriented language.

© OCR 2017. You may photocopy this page. Page 30 of 58 Created in ExamBuilder
3

[6]

26(a). Memory management in a computer for main memory can use either paging or segmentation.

i. Explain what is meant by ‘paging’.

[2]

ii. Explain what is meant by ‘segmentation’.

[2]

iii. State two similarities between paging and segmentation.

[2]

(b). Operating systems can use many different scheduling algorithms.


© OCR 2017. You may photocopy this page. Page 31 of 58 Created in ExamBuilder
i. State three different scheduling algorithms.

[3]

ii. Explain the purpose of scheduling.

[3]

27. A variable can be declared as global or local and is said to have scope.

i. Explain what is meant by the term ‘variable’.

[2]

ii. Explain what is meant by ‘scope’ in relation to global and local variables.

© OCR 2017. You may photocopy this page. Page 32 of 58 Created in ExamBuilder
[2]

28. See And Believe is a company that specialises in computer-generated imagery (CGI) for films.

Producing CGI requires lots of processing power and so the company has a large number of
high-performance computers.

Explain why See And Believe would use a distributed operating system.

[3]

29(a). A burglar alarm runs on a processor with the Little Man Computer (LMC) instruction set.

One of the instructions in the set is Branch if Positive (BRP ).

Describe what the instruction BRP does.

[2]

(b). A numeric PIN code entered into the burglar alarm is compared with the code stored at the
memory location passcode.

If the codes match, the program jumps to the part of the program labelled deactivate.

If the codes do not match, the program jumps to the part of the program labelled alarm.

Write the LMC code to meet the requirements above. (You don't have to write the code for
labels deactivate and alarm, as you can assume this has already been written elsewhere.)

© OCR 2017. You may photocopy this page. Page 33 of 58 Created in ExamBuilder
[4]

30(a). A programmer spends her spare time contributing to an open source application that converts
video files from a range of formats to one which uses lossy compression.

Describe what is meant by the term ‘open source software’.

[2]

(b). The coding team are looking at writing a new closed source version of the application that
converts audio and image files in addition to video. They intend to sell copies of the program
when it is complete. They investigate three programming languages they could use, including:

• C++, which is compiled to machine code


• Java, which compiles to an intermediate code that then runs off a virtual machine
• JavaScript, which runs from an interpreter in a web browser.

* Discuss the benefits and drawbacks of the three options above and justify which option you
would recommend.

© OCR 2017. You may photocopy this page. Page 34 of 58 Created in ExamBuilder
[9]

31. A professional photographer, Sarah, takes and edits photographs for magazines.

Sarah carries around a digital camera and laptop to use on shoots. She keeps extra
peripherals in her office that she can use when editing and finalising photographs.

The laptop has both system software and application software.

i. Define the term ‘software’.

[1]

ii. Explain why Sarah needs both system and application software.

© OCR 2017. You may photocopy this page. Page 35 of 58 Created in ExamBuilder
[2]

32(a). An operating system has to manage a system's resources.

One aspect of this is memory management.

i. Describe one difference between paging and segmentation.

[2]

ii. Explain how an operating system may overcome the problem of physical memory being
full.

[4]

(b). Another job of an operating system is to deal with interrupts.

i. State what is meant by the term ‘interrupt’.

© OCR 2017. You may photocopy this page. Page 36 of 58 Created in ExamBuilder
[1]

ii. Describe what happens in the CPU when it receives an interrupt.

[5]

33(a). Mobile Treasure Hunt is a game played on a mobile phone. The game shows the user's
position on a map of their local area. Treasure randomly appears on the map and users must
move to the appropriate area to collect the treasure before it disappears.

Below is part of the code from Mobile Treasure Hunt.

© OCR 2017. You may photocopy this page. Page 37 of 58 Created in ExamBuilder
Describe what is meant by the term ‘inheritance’, referring to the code in Fig. 2.1.

[3]

(b). Below is part of the code from Mobile Treasure Hunt.

© OCR 2017. You may photocopy this page. Page 38 of 58 Created in ExamBuilder
Identify all attributes and methods in the TreasureChest class.

Methods:
......................................................................................................................................................

Attributes:
...................................................................................................................................................

[2]

34(a). A Little Man Computer (LMC) assembly language program is stored in memory as shown in
Fig. 3.1.

© OCR 2017. You may photocopy this page. Page 39 of 58 Created in ExamBuilder
In this variant of LMC the symbols & and # are used to denote different modes of addressing.

Given that the output is 17, state the addressing mode represented by each symbol.

i. &
..........................................................................................................................................
[1]
ii. #
..........................................................................................................................................
[1]

An assembler is used on the code.

(b). Describe what is meant by the term ‘assembler‘.

[2]

END OF QUESTION PAPER

© OCR 2017. You may photocopy this page. Page 40 of 58 Created in ExamBuilder
Mark scheme
Question Answer/Indicative content Marks Guidance

1 per bullet max 6.

• Holds the instruction while it is being decoded / executed These need to be fairly precise as it is a technical questio
• Contents are split into two parts…
• Operation code is first part of instruction… Note: ‘Instruction’ in the first mark point may be referred t
• …operation code is decoded (so that CU knows what to do)
1 • Rest of the content is address of data to be used with the operation / actual 6 Examiner's Comments
data to be used (if immediate operand is used)…
• …operand is copied to MAR if it is an address This was a very technical question and was limited in its s
• …operand is copied to MDR if it is data the fetch execute cycle which is not on the specification fo
reaching response, which many did, the points that were
by examiners. As with question 2d, this is an ideal questio
points because the answer is a sequence of stages

Total 6

• A system which shares processing (between the processors on a network) /


shares the data between different systems (on a network in order to reduce Examiner's Comments
2 1
bottlenecks).
This was a definition which many candidates did not know
simple network.

Total 1

3 i The system gives a response within a guaranteed time frame (1). 1 For 1 mark.

• If something happens to a patient, a response must be immediate (1).


• Other types of system may have delays in response (1). Up to 2 marks for a valid explanation that demonstrates a
ii 2
• This could result in a patient not receiving treatment in time (1). understanding to given context.

Total 3

• It outputs 3 (1).
4 a 1 For 1 mark.

• Performs subtraction (1).


b i 1 For 1 mark.

• The accumulator (1).


ii 1 For 1 mark.

• Calculates the remainder of two numbers when the second is divided by the For 1 mark.
c i first (1). 1
Accept finds modulo / modulus.

For 2 marks.
• Code takes in two values and provides an output (1).
ii • The output is the modulus of the two inputs (1). 2 Allow follow through for second mark if output matches an
Accept MOD, % or any existing alternative.
Accept if candidate has calculated modulus using alterna

© OCR 2017. You may photocopy this page. Page 41 of 58 Created in ExamBuilder
Example:

Total 6

For 3 marks.

1 mark for ⊥ used to conjoin g and f to rest of expression.


1 mark for s ⊦ c.
1 mark for brackets around s ⊦ c.
5 i t≡g⊥s⊦c⊥f 3

Give full marks to any equivalent expression.

Accept different notations.


t ≡ g. s + c .f

For 2 marks.

Accept forms.

ii 2

Accept && and || operators.

Allow follow through mark from 5a)i).

Total 5

• A programming language that runs in a web browser (1) that can be


embedded into HTML (1) with <script> tag (1) to add interactivity to a page
6 a i 2 Up to 2 marks for a valid description.
(1).

• JavaScript is likely to be run on a variety of machines (1) with different


processors / architectures (1). Compiled code is machine dependent (1)
ii whereas interpreters run on high level code (1) which is machine independent 2 Up to 2 marks for a valid explanation.
(1).

• Team scores are initialised (prior to loop) (1).


• Iterates through array correct number of times (1).
Up to 6 marks – 1 mark for each correct step in process.
• Checks the team the player is on (1).
functionality should receive full marks.
b • If the player is green adds score to the greenTeam (1). 6
• If the player is red adds score to the redTeam (1).
Example:
• Outputs result in a sensible manner (1).

© OCR 2017. You may photocopy this page. Page 42 of 58 Created in ExamBuilder
Total 10

• A utility performs a specific task (1) and is usually related to the upkeep of the
system (1).
7 a 2 Up to 2 marks for a valid description.
• Examples of a utility include a virus checker (1) / disk defragmenter (1).

Mark Band 3–High Level


If only one methodology considered – MAX 6 marks.
(9–12 marks)
The candidate demonstrates a thorough knowledge and understanding of both
AO1: Knowledge and Understanding
methodologies; the material is generally accurate and detailed.
The following is indicative of possible factors / evidence th
prescriptive or exhaustive:
The candidate is able to apply their knowledge and understanding directly and
consistently to the context provided. Evidence / examples will be explicitly relevant to the
• The waterfall lifecycle involves linear stages wh
explanation.
approach.
• The waterfall lifecycle establishes requirements
The candidate is able to weigh up both sides of the argument which results in a
stages focus on these – new requirements can
supported and realistic judgment as to which methodology should be used.
• The waterfall lifecycle focuses on the end user
consulted at different points throughout the pro
There is a well-developed line of reasoning which is clear and logically structured. The
throughout XP.
information presented is relevant and substantiated.
• In the waterfall lifecycle the development phase
requirements / design. In XP the quality of the
Mark Band 2–Mid Level
programming helps focus on this.
(5–8 marks)
• The waterfall lifecycle although adopted for larg
The candidate demonstrates reasonable knowledge and understanding of both
limits changing requirements.
b methodologies; the material is generally accurate but at times underdeveloped. The 12
candidate is able to apply their knowledge and understanding directly to the context
provided although one or two opportunities are missed. Evidence / examples are for the
most part implicitly relevant to the explanation. The candidate makes a reasonable
AO2.1: Application
attempt to come to a conclusion showing some recognition of influencing factors that
The selected knowledge / examples should be directly rel
would determine which methodology should be used.

• Discussion of how the methodologies would im


There is a line of reasoning presented with some structure. The information presented is
regarding abstraction, any preconditions and h
in the most part relevant and supported by some evidence.
• Discussion around how the methodologies wou
procedures and how sub-procedures would be
Mark Band 1–Low Level
• How the methodologies could potentially affect
(1–4 marks)
are dealt with and how concurrency is dealt wi
The candidate demonstrates a basic knowledge of methodologies with limited
• Discussion of other social factors that affect the
understanding shown; the material is basic and contains some inaccuracies. The
candidate makes a limited attempt to apply acquired knowledge and understanding to
the context provided.

AO3.3: Evaluation
The candidate provides nothing more than an unsupported assertion.
Having considered the different sides to the argument can
The information is basic and communicated in an unstructured way. The information is

© OCR 2017. You may photocopy this page. Page 43 of 58 Created in ExamBuilder
supported by limited evidence and the relationship to the evidence may not be clear. supported judgment based on the evidence included in th
0 marks
No attempt to answer the question or response is not worthy of credit. There should be no bias in marks as to which methodolog
mark band there must be a clear link between the points c
justification.

e.g.
The waterfall lifecycle establishes requirements in early s
on these. New requirements can be adopted throughout X
are likely to be static making the Waterfall model a more a

OR

In the waterfall lifecycle the development phase focuses o


design. In XP the quality of the code is an important facto
this.

For this utility to be successful it must work more efficient


developed through XP is more likely to achieve this, there
approach.

Total 14

• Speed (1) / mass (1) / size (1).


8 a 1 For 1 mark.

• A template (1) defining methods and attributes (1) used to make objects (1).
b 2 Up to 2 marks for a valid description.

• Inheritance is when a class takes on the methods (1) and attributes (1) of a
parent class (1).
c i • The inheriting class may override some of these methods / attributes (1) and 3 Up to 3 marks for a valid description.
may have additional extra methods and attributes of its own (1).

Up to 3 marks for a valid explanation.


• The company may wish to use inheritance to create different types of lizards
(1 – AO1.2) using the lizard class as the base class (1 – AO2.1) and different
ii 3 Maximum 1 mark for demonstrating understanding (AO1.
types of lizard inheriting from it (1 – AO2.1).

Up to 2 marks for applying knowledge and understanding

• The user running the program will not necessarily have the library installed on
their machine (1) therefore the relevant code needs to be included within the
d 3 Up to 3 marks for a valid explanation.
final executable (1) – it is the job of the linker to combine this code (1).

Total 12

• An assembler (1).
9 a 1 For 1 mark.

Award first mark: For 2 marks.

b Changing LDA NUMB to LDA NUMA (1). 2 Accept changes annotated on provided code.

Award second mark: Accept any other amendment that fixes program.

© OCR 2017. You may photocopy this page. Page 44 of 58 Created in ExamBuilder
Changing NOTA LDA NUMA to NOTA LDA NUMB (1).

• Program outputs smaller number (1) so in the case of 4 and 9 outputs 4 (1).
c 2 Up to 2 marks for a valid description.

For 4 marks – 1 mark for each correct step in process.

• Takes in two numbers (1). Example:

• Compare the numbers (1).


d • If first number is biggest outputs first number (1). 4
• If second number is biggest outputs the second number (1).

Total 9

• Provide a user interface (1 – AO1.1) for the user to load games etc. (1 –
AO1.2).
• Control hardware (1 – AO1.1) such as graphics card, games controllers etc. (1
– AO1.2).
1 mark for each correct identification (AO1.1) up to a max
• Act as a platform from which software can be run (1 – AO1.1) such as games
10 a 4
and apps (1 – AO1.2).
1 mark for each valid description (AO1.2) up to a maximu
• Control access (1 – AO1.1) so that different users can access the system (1 –
AO1.2) and have their own data such as scores and achievements (1 –
AO1.2).

• This means that a lot of the core functionality they need is already available
(1) so the company just has to make amendments / additions specific to their
b 2 Up to 2 marks for a valid explanation.
system (1) saving time and money (1).

• Different console makers will use Digital Rights Management (DRM) (1 –


AO1.2) to protect games from being able to be run on anything other than
their machines (1 – AO2.1).
• Different consoles will have different processors (1 – AO1.2) each with their
own instruction sets (1 – AO2.1) and word sizes (1 – AO2.1). Up to two marks for identifications (AO1.2).
c • Different consoles have different operating systems (1 – AO1.2) and so 4
games may be dependent on libraries in one operating system that don’t exist Up to two marks for valid explanations (AO2.1).
in another (1 – AO2.1) or may make different system calls (1 – AO2.1).
• Games might be on a different media (1 – AO1.2), for example, might be on
Blu-ray when console may only have a DVD player (1 – AO2.1).

Total 10

– A piece of software …
– … with one purpose …
11 a 2
– usually to do with the upkeep / maintenance of a computer.
(1 per −, max 2)

– Memory contents are divided into pages


b – Pages not needed get moved to virtual memory 4
– Which is an area on a secondary storage device

© OCR 2017. You may photocopy this page. Page 45 of 58 Created in ExamBuilder
– When required the pages are moved from virtual memory back into RAM.
(1 per −)

Total 6

– Value between 193 and 201 returns respective ASCII value between 65 and 73
– Value between 209 and 217 returns respective ASCII value between 74 and 82
– Value between 226 and 233 returns respective ASCII value between 83 and 88
12 5
– Values less than 193 and greater than 233 return -1
– Values between 202 and 208, and 218 and 225 return -1.
(1 per −)

A program that returns a value 128 less for values betwee


mark but not the last one. (The same principle applies for

Total 5

– STA store the value in the accumulator into a given memory location
13 a – LDA loads the value in a memory location into the accumulator. 2
(1 per −)

b Direct addressing 1 Accept Symbolic Addressing

0
– Answer contains at least 1 followed by 0
– Answer contains at least three 10s
c 3 1
– Answer contains exactly four 10s
(1 per −)
0

NB allow answers that are vertical or horizontal.

Total 6

© OCR 2017. You may photocopy this page. Page 46 of 58 Created in ExamBuilder
– Adds the tag name …
– Includes the opening <
– Includes the closing > and nothing further
– Tags are added to data structure.
14 a 7
– Adds all tags in the string.
– Sensible variable names used
– Correct use of indentation
(1 per −)

b i Queue 1

ii Hashtable 1 Accept Hashmap / Associative Array / Dictionary

iii Stack 1

Stack uses a last in first out approach …


iv 2
… and the last HTML tag to be opened should be the first to be closed.

Total 12

15 a To control the hardware 1

– Developers can run their operating system on a software implementation of the


phone …
b 2
– … Until the physical machine is ready.
(1 per −)

– Complete the current FDE Cycle


– Check the priority of the incoming interrupt.
– If its of a higher priority than the current task.
– Contents of registers stored in memory..
– … in a stack.
c 6
– The relevant interrupt service routine is loaded …
– ..by loading the relevant value into the program counter.
– When the ISR is complete the previous state is popped from the stack
– And are loaded back into the registers.
(1 per −, max 6)

– Feasibility Study
– Investigation / Requirements Elicitation
– Analysis
– Design
– Implementation / Coding
d i – Testing 3
– Installation
– Documentation
– Evaluation
– Maintenance
(1 per −, max 3)

– Tends to suit large scale projects …


ii – ..An OS is an example of such a big project. 2
– Tends to suit projects with stable requirements …

© OCR 2017. You may photocopy this page. Page 47 of 58 Created in ExamBuilder
– … And the base requirements of an OS are unlikely to change.
(1 per −, max 2)

If a change does occur in the requirements the lifecycle cannot respond easily, often at
iii 1
the cost of time and money.

AO1 Knowledge and Understanding


Mark Band 3–High Level (7–9 marks)

The following is indicative of possible factors / evidence th


The candidate demonstrates a thorough knowledge and understanding of Object
prescriptive or exhaustive:
Oriented Programming and has discussed inheritance, polymorphism and encapsulation;
the material is generally accurate and detailed.
OOP involve solutions being constructed by means of obj
OOP uses classes as templates to construct objects. An o
The candidate is able to apply their knowledge and understanding directly and
associated with it) and methods (subroutines that form the
consistently to the context provided. Evidence / examples will be explicitly relevant to the
explanation.
Inheritance is where a class retains the methods and attri
having its own.
The candidate provides a thorough discussion which is well balanced. Evaluative
comments are consistently relevant and well-considered.
Encapsulation is the process of keeping an object's attribu
accessed and changed via public methods.
There is a well-developed line of reasoning which is clear and logically structured. The
information presented is relevant and substantiated.
Polymorphism means that objects of different types can b

Mark Band 2–Mid Level (4–6 marks)


Procedural programming breaks a solution down into sub
built and combined to form a program.
The candidate demonstrates reasonable knowledge and understanding of a range of
Object Oriented Programming and has discussed at least two of: inheritance,
polymorphism and encapsulation; the material is generally accurate but at times
AO2.1: Application
underdeveloped.

The selected knowledge / examples should be directly rel


The candidate is able to apply their knowledge and understanding directly to the context
e 9 Examples may include but are not limited to:
provided although one or two opportunities are missed.
Evidence / examples are for the most part implicitly relevant to the explanation.
Breaking a problem down into objects naturally lends itse
can work on different objects.
The candidate provides a sound discussion, the majority of which is focused. Evaluative
comments are for the most part appropriate, although one or two opportunities for
Inheritance means that one class can be coded and that c
development are missed.
objects. This will save the team time as they are able to b

There is a line of reasoning presented with some structure. The information presented is
Encapsulation means that objects only interact in the way
in the most part relevant and supported by some evidence.
changed to attributes having unforeseen consequences. T
fewer issues as the team combines their code.
Mark Band 1–Low Level (1–3 marks)

Polymorphism means that code can be written that is able


The candidate demonstrates a basic knowledge of Object Oriented Programming with
same way. This reduces the volume of code the team nee
limited understanding shown; the material is basic and contains some inaccuracies. For
3 marks they have described at least one of inheritance, polymorphism or encapsulation.
Procedural programming can be divided between a team
The candidate makes a limited attempt to apply acquired knowledge and understanding
different subroutines.
to the context provided.

There are a number of similarities between the two parad


The candidate provides a limited discussion which is narrow in focus. Judgments if made
are weak and unsubstantiated. The information is basic and communicated in an
Certain problems lend themselves more to one than the o
unstructured way. The information is supported by limited evidence and the relationship
to the evidence may not be clear.

AO3.3: Evaluation

© OCR 2017. You may photocopy this page. Page 48 of 58 Created in ExamBuilder
0 marks Having considered the different sides to the argument can
No attempt to answer the question or response is not worthy of credit. supported judgment based on the evidence included in th

Total 24

Purpose
Maximum of 2 marks from Uses
−Manages data storage / organises data storage
Uses
Examiner's Comments
16 a − Used for the deletion / sorting / moving / copying / creation of files / folders 3
− Manage the storage of software
Most candidates correctly described how file handlers wo
− Manage the storage of stock files
stated the purpose, most stating that they ‘organise files’
− To access files

Maximum of 2 marks from Uses


Purpose
Not enable hardware to communicate
− Enable peripheral and OS to communicate

Examiner's Comments
b Uses 3
− To configure hardware
Some candidates gained credit for stating appropriate us
− e.g. would be used to install a new keyboard; mouse; printer
purpose was generally too vague. Many stating that they
(accept any examples sensible within context)
‘allow communication between the operating system and

Purpose
−Automatically makes a copy of files Maximum of 2 marks from Purpose, 2 from Uses
−Storing them in a different location / medium
− in case of loss / corruption (of original) Examiner's Comments
c 3

Uses This question was well attempted by most candidates alth


−To make Incremental back−ups the term ‘backup’ to describe the purpose of the utility wit
− Ensure that sales / stock data is backed up

Total 9

• A name / location in memory / identifier


Examiner's Comments
17 i • Used to store a value which can change during execution 2

On the whole this question was answered well. However


that it could ‘change during execution’, but used phrases

cao

• x, y, A
ii 1 Examiner's Comments

Those candidates that did not achieve the mark used the

Total 3

cao
• Constant: InterestRate
• Defined at the start….
Examiner's Comments
• …where it can be changed if necessary / cannot be changed during execution
18 3
• Makes reading the algorithm more understandable
Again, candidates dropped marks due to using the wrong
including all or part of the line “CONST InterestRate=10”.
(1 mark for identifying the constant, plus any other 2)
clearly that a constant cannot be changed during the exe

Total 3

© OCR 2017. You may photocopy this page. Page 49 of 58 Created in ExamBuilder
• NotInDictionary: Function
• CheckAnswer: Function
19 a 3 Examiner's Comments
• SendMessage: Procedure

A few candidates are still having problems differentiating

Except values instead of character codes

• When comparing characters, upper and lowercase characters don't match Examiner's Comments
b • Because they have different character codes 2
On the whole this was answered poorly. The candidates e
the value for a given character was different for uppercas
values which were compared and not the ‘character’.

• Checks the length of the message…


• … to ensure there are exactly 6 characters / … otherwise reports an incorrect
length Examiner's Comments
c 4
• Checks that the existence of the word…
• … in company's dictionary / otherwise reports an unknown word Quite a few candidates picked up full marks for this quest
not answer in the context of the question, and therefore d

Total 9

Examiner's Comments
Once a job starts it prevents other jobs from being processed
20 a i 2
A job using a slow resource (eg printer) wastes processor time
This question seemed to baffle a lot of candidates who de
priorities instead. Those who answered the question prop
mark, there were relatively few who got full marks for this.

One method only - marks in pairs


Accept other examples, including
Round robin Priorities
Time slice to each user in turn Highest priority first
ii Or 2
Length of job Examiner's Comments
Shortest job first
This question was well answered by most candidates with
favourite response.

Process as many jobs as possible…


…in least possible time / quicker
Ensure all jobs are processed (fairly) Examiner's Comments
iii 4
Maximise number of interactive users…
…with fast response times / real time In general, this was well answered with the whole range o
Efficient use of resources / processor time scheme being used.

Organise the use of (main) memory…


…by converting logical addresses to physical addresses Examiner's Comments
b Allows programs to share memory / allocate memory… 3
…& protect programs / data from each other Most candidates gave correct responses to this, with the m
Allows programs larger than main memory to run the most popular answers for this were ‘allocates memory
other’.

© OCR 2017. You may photocopy this page. Page 50 of 58 Created in ExamBuilder
cao

Partitioning memory
Examiner's Comments
Pages are fixed size
c 3
Pages are physical divisions
A lot of candidates had problems with this question and a
Used for virtual memory
concerning saving to secondary memory. Very few menti
that this should be fairly standard when referring to pagin

Total 14

Mark band 6-8. High level response.

Candidate has explained both terms in detail.


Candidate has used appropriate technical terminology throughout.
There are few, if any, spelling errors or grammatical errors.

Mark band 3-5. Medium level response.

Candidate has explained 1 of the terms in detail or explained both terms superficially.
Candidate has used some technical terminology in the response.
There may be spelling errors or grammatical errors, but they are not obtrusive.

Mark band 0-2. Low level response.

Candidate has listed some relevant points but failed to explain the terms in any detail.
There is a lack of cohesion in the response.
Candidate has failed to use correct technical terms in the response. For descriptions “in detail”, 3 or more relevant points are
Spelling and grammatical errors affect the readability of the response.
Examiner's Comments
21 a Points may include: 8
Intermediate code: This was the first of two banded response questions. In g
Is simplified code that… level of competence, however, a few diverged into talking
…is between high level & machine code checking which was not what was required.
…is produced by compiler
…runs on any computer
…allows portability between machines
Allows sections of code to be written in different languages…
…by different programmers
…suitable for specific tasks
Error free

Virtual machine:
A theoretical computer which provides…
…an environment in which a translator is available
Uses an interpreter to run the intermediate code
Points in the context of
A translator is used to convert code from one language to another…
…from source code to object code
Mention of types of translator: compilers, interpreters, assemblers

Relatively error free / has already been tested


Ready to use / saves time/already been written
b Used multiple times / common tasks / reduces repeated code 3
Examiner's Comments
Programmer expertise
Different source languages

© OCR 2017. You may photocopy this page. Page 51 of 58 Created in ExamBuilder
Excellently answered, very few candidates had any proble
candidates gained at least two out of the three marks.

Total 11

cao

22 i Von Neumann 1 Examiner's Comments

A very well answered question, with only one possible an

One mark per correct row

Examiner's Comments
ii 4
Again generally well answered, although a small percenta
unaware that you could put more than one tick per row. D
got them used to this, candidates should be reminded to

Total 5

Reflects design of processor


Examiner's Comments
Direct access to memory locations
23 a 3
Limited memory in processor
Not a well answered question. Candidates seemed more
Direct coding of operations
and its functions rather than the processor controlling it, a
showing higher ability more likely to get full marks on this

One mark per correct row in table

Examiner's Comments
b 4
Most candidates were able to get some marks on this alth
proportion of candidates who put the last tick in the empty
have anything in it yet.

Relative addressing…
Examiner's Comments
…uses offset 3 to calculate real address from base address 11
c 4
Indexed addressing…
Another question that was expected to differentiate betwe
…modifies address 3 by adding number 11 from index register
generally managed to get three or four marks on this que
or two marks by addressing modes but the difference was

Total 11

© OCR 2017. You may photocopy this page. Page 52 of 58 Created in ExamBuilder
Mark band 6-8. High level response.
Candidate has described all 3 terms highlighting the differences between machine code
and assembly language.
Candidate has used appropriate technical terminology throughout.
There are few, if any, spelling errors or grammatical errors.
Mark band 3-5. Medium level response.
Candidate has described two terms adequately.
Candidate has used some technical terminology in the response.
There may be spelling errors or grammatical errors, but they are not obtrusive.
Mark band 0-2. Low level response.
Candidate has listed some relevant points but failed to give any detail.
There is a lack of cohesion in the response.
Candidate has failed to use correct technical terms in the response.
Spelling and grammatical errors affect the readability of the response.
Machine code:

• Binary notation
• Instructions operate on bytes of data
• Dependent on architecture
• Harder to program
24 a 8

Assembly language:

• Low level language…


• …but higher level than machine code / mnemonics / hexadecimal
• Uses mnemonics
• Machine-specific / close to computer
• Each instruction generally translated to 1 machine code instruction

Assembler tasks:

• Reserves storage for instructions & data


• Replaces mnemonic opcodes by machine codes
• Replaces symbolic addresses by numeric addresses
• Creates symbol table
• Checks syntax
• Error diagnostics Nothing about lexical analysis or code generation

Examiner's Comments

This question covered the full range of abilities for candid


of levels of ability. A small but significant amount of candi
language compilers or interpreters rather than an assemb

2 Marks from this section No syntax check

b 5
• Statements / tokens are checked… Examiner's Comments
• … against the rules / grammar of the language

© OCR 2017. You may photocopy this page. Page 53 of 58 Created in ExamBuilder
• valid example given Again the Principal Examiner was looking for more techn
it was apparent from the range of answers given that this
understanding of the subject.
3 Marks from this section

• Errors reported as a list


• Error diagnostics given
• Detail added to symbol table…
• …eg data type / scope / address
• Receives output from lexical analysis / passes code to code generation

Total 13

• Self-contained object / (instance of a) class / entity / real world object …


• … contains routines / methods / attributes / data
Marks in pairs, max 3 pairs
• Program split into small units/object…
• … which are used (by other objects) to build a complex system
Examiner's Comments
25 • Uses encapsulation… 6
• …to hide data within objects / object only accessed through methods
Those who knew what object oriented language was did q
• Inheritance…
able to gain four marks and a fair proportion gaining maxi
• … / superclass / subclass / derived classes

Total 6

• Parts of a program divided into equal size pieces


26 a i • Uses physical divisions 2 Examiner's Comments

This was answered as expected with most candidates ge

• Parts of a program divided into unequal sizes


Examiner's Comments
ii • Uses logical divisions 2

As would be expected of this question, it was the second


marks was the same.

• Both ways of partitioning / splitting up memory


• Use virtual memory / backing store to swap parts of programs
Virtual Memory / Backing store not enough on its own
iii • Allow programs larger than memory to run / insufficient memory 2
• Allows programs to be stored in memory noncontiguously
Examiner's Comments

Most candidates were quite unspecific in their responses


aimed at higher grade candidates and it did define the diff
response and a good one.

• First Come First Served


• Round Robin
b i 3
• Shortest Job First
• Shortest Remaining Time Accept any other processor scheduling algorithm.

© OCR 2017. You may photocopy this page. Page 54 of 58 Created in ExamBuilder
• Multilevel Feedback Queues
Examiner's Comments

Generally well answered but there were a small number o


mixed up with stack and queue operations.

• To make the most efficient use of the processor / resources


• Be fair to all users / applications Examiner's Comments
ii • Provide a reasonable response time 3
• Prevent processes from failing to run / Process starvation / Deadlock A number of candidates seemed to have taken an earlier
out of context and implied that the processor made sure t
“Maximise the number of users” on its own was not consid

Total 12

• Identifier/name of a … Examiner's Comments


27 i • Memory location used to store data 2
Generally well answered.

Accept block of code


• A range of statements/procedure/function/method that a variableis valid for
• A local variable takes precedence over a global variable of thesame
Examiner's Comments
ii name/allow the same identifier to be used for different purposes without 2
conflict
Most gained a mark, although many vague references to
by definitions of global and local variables.

Total 4

Any 2 from:

• Allow multiple computers / resources… (AO1.1)


• To be treated as one / work on the same problem (AO1.1)

Examiner's Comments
28 3
Few candidates gained full marks on this question. Many
1 from:
characteristics of a network operating system rather than
appropriately related their explanation to the scenario.
• Meaning all the computers can work on producing the same special effect.
(AO2.1)

Total 3

Do not to accept ‘…branch…’ for BP 1

Examiner's Comments
• The program flow jumps to a (designated) label / another point in the program
29 a • If the value in the accumulator is positive. 2 Many candidates failed to gain credit on this question due
their response, which is essential at this level of study. So
answers such as: ‘the code branches if the result is positi
demonstrate understanding that it is the value in the accu
whether it is positive or not.

• Inputs the PIN Example code:


b • compares it with the passcode stored in memory using SUB 4 INP
• the correct PIN results in a jump to deactivate SUB passcode

© OCR 2017. You may photocopy this page. Page 55 of 58 Created in ExamBuilder
• incorrect PIN resulting in a jump to alarm BRZ deactivate
BRA alarm

Examiner's Comments

The specification clearly outlines the LMC mnemonics wh


responses. Some candidates used LMC mnemonics corr
candidates answered using procedural pseudocode gaini
ensure candidates have the range of LMC mnemonics at
examination.

Total 6

• Source code is freely available…


Examiner's Comments
30 a • …for others to amend / examine / recompile 2

This question was generally well answered. However, can


being freely available rather than the ‘source code’ did no

AO1: Knowledge and Understanding


The following is indicative of possible that candidates ma
Mark Band 3–High Level (7-9 marks)
exhaustive:
The candidate demonstrates a thorough knowledge and understanding of a wide range
Java
of the technical issues the coding team might have considered; the material is generally
One version needs be written and can be used on any de
accurate and detailed. The candidate is able to apply their knowledge and understanding
Java Virtual Machine rather than having to write multiple
directly and consistently to the context provided and come to a well argued conclusion.
Code running on a VM tends to be slower than compiled.
Evidence / examples will be explicitly relevant to the explanation. The candidate provides
C++
a thorough discussion which is well-balanced. Evaluative comments are consistently
Multiple versions of the code will need to be maintained fo
relevant and well-considered.
…however there may be minimal differences between the
different compilers.
There is a well-developed line of reasoning which is clear and logically structured. The
information presented is relevant and substantiated.
Program will run quicker than alternatives.

Mark Band 2 –Mid Level (4-6 marks)


JavaScript
The candidate demonstrates reasonable knowledge and understanding of the technical
As interpreted likely to be by far the slowest option.
issues the coding team might have considered; the material is generally accurate but at
Will run in any browser.
times underdeveloped. The candidate is able to apply their knowledge and
b 9
understanding directly to the context provided although one or two opportunities are
AO2: Application
missed. A reasoned conclusion is drawn. Evidence / examples are for the most part
The selected knowledge / examples should be directly re
implicitly relevant to the explanation The candidate provides a reasonable discussion,
following is indicative of possible factors / evidence that c
the majority of which is focused. Evaluative comments are for the most part appropriate,
prescriptive or exhaustive:
although one or two opportunities for development are missed.
There is a line of reasoning presented with some structure. The information presented is
Java
in the most part relevant and supported by some evidence.
Multiple devices can include devices other than PCs (i.e.
People with unusual operating systems or architectures w
Mark Band 1-Low Level (1-3 marks)
It makes commercial sense to sell to as wide an audience
The candidate demonstrates a basic knowledge of the technical issues the coding team
The speed reduction compared to compiled code will like
might have considered with limited understanding shown; the material is basic and
processor intensive task.
contains some inaccuracies. A conclusion is made though it may not be well supported.
As running on a VM coders will have limited (if any) acces
The candidate makes a limited attempt to apply acquired knowledge and understanding
(e.g. access to the GPU) which can optimise the program
to the context provided.
protect intellectual property.
The candidate provides a limited discussion which is narrow in focus. Judgments if made
are weak and unsubstantiated. The information is basic and lacks supporting evidence.
C++
Some less used architectures may not be developed for a

© OCR 2017. You may photocopy this page. Page 56 of 58 Created in ExamBuilder
Compiled code will run quicker than the other options. Th
nature of the task.
Easier to get access to lower level features (such as GPU
Compiled code is not human readable helping to preserve

JavaScript
Most people have web browsers so by far most compatib
The slow speed may be frustrating…
…though as no user interaction is needed this may be a t
Source code is visible (though can be obfuscated) meani
amended.

AO3: Evaluation
Candidate has used the points above to justify their choic

Examiner's Comments

Candidates were assessed on the quality of their extende


candidates did not extend their discussion beyond the be
writing code in each of these programming languages, th
mid band. Those candidates who discussed the benefits
source application written in each of the languages with a
credited in the mid / high band. Centres should encourag
response to clearly address all parts of the question.

Total 11

31 i The programs / sets of instructions that run on a computer system. 1

Accept other system software functions e.g.

• Provides a platform for applications software


• Manages memory
• □ Systems software controls the hardware [1] • Provides a user interface
ii • □ Applications software will allow the photographer to do something useful. [1] 2

Examiner's Comments

These questions were well answered, with most candidat

Total 3

Paging is fixed size / physical divisions (1) Segmentation is dividing memory logically
32 a i 2
(i.e. will be variable size). (1)

Uses virtual memory (1) which is an allocated area of a hard drive/secondary storage
ii device.(1) Pages that aren’t needed are moved to VM (1) and moved back to physical 4
memory when required (1)

b i A signal to the processor indicating a device/process needs attention (1) 1

Any five from:

ii If the interrupt is of a lower/equal priority to the current process then the current process 5
continues (1)
If it is of a higher priority the CPU finishes its current Fetch-Decode−Execute cycle (1).

© OCR 2017. You may photocopy this page. Page 57 of 58 Created in ExamBuilder
The contents of the CPU’s registers are copied to a stack (1) in memory (1). The
location of the appropriate interrupt service routine is loaded into the program counter
(1) When the ISR is complete, the previous contents are popped from the stack and
loaded back into the registers (1).

Total 12

When a class has the attributes and methods of its parent class. (1) It may also have
33 a methods and attributes of its own (1) 3
TreasureChest inherits from the class Treasure (1)

Do not penalise for not including constructor.


Methods: (constructor/new), changeName, pickLock (1)
b 2 Only give method mark if both other methods are listed
Attributes: value, weight, name, locked (1)
Only give attributes mark if all four attributes are listed.

Total 5

34 a i & immediate addressing 1

ii # indirect addressing 1

b A program that translates assembly code (1) into machine code/object code (1) 2

Total 4

© OCR 2017. You may photocopy this page. Page 58 of 58 Created in ExamBuilder

You might also like