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 marksMemory Management Swap Remove

The operating system is held in main memory while the computer is running.

Describe how the operating system stops a running program from overwriting memory that is not its own.

[2 marks]
Mark scheme

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

  • It keeps a record of which memory addresses/areas belong to each program and to the operating system (1) so it knows which addresses a program is allowed to use (1)
  • Each program is given its own area of main memory (1) so a program cannot write to the addresses used by another program or by the operating system (1)
  • The memory used by the operating system is marked as protected/reserved (1) so a program that tries to write to it is blocked/causes an error (1)
  • The address a program writes to is checked against the record of its allocated area (1) and the write is stopped if the address is outside that area (1)

Allow the memory being protected to be that of the operating system or of another program.

For both marks, the expansion must follow/associate with the statement.

Do not award generic answers such as 'the operating system manages memory' or 'the operating system keeps track of memory'.

Do not award responses about stopping programs using too much memory or allocating memory, as these are not about protecting memory being overwritten.

Do not award responses about virtual memory, paging or moving processes to secondary storage.

Do not award responses about firewalls, antivirus software or passwords.

Example answers and how they were marked
Full marks2/2

The operating system gives each program its own area of main memory so that a program cannot write to the addresses used by another program or by the operating system.

Why: Each program is given its own area of main memory (1) linked to it not being able to write to the addresses used by another program or the operating system (1).

Some marks1/2

The operating system gives each program its own area of main memory.

Why: Each program is given its own area of main memory (1), but there is no linked development saying how this stops a program overwriting memory that is not its own.

No marks0/2

The operating system stops a program overwriting memory by moving it into virtual memory when it uses too much.

Why: This describes virtual memory and limiting how much memory a program uses, not protecting memory from being overwritten, so neither bullet applies and the Do not award lines rule it out.

2Discuss6 marksUser Management Swap Remove

A school library has 24 computers that are shared by students and teachers throughout the day. Each computer runs an operating system. The school wants users' work to be kept private and the computers to be used only by authorised people.

Discuss how the operating system's user management features can be used to share the computers securely.

Your answer should include:

  • user accounts
  • authentication
  • the benefits for the school.
[6 marks]
Mark scheme

Indicative content

User accounts

  • Each student and teacher should have their own user account, so the operating system can identify the person who is logged on.
  • The operating system keeps a record of all valid users on the computer, so unknown users are not allowed to log in.
  • A separate home area or folder can be created for each account, so a student's saved work is kept apart from other users' work.
  • An account can be disabled when a student leaves the school, so they can no longer access the computers.

Authentication

  • A username and password can be required at login, so only users with the correct details can use the computer.
  • The operating system checks the entered password against the stored password for that account before allowing access.
  • Users should be encouraged to choose a strong password, which makes it harder for someone else to guess and log in.
  • The operating system can lock an account after several failed login attempts, which reduces the chance of someone trying passwords repeatedly.

Benefits for the school

  • Many students can share the same computers because each person's files are kept separate.
  • Work is less likely to be deleted or changed by another student, because users only see their own files.
  • The school can see which account was used on a computer, so misuse can be traced to a user.
  • Teachers can be confident that only authorised people can use the library computers.
  • The school does not need a separate computer for every student, so it saves money.

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 user accounts and authentication, and apply them to the school library.

Do not accept general operating system functions such as file management or process management unless they are explicitly linked to managing users.

Example answers and how they were marked
Full marks6/6

Each student and teacher should have their own user account with a username and password. When someone logs in, the operating system checks the password against the one stored for that account, so only authorised people can use the computer. Each account can have its own home folder, so a student's work is kept private and another student cannot open or delete it. If a student leaves the school, their account can be disabled so they cannot log in again. This lets the school share a smaller number of computers safely, as each user's work stays separate and any misuse can be traced to the logged-in account.

Why: Level 3. It explains user accounts, authentication and benefits, with sustained links to sharing computers in the school library.

Some marks4/6

Every user should have a username and password. The operating system checks the password so that people who are not allowed cannot log in. Each user should also have their own area to save files so they do not delete other people's work.

Why: Level 2. Basic accounts and authentication points are made and linked, but the benefits to the school are only briefly applied and not developed.

No marks0/6

The operating system manages the users by looking after the files in folders and by making sure the printer works for everyone. It also keeps the computer running quickly when lots of students use it.

Why: Level 0. These are general operating system functions such as file management and peripheral management, not user management, so no creditworthy point is made.

3Discuss6 marksLow and High Level Languages Swap Remove

A school computing club is creating a quiz game. The game will be written by students who are new to programming. It will store the names and scores of players in a list. The club wants to choose a language that helps the students finish the game quickly and with few errors.

Discuss the characteristics of a high-level programming language that make it suitable for writing the quiz game.

Your answer should include:

  • how easy the language is to learn, use and debug
  • the data structures it provides for storing the players' names and scores
  • the built-in functions and library routines it provides.
[6 marks]
Mark scheme

Indicative content

Ease of learning, use and debug

  • High-level language statements are written in English-like words and mathematical symbols, so the students can read the quiz game code and understand what each line does.
  • The language is easier to learn than a low-level language, so students who are new to programming can start writing the quiz game quickly.
  • Errors are easier to find and fix because the code is readable; for example, the students can check a line that updates a score against the rule they intended.
  • The students do not need to know how the processor carries out each statement, so they can concentrate on the quiz questions and rules.

Data structures

  • High-level languages provide lists or arrays, so the names and scores of all the players can be stored under one name and processed with a loop.
  • A record can store a player's name and score as one item; in some languages a dictionary or class can be used instead, which keeps related data together.
  • Using a data structure makes the code shorter and easier to understand than separate variables for every player's name and score.

Built-in functions and library routines

  • High-level languages provide built-in functions such as print and input, so the students can display a question and read a player's answer without writing the underlying code.
  • Library routines such as a random number generator can be used to choose quiz questions, saving the students time.
  • String-handling routines can check or compare a player's answer, so the students do not have to write these routines themselves.
  • Reusing tested routines reduces the amount of code the students write and can reduce errors in the quiz game.

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: Credit only points applied to the quiz game and the students; comparison with low-level languages is not required, but a correct contrast may support a point if it is applied. Do not award generic claims such as 'high-level programs run faster', 'work on any computer' or 'students do not need to learn syntax' unless they are justified for the quiz game.

Level 3 responses must cover all three bullet areas with linked reasoning that explains why the characteristic helps the students finish the game quickly with few errors; an answer covering only two bullet areas is limited to Level 2. Do not award the idea that high-level code is already machine code or is understood directly by the processor. Accept dictionaries or classes as equivalents of records.

Example answers and how they were marked
Full marks6/6

A high-level language is suitable for the quiz game because its statements use English-like words and mathematical symbols, so students who are new to programming can read the code and see what each part of the quiz does. This also makes the game easier to debug, because the students can compare a line that updates a player's score with the rule they intended. The language gives the students lists or arrays, so all the players' names and scores can be stored under one name, and a loop can then go through the list to display the results. A record, or a dictionary in Python, can keep one player's name and score together, which is clearer than using separate variables. The language also provides built-in functions and library routines such as input, print and a random number generator, so the students do not have to write these from scratch. They can use input to ask for a player's name and print to show the score, and a random number routine to choose a question. This lets the club spend its time on the quiz questions and rules, so the students can finish the game quickly with fewer errors.

Why: Covers all three bullet areas with linked reasoning: readable English-like statements and debugging, lists/records for names and scores, and built-in input/print/random routines, all applied to helping new students finish quickly with fewer errors. This meets Level 3.

Some marks3/6

High-level languages use English words, so the students can understand the code for the quiz game and find mistakes more easily. They provide lists or arrays, so the players' names and scores can be stored together, and a loop can be used to display the scores. This makes the game easier to write for students who are new to programming.

Why: Level 2, 3 marks: covers ease of learning/use and data structures with some application to the quiz game, but gives no built-in facilities and limited development of why this helps the club finish quickly, so it is not Level 3.

No marks0/6

High-level code is already machine code, so the computer can run the quiz game without a translator. The students do not need to learn any syntax.

Why: Contains the machine-code misconception and a generic claim that the scheme does not credit; no creditworthy point is made, so Level 0.

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.