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

3 questions · 14 marks

Pick again
Print
1Describe2 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.

2Discuss6 marksUtility Software Swap Remove

A college has a room of older desktop computers. Each computer has a magnetic hard disk that is almost full. Staff have noticed that files on these computers take a long time to open because the disks have become fragmented.

Discuss the use of disk defragmentation software on these computers.

Your answer should include:

  • how files become fragmented
  • what defragmentation software does
  • the benefits and drawbacks of running it.
[6 marks]
Mark scheme

Indicative content

How files become fragmented

  • A file is saved into free blocks on the disk, so as files are deleted and new ones saved, one file can end up split across blocks in different places.
  • Large files are more likely to become fragmented because they may not fit into one free space.
  • The more the disks are used, the more fragmented they become, so the read/write head has to move to more locations to read all the parts of a file.
  • Fragmentation is the reason that files on the college's computers take a long time to open.

What defragmentation software does

  • It reorganises the blocks of each file so that they are stored together (contiguously) on the disk.
  • It collects the free space into one block so that new files are written in one piece and are less likely to be fragmented.
  • It is a housekeeping utility that is often supplied with the operating system, and it reorganises data that is already on the disk.
  • It does not change the contents of any file, it only changes where the blocks of the file are stored.

Benefits of running it

  • Files and programs open faster because the read/write head makes fewer movements, so the older computers feel quicker without the college buying new hardware.
  • Free space in one block means new files are written in one piece, so the improvement lasts for a while.
  • Running it may mean the college can keep using the older computers for longer instead of replacing them.

Drawbacks of running it

  • It can take a long time to run, so it should be scheduled for when the room is not in use, such as overnight or at weekends.
  • It causes a lot of disk activity, so running it too often puts unnecessary strain on the disks.
  • It does not free up any space, as no files are deleted, so the disks will still be almost full.
  • It only reorganises files that are intact, so it cannot recover a corrupted file, and a backup is still needed.

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)

Level 3 responses must cover both how files become fragmented and what defragmentation software does, with at least one benefit or drawback applied to the college's computers. An answer that only states what the software does and one benefit, with no explanation of how files became fragmented and no drawback, is Level 1 (2 marks).

Do not accept: defragmentation software compresses files, frees up storage space, deletes unused files, repairs corrupted files, or speeds up the processor or internet connection.

Example answers and how they were marked
Full marks6/6

As files are deleted and new ones saved, a file can be split into blocks in different places on the disk, especially a large file that will not fit into one free space. This means the read/write head has to move to more locations to read the file, which is why the files on these computers are slow to open. Defragmentation software reorganises the blocks so that each file is stored together, and it moves the free space into one block, so new files are written in one piece. Staff would find that files and programs open faster because the head makes fewer movements, so the older computers feel quicker without the college buying new ones. It can take a long time, so the college should schedule it overnight or at the weekend when the room is empty, and it should not be run too often because of the strain on the disks. It will not free up space, as nothing is deleted, so the disks will still be almost full and a backup is still needed.

Why: Level 3: fragmentation, the extra head movements and what the software does are explained accurately (AO1) and applied to the college's own computers, with a benefit and drawbacks including a sensible schedule (AO2).

Some marks2/6

Defragmentation software rearranges the files so that the parts of each file are stored together. This means files open faster, which will help on these computers. It should be run regularly.

Why: Level 1: two basic, independent points, namely that the software stores the parts of a file together and that files then open faster, with little linkage and no explanation of how the files became fragmented and no drawback, so Level 2 is not reached.

Some marks1/6

Defragmentation software compresses the files so they take up less space on the nearly full disks. If the parts of a file are stored together it opens faster.

Why: Level 1: only the basic point that storing the parts of a file together makes it open faster is creditworthy; the claim that defragmentation compresses files is a misconception on the do-not-accept line and is not credited.

3Discuss6 marksLow and High Level Languages Swap Remove

A software company is writing a new program that will be sold to users who have different types of computer. The program does not need to control the hardware of the computer directly. The company must decide whether to write the program in a high-level language or a low-level language.

Discuss whether the company should use a high-level language or a low-level language to write this program.

Your answer should consider:

  • machine independence
  • processor specificity
  • how the code is translated for each type of computer.
[6 marks]
Mark scheme

Indicative content

Machine independence

  • A high-level language is machine independent, so the same source code can be run on different types of computer with few or no changes.
  • The company can write the program once and sell it to users with different computers, without rewriting the code for each type of computer.
  • Only one version of the program needs to be written and maintained, so development takes the company less time.

Processor specificity

  • A low-level language is processor-specific, so a program written for one processor will not run on a different processor without being rewritten.
  • Assembly language instructions depend on the instruction set of the particular processor, so the company would need a separate version of the program for each type of computer.
  • Writing a separate low-level version for every type of computer would take the company much longer than writing one high-level program.
  • Low-level code gives direct control of the hardware of one processor, so it is better suited to device drivers than to a program that must run on many different computers.

Translation

  • High-level source code is translated for each type of computer by a compiler or an interpreter, so one version of the source code is enough for all the users.
  • Assembly language is translated into machine code by an assembler, and the assembler produces machine code for one specific processor only.
  • Machine code is already in a form that one particular processor can execute directly, but the same machine code will not run on a different processor.
  • Each high-level statement translates into several machine code instructions, so the programmer does not need to know the instruction set of the 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)

Additional guidance

  • Level 3 responses must cover both high-level machine independence and low-level processor specificity, with the effect on the company's decision.
  • Do not award low-level language, assembly language or machine code as portable, or 'high-level languages are written in English/like English' as a reason for machine independence.
Example answers and how they were marked
Full marks6/6

A high-level language is machine independent, so the company can write the program once and it will run on different types of computer with few or no changes. A different compiler is used for each type of processor to translate that same source code into the machine code for that computer, so the company can sell one program to all of its users. A low-level language is processor-specific, so a program written in assembly for one processor will not run on a different one. The assembler produces machine code for one particular instruction set, so the company would need to write a separate version for each type of computer, which would take much longer. As the program does not need to control the hardware directly, the company should use a high-level language.

Why: Develops high-level machine independence with the compiler translating for each processor, and low-level processor specificity with the assembler producing machine code for one instruction set, both applied to the company's decision, in a coherent and sustained argument: Level 3, 6 marks.

Some marks3/6

A high-level language is machine independent, so the company can write the program once. A different compiler is used for each type of computer to translate the code, so users with different computers can all run the same program. A low-level language is processor-specific, so it would not be as suitable for the company.

Why: Machine independence is linked to the compiler and applied to the users, but processor specificity is only asserted and no translation of low-level code is given, so the reasoning is not sustained: Level 2, 3 marks.

Some marks1/6

High-level languages are machine independent because they are written in English, so the company can sell the program to anyone. Low-level languages are machine code, so they can be translated to run on any type of computer.

Why: One basic point that high-level languages are machine independent, applied by selling to anyone (1). 'Written in English' is not a reason for machine independence and low-level code is not portable, so neither is credited: Level 1, 1 mark.

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.