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.
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
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).
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.
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.