This set has ten original questions, ordered from easier to harder, covering all five lessons in software and systems. Questions 1 to 4 test the basic ideas, 5 to 8 apply them to scenarios, and 9 and 10 mix several skills.
Answer on paper in full sentences, as you would in an exam.
Open the answer only after you have written yours. Then use the routing list at the end for every question you missed. For the two trace questions, you can check your work in the restricted pseudocode trace trainer or the safe Python reasoning sandbox.
Questions
1. Name two functions of an operating system.
Show answer
Any two of: managing files, managing memory, multitasking, managing peripherals using drivers, providing a user interface, handling interrupts, security. For example: the OS allocates memory to each running program, and it manages files by storing and organising them on disk.
2. Classify each as application software, operating system function or utility: a video editor, memory management, a backup tool.
Show answer
Video editor: application software. Memory management: operating system function. Backup tool: utility.
3. State what a compiler does and what an interpreter does.
Show answer
A compiler translates the whole program into machine code before it is run, producing an executable file. An interpreter translates and runs the program one statement at a time.
4. What is an interrupt?
Show answer
A signal to the processor that something needs attention. It may come from hardware, such as a key press, or from software. The processor pauses its program, deals with the signal and then resumes.
5. A developer finds that her program stops with an error message after displaying three lines of output. Which type of translator was used, and how can you tell?
Show answer
An interpreter. It runs statements one at a time, so the first three lines had already run before the faulty statement was reached. A compiler would have reported the error before any output appeared.
6. A music studio wants to give customers a program without revealing the source code. Which translator suits and why?
Show answer
A compiler. It produces an executable file of machine code, so the studio can supply that file without supplying the source code. The executable also runs without the compiler being installed.
7. Trace this fragment where an interrupt arrives while instruction I2 executes. Give the final values of X and Y.
I1: X ← 4
I2: Y ← X + 5
I3: X ← Y * 2
Show answer
I1: X = 4. I2: Y = 4 + 5 = 9. The interrupt check follows I2, so the processor saves the program counter and registers, runs the interrupt service routine, and then restores its state. I3: X = 9 × 2 = 18.
Final values: X = 18, Y = 9. The interrupt does not change the result, because the state was saved and restored. Check: 4 + 5 = 9 and 9 × 2 = 18.
8. A school computer with a magnetic hard disk drive takes a long time to open large files, although it has plenty of free space. Name a suitable utility and explain how it helps.
Show answer
Disk defragmentation. Files that are split into pieces stored in different places are rearranged so each file is stored together. The read head then moves less, so files open faster. Free space is not the problem, so deleting files would not be the right fix.
9. A 500 MB video is compressed to 350 MB. Calculate the percentage reduction in size, and state whether compression also protects the file from being lost.
Show answer
Saving = 500 − 350 = 150 MB. 150 ÷ 500 = 0.3, so the reduction is 30%. Check: 30% of 500 = 150.
Compression does not protect against loss, because there is still only one copy. A backup is needed for that.
10. A manufacturer builds an embedded system into a smart door lock. Discuss two constraints that affect its design, and one disadvantage of using an embedded system here.
Show answer
Constraint 1, power: the lock may run on batteries, so the processor and program must use little electricity, or the lock will fail when the batteries run flat.
Constraint 2, memory and cost: the lock has a fixed job (check the code or card and move the bolt), so it needs only a small, cheap processor and little memory.
Disadvantage: the program is stored in the device, so adding new features or fixing faults can be difficult without replacing parts or the whole lock. It also cannot run other programs.
If you got these wrong
- Questions 1 and 2: you mixed up the OS, applications and utilities. Review operating system and application roles and identify a utility function.
- Questions 3, 5 and 6: the translators were reversed or described loosely. Review interpreter and compiler behaviour.
- Questions 4 and 7: the order of steps was missing or the saved state was left out. Review explain an interrupt using a scenario.
- Questions 8 and 9: you picked the wrong tool or slipped in the percentage. Review identify a utility function.
- Question 10: the constraints were listed without applying them to the device. Review discuss an embedded system with its constraints.
Note each error type in the mistake log and retest queue, then retry a fresh question a few days later.
Work like this goes faster with a teacher reading your answers. See our online one-to-one Computer Science tuition for how that works.