Learn in your language
Skip to content
A Level · Cambridge (CIE) · 9618

16 Operating systems and translation software

Explain resource management and process scheduling, then evaluate how translators and interpreters execute programs.

Section Paper 3 · Advanced Theory · Sections 13–20

Cambridge International AS & A Level Computer Science 9618 · 2027–2029 · Version 2 · 16

Mapped to Cambridge International AS & A Level Computer Science 9618, 2027–2029 Version 2. These original lessons and self-checks are independent study support; they are not Cambridge papers, official marks or grades. The course does not yet provide a timed four-paper simulation or a locked-down Paper 4 programming environment.

Before you begin

  • Use the 2027–2029 syllabus for your exam year. AS candidates study Sections 1–12; A Level candidates study Sections 1–20. Paper 4 uses a programming language chosen from Python, Java or Visual Basic in console mode.

Work on paper. Try each question before revealing help, and explain why your method works.

Quick readiness check

What happens to a process waiting for disk input?

What you will learn

  • Explain the key representations, structures or processes in this syllabus section
  • Apply the method to a new computer-science example
  • Justify a design choice and check its limits

The OS abstracts hardware and manages processes

An OS provides abstractions such as files and processes so applications do not need to control every hardware detail. It allocates processor time, memory and I/O resources and enforces access controls.

A process may be running, ready or blocked. The OS schedules ready processes and handles interrupts, including saving state and resuming work. Memory management tracks allocated regions, protects processes and may move data between main memory and secondary storage when virtual memory is used.

Translation choices affect development and execution

A compiler translates source into target code before execution; an interpreter executes source or an intermediate representation as it runs. An assembler translates low-level mnemonics. A linker resolves references among modules; a loader prepares a program in memory.

An interpreter can support interactive testing and portability when the runtime is available, but may add execution overhead. Compiled code can run efficiently as a separate executable, but it must be rebuilt for relevant target environments. These are typical trade-offs, not universal speed rules.

Pause and explain

What is a typical compiler/interpreter distinction?

Put the idea to work

Worked example

A running process requests data from disk. Describe a possible state change and what the scheduler can do.

Show the worked solution
  1. The process cannot continue until I/O completes, so it may enter the blocked state.
  2. The OS can schedule a different ready process.
  3. When the I/O completes, the blocked process can become ready again.

Answer It becomes blocked while waiting; another ready process can run, then it returns to ready after I/O.

Try a topic test

Choose Easy, Normal or Difficult. Save your answers and open worked review after finishing.

Test this topic →

From guided practice to a new situation

Write your answer and reasoning first. Use a hint only if you are stuck. The model solution is for self-checking; your written work is not automatically marked.

1 · Guided

A CPU-bound task is running when a higher-priority I/O process becomes ready. Explain how pre-emptive scheduling can change which task uses the CPU.

Give me a hint

Consider interrupting and saving the current task's state.

Compare my reasoning
  1. The OS receives a scheduling event, such as an interrupt or time slice expiry.
  2. It can save the running process state and select the higher-priority ready process.
  3. The previous process can return to the ready queue and resume later.

The OS can pre-empt, save state and run the higher-priority ready process.

Look for these in your work

  • Scheduling trigger noted
  • State saved
  • Process resumes later
2 · Independent

A school wants a program to run on several operating systems without distributing a separate executable for each. Compare a compiled and interpreted approach.

Give me a hint

Include target executables and runtime availability.

Compare my reasoning
  1. Compiled native code is generally built for a target environment.
  2. An interpreted or bytecode approach can run across environments with a compatible interpreter or runtime.
  3. Portability depends on available runtimes and implementation details.

A runtime-based approach may improve portability, provided each target has a compatible runtime; compilation may require target-specific builds.

Look for these in your work

  • Build target considered
  • Runtime requirement stated
  • Trade-off balanced
3 · Transfer

A process repeatedly waits for slow input. Explain how blocked-state scheduling can improve processor use without making the input faster.

Give me a hint

Separate resource speed from the CPU's ability to do other work.

Compare my reasoning
  1. The process becomes blocked while waiting.
  2. The scheduler runs another ready process during that wait.
  3. When input arrives, the waiting process can be made ready again.

The OS keeps the CPU productive by running another ready process while the first waits.

Look for these in your work

  • Blocked state applied
  • Other work scheduled
  • Input delay limitation recognised

Common mistakes

  • Treating a blocked process as ready to use the processor.
  • Saying an interpreter never translates code.
  • Assuming virtual memory increases physical RAM.
Recall without your notes

What can you explain now?

Which state describes a process waiting for an event such as I/O completion?

Compare with the explanation

Blocked

A blocked process cannot currently make progress until the event occurs.

After trying it yourself, choose your next review. This is your self-assessment.

Your review choice appears on Today. Sign in to sync it across devices.

Make it stick

How does an OS use process states and resource management, and how do translation strategies change the deployment trade-off?

If you needed the solution, close it and solve the problem again from a blank page. A correct answer is stronger when you can explain the reason for each step.

Keep learning Computer Science

Course scope and assessment

This pathway maps the 2026 Version 2 and 2027–2029 Version 2 syllabuses, which Cambridge says have no significant changes affecting teaching. It has original teaching and guided, independent and transfer practice for all 20 syllabus sections, with topic links to the official section headings. It is mapped teaching, not proof of exam readiness or an official Cambridge grade. Paper 4 requires complete programs and testing evidence in a programming environment; the current course offers explained code and algorithm practice but does not yet provide a locked-down timed programming-paper environment, full four-paper mocks or human subject-teacher review.

StudyForA · Learn with understanding

Original teaching content and links to official sources. Check your exam year and qualification before using a resource.