Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 604 exam-style questions, each with its mark scheme and example answers. Print it, or answer it on paper and then open the mark schemes. Or browse the questions by topic.

Build a paper

Topics (none ticked: all of them)
Question types (none ticked: all of them)

Practice paper

4 questions · 16 marks

Pick again
Print
1Describe2 marksUtility Software Swap Remove

A computer can lose power while a file is being saved.

Describe what file repair software does.

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • Attempts to repair/rebuild the corrupted file (1) so that it can be opened by its program again (1)
  • Recovers/retrieves the parts of the file that can still be read (1) so that the user does not lose all of the data in the file (1)
  • Reconstructs the file from data held in other parts of the disk (1) because part of the file/the disk is corrupted (1)
  • Saves a new/repaired copy of the file (1) as some of the data in it may not be recoverable (1)

Do not accept 'it repairs the file' on its own, as this repeats the question.

Do not accept responses about restoring a backup/previous version of the file, as this is backup software.

Do not accept responses about scanning for or removing malware.

Example answers and how they were marked
Full marks2/2

It recovers the parts of the file that can still be read (1) so that the user does not lose everything that was saved in it (1).

Why: The point (1) and a linked development giving the effect (1).

Some marks1/2

It rebuilds the damaged file from other parts of the disk.

Why: A valid point is made (1) but there is no development of what this achieves, so the second mark is not awarded.

No marks0/2

It restores the last backup of the file so the user gets the data back.

Why: This describes backup software, which the mark scheme does not accept for this question.

2Describe2 marksLow and High Level Languages Swap Remove

A device driver is software that allows the operating system to control a piece of hardware. Device drivers are often written in a low-level programming language.

Describe one reason why a low-level programming language is suitable for writing a device driver.

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • Instructions can manipulate/control the hardware/memory/registers directly (1) so the driver can control the specific device it is written for (1)
  • The code is written for one specific processor/architecture (1) so it works with the exact hardware it will control (1)
  • The programmer controls exactly how memory/registers are used (1) so the code is efficient and needs little memory, which suits a device that has limited memory (1)
  • Each instruction maps to one machine code instruction (1) so the driver code is small enough to fit in the memory of the device (1)

Extra detail, such as naming the device the driver controls, is not needed to earn the marks.

Do not accept 'it is closer to machine code' on its own: it must be developed to show how this helps the driver, e.g. it can control the hardware directly.

Do not accept 'it is faster/quicker' with no link to the hardware/device, e.g. the device responds quickly.

Do not accept 'it is easier to learn', 'it is easier to debug' or 'it takes less time to write'.

Example answers and how they were marked
Full marks2/2

Low-level instructions can manipulate the hardware and memory directly (1) so the driver can control the specific device it was written for, such as a sound card (1).

Why: Point about direct control of hardware/memory (1) linked to controlling the specific device (1). The named device is extra detail and is not needed.

Some marks1/2

Low-level instructions can manipulate the hardware directly.

Why: Correct point (1) but no linked development saying how this helps the device driver.

No marks0/2

It is closer to machine code so it runs faster than a high-level language.

Why: 'Closer to machine code' is not developed into how this helps the driver, and 'runs faster' is not linked to the hardware/device, so no mark.

3Discuss6 marksPeripheral Management Swap Remove

A design studio buys 30 new graphics tablets for its artists. The tablets are a new model that the studio's computers have not used before. The studio's computers already have drivers installed for the older tablets the artists use. Each artist connects a tablet to a computer running the same operating system.

Discuss the role of device drivers when the new graphics tablets are connected to the studio's computers.

Your answer should include:

  • what a device driver is and how the operating system uses it
  • why each peripheral needs its own driver
  • what must be done before an artist can use a new tablet.
[6 marks]
Mark scheme

Indicative content

What a device driver is and how the operating system uses it

  • A device driver is a program that controls a peripheral device such as a graphics tablet by communicating with the operating system.
  • The driver translates instructions from the operating system into signals that the graphics tablet understands, and passes the artist's pen movements back to the operating system.
  • The operating system loads the driver into memory when the tablet is connected, so that it can then send data to the tablet and receive input from it.
  • Without a driver the operating system cannot control the tablet, so the tablet does not work.

Why each peripheral needs its own driver

  • Every make and model of peripheral uses its own set of commands, so a driver is written for that particular device.
  • The drivers already installed for the studio's older tablets do not work with the new model, even though both are graphics tablets.
  • An operating system includes drivers for many common devices, but it does not have one for a brand new model.
  • The correct driver means the pen movements are received by the computer in the form the drawing program expects.

What must be done before an artist can use a new tablet

  • The new tablet is supplied with its driver on a disc or as a download, and it must be installed on each computer.
  • The operating system may need to be updated so that it recognises the new model.
  • The driver must be enabled or selected for the tablet once it is installed.
  • Drivers are updated later to fix faults or to improve performance.
  • If the correct driver is not installed, the tablet does not work or some of its features are not available.

Additional guidance

  • Level 3 responses must explain why a driver is specific to a device and what must be done before an artist can use a new tablet, as well as describing what a driver is, all applied to the studio.
  • Responses that only state what a driver is, or that state a driver must be installed without explaining why the tablet needs its own driver, are limited to Level 1.
  • Accept 'software', 'program' or 'set of instructions' for a driver.
  • Do not accept a device driver described only as a cable or a physical connection.
  • Do not accept the claim that all drivers are already built into the operating system, or that one driver works for every graphics tablet.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)
Example answers and how they were marked
Full marks6/6

A device driver is software that lets the operating system communicate with a peripheral such as a graphics tablet. When an artist connects a tablet, the operating system loads the driver into memory so that it can send instructions to the tablet and receive the pen movements back. Each make and model of tablet has its own set of commands, so the drivers already installed for the studio's older tablets will not work with the new model, and the operating system will not have a driver built in for a brand new device. Because the tablets are a new model, the supplier provides a driver on a disc or as a download, and it must be installed on every computer before an artist can use a tablet. The studio may also need to update the operating system so that it recognises the new model, and install updated drivers later if faults are found. If the correct driver is not installed, the operating system cannot control the tablet, so the pen will not work.

Why: Level 3: defines a driver and explains the operating system's role in loading and using it (AO1), explains why the driver is specific to the make and model and applies this to the studio's older tablets (AO1/AO2), and gives the installation, operating system update, later driver updates and the consequence of a missing driver, all applied to the studio in a sustained line of reasoning.

Some marks2/6

A device driver is a program that controls the graphics tablet. The new tablets are a different model, so the computers may not have the right driver. The studio needs to install the driver that comes with the tablet before the artist can use it.

Why: Level 1 upper: a basic definition, a brief unexplained point that the new model may not have the right driver, and the point that the supplied driver must be installed. Nothing explains why a driver is specific to a device (different commands, make and model) or how the operating system uses the driver, so the points stay independent with little linkage and are limited to Level 1 by the guidance.

Some marks1/6

A device driver is a program that makes the tablet work. All drivers are already built into the operating system, so the studio does not need to install anything for the new tablets.

Why: 1 mark: a basic statement that a driver is a program that controls the device. The claim that all drivers are already built in is a misconception named in the do-not-accept guidance, so it gains no credit for what must happen before the new tablets can be used.

4Discuss6 marksLow and High Level Languages Swap Remove

A company is developing the firmware for a robotic vacuum cleaner. The firmware must read the distance sensors and control the motors. The vacuum cleaner has a small amount of memory.

Discuss the characteristics of a low-level programming language that make it suitable for writing the firmware.

Your answer should include:

  • control of the hardware
  • the efficiency of the code
  • the link between the language and the processor.
[6 marks]
Mark scheme

Indicative content

Control of the hardware

  • Low-level languages can read and write the contents of registers and memory addresses directly, so the firmware can take the values from the distance sensors without calling a library routine.
  • Assembly language instructions can read from and write to specific input/output ports on the vacuum cleaner's processor, so the motors can be switched on and off directly.
  • The programmer decides exactly which processor operations are carried out and in which order, which matters when the vacuum must reverse away from a step or an obstacle.
  • A low-level language puts nothing between the program and the hardware, so the programmer can control the hardware of the vacuum cleaner precisely.

Efficiency of the code

  • Assembly language code can be hand-optimised instruction by instruction, so the code that checks a sensor is as short as possible.
  • The programmer can choose which registers hold values that are used again and again, which cuts down the number of memory accesses the firmware needs.
  • A hand-written low-level program can be made compact, so it is more likely to fit in the small amount of memory the vacuum cleaner has.
  • Because each instruction does one defined job, the time taken to react to a sensor reading is predictable, which suits firmware that must not overrun.

Link between the language and the processor

  • Low-level languages are processor-specific, so the instructions used are those of the exact processor in the vacuum cleaner rather than general statements that need translating.
  • Each assembly language instruction maps to one machine code instruction, so the programmer knows precisely which processor operation will be carried out by each line of code.
  • An assembler turns each mnemonic into its machine code equivalent, so the machine code running on the vacuum cleaner's processor is exactly what the programmer wrote.
  • Code written for a different processor would have to be rewritten, which is acceptable here because the vacuum cleaner always uses the same processor.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)

Within Level 1, award 1 mark for a single basic point and 2 marks for two or more independent basic points; Level 2 requires the points to be linked to the vacuum cleaner; Level 3 requires both control of the hardware and efficiency of the code, and a few concise, linked sentences can reach Level 3, so extra length is not required.

Accept registers, memory addresses, input/output ports, machine code and mnemonics as ways of describing access to the hardware, and accept 'a low-level language is faster' as a basic point on its own. Do not award 'binary is a low-level language' (machine code is written in binary, but binary is not a language), or characteristics of high-level languages such as being easy to read or portable, as characteristics of a low-level language.

Example answers and how they were marked
Full marks6/6

A low-level language can read and write to registers and to input/output ports directly, so the firmware can take the distance sensor readings and switch the motors without needing library routines. It can be hand-optimised instruction by instruction, so the code that checks a sensor is short and the time it takes is predictable, and a compact program is more likely to fit in the vacuum cleaner's small memory. The language is processor-specific and each assembly instruction maps to one machine code instruction, so the programmer knows exactly which operation the vacuum's processor will carry out, and the assembled machine code is exactly what they wrote.

Why: Covers all three bullets: direct control of registers and ports applied to the sensors and motors, hand-optimised compact code with predictable timing applied to the small memory, and the one-to-one link to the processor's own instruction set. Linked and applied throughout, so Level 3.

Some marks2/6

A low-level language can control the hardware directly. It can read the sensors and control the motors. It is also faster than a high-level language, so the vacuum responds quickly. This is useful because it has little memory.

Why: Three basic, independent points: direct control of the hardware applied to the sensors and motors, faster execution, and suitability for limited memory. They are asserted without development (no registers, ports or predictable timing) and the link between the language and the processor is missing, so Level 1, two or more basic points (2).

Some marks1/6

A low-level language is written in binary, so the computer can understand it directly. It is faster than a high-level language.

Why: 'Faster than a high-level language' is a creditworthy basic point (1). 'Written in binary' is not awarded, as binary itself is not a language and the do-not-award rule applies. Only one undeveloped point with no application to the vacuum cleaner, so Level 1, single basic point (1).

Questions by topic

More ways to revise Edexcel GCSE Computer Science (1CP2)

Teachers: build a paper, print it with the mark schemes at the end, and sign your school up to set your classes activities on every topic.

Fetch Decode Explain isn't affiliated with or endorsed by Pearson Edexcel.