System Software: Computer Science 9618 (Cambridge International AS & A Level)
Syllabus 5.1, 5.2 · Strand 4 System Software and Security
- Questions
- 10
- Total marks
- 52
- Tier mix
- 10 Core
0 of 10 questions completed
Syllabus coverage
- 5.1 7 questions completed
- 5.2 3 questions completed
Application programs never talk to hardware directly. An operating system sits between them, and this topic (syllabus ref 5.1–5.2) covers what that layer actually does. Its management tasks split cleanly into memory, file, security and hardware/peripheral management, and it ships with utility software such as a disk formatter, virus checker, defragmentation tool and backup software to keep the system healthy. A related but separate idea is program libraries: pre-written, tested code (including Dynamic Link Library files) that a developer reuses rather than rewriting from scratch.
Getting a program from source code to something a processor can run needs a language translator. An assembler handles assembly language; a compiler translates a whole high-level-language program into machine code before it runs; an interpreter translates and executes one statement at a time, and some languages (Java is a common example) are partially compiled and partially interpreted, each approach trades translation time against execution speed differently. A modern Integrated Development Environment (IDE) wraps this with coding support (context-sensitive prompts), initial error detection (dynamic syntax checks), presentation tools (prettyprint, code folding) and debugging aids (breakpoints, single-stepping).
The exam-style problems below are original, each followed by a full worked solution.
Question 1
A user's hard disk drive has been used for several years to save, edit and delete many different files. As a result, the data belonging to some files is no longer stored in one continuous section of the disk. Instead, each of these files has been split into several smaller pieces, scattered across different, non-continuous areas of the disk.
Which utility program is designed to fix this problem, by physically moving data around the disk so that each file's data is stored together again, in one continuous (contiguous) block?
Question 2
Which one of the following is NOT a management function carried out by a computer's operating system?
Question 3
Riverbank College's library has a single shared computer that runs a multitasking operating system.
One afternoon, a student called Elif logs in and opens a web browser, a word processor and a spreadsheet program all at the same time, switching between them as she researches and writes a report. While she is working, another student, Tom, sends a document to print on the library's single shared laser printer; less than a minute later, Elif also sends a different document to the same printer.
(a) Explain how the operating system's management of memory allows Elif's web browser, word processor and spreadsheet to all be open and running at the same time, without the data belonging to one program being corrupted by another program. [2]
(b) The computer's processor can only actually execute instructions from one program at any single instant. Explain how the operating system's management of processes still allows Elif's three open programs to all appear to be running continuously at the same time. [2]
(c) Tom's and Elif's documents are sent to the same printer only a minute apart. Explain how the operating system's management of this peripheral device makes sure both documents are printed in full, rather than being merged together or one of them lost. [2]
(d) State one way in which the operating system's user interface hides the technical, hardware-level detail of the library computer from Elif and Tom as they use it. [2]
Question 4
Jamal shares a family laptop with his younger sister Aisha. Each of them logs in to their own separate user account, protected by its own password. Jamal keeps his growing collection of coursework documents organised inside several folders on the laptop's hard disk, but he has never made a backup copy of this coursework anywhere else.
Jamal is also learning to write simple programs in a high-level language. For one task, he calls a ready-made routine from a graphics library to draw a circle on the screen, rather than writing his own code to do this; the library routine is supplied to him as a Dynamic Link Library (DLL) file.
(a) Explain how the operating system's file management lets Jamal organise his coursework documents into folders on the laptop's hard disk, and later locate a particular file again. [2]
(b) Explain how the operating system's management of user accounts prevents Aisha from opening or changing Jamal's coursework documents when she is logged in under her own account. [2]
(c) State a utility program Jamal should use regularly to protect against permanently losing his coursework if the laptop's hard disk were to fail, and describe what it does. [2]
(d) State what is meant by a program library, and explain one reason why Jamal calls a ready-made routine from a graphics library, supplied as a DLL, instead of writing his own code to draw a circle. [2]
Question 5
Priya is writing a new game in a high-level programming language. While she is still developing and testing the game, she runs her code through an interpreter, so that she can try out small changes immediately. Once the game is finished, she instead uses a compiler to produce a final version that she can sell to customers.
A separate, older utility program used elsewhere in the same games studio was originally written directly in assembly language, and needs an assembler to prepare it for the processor.
(a) State what an assembler translates a program from, and what it translates that program into. [1]
(b) Describe how a compiler translates Priya's finished game before it can be sold to customers. [2]
(c) Describe how an interpreter translates and runs Priya's code while she is still testing small changes during development. [2]
(d) State three differences between using a compiler and using an interpreter to run a program, and use them to explain why a compiler, rather than an interpreter, is the better choice for the final version of the game that Priya sells to customers. [4]
Question 6
Aiden has just bought a brand-new external hard disk drive. It has never been used before and currently has no file system on it at all, so his computer's operating system cannot yet use it to store any files.
Which utility program must Aiden run on the new disk before he can start saving files onto it?
Question 7
A small design studio buys a new graphics tablet, a peripheral device that lets an artist draw directly onto the screen instead of using a mouse. When the tablet is first connected to a computer, the operating system cannot yet control it correctly, until a particular piece of software for that specific tablet has been installed.
(a) State the name given to this piece of software. [1]
(b) Explain why the operating system cannot simply send the same, generic commands directly to every different peripheral device without this software installed. [2]
(c) A different employee at the studio owns a completely different make of graphics tablet, used on their own computer. Explain why the software installed for the studio's first tablet would not work correctly for controlling this different make of tablet. [2]
(d) Explain one way the operating system's hardware and peripheral management makes it easier for application software, such as a drawing program, to work with many different makes of graphics tablet. [2]
Question 8
Bilal receives an email from an address he does not recognise, with a file attached that he was not expecting. Before opening the attachment, he lets his antivirus utility scan the file first.
(a) Describe how an antivirus utility can identify that a downloaded file contains malware. [2]
(b) State two possible actions the antivirus utility might take if it identifies Bilal's downloaded file as infected. [2]
(c) Explain why an antivirus utility's database of virus signatures needs to be updated regularly, rather than being installed once and left unchanged. [2]
(d) State one type of file, other than a file downloaded as an email attachment, that an antivirus utility should also regularly scan, and explain why scanning only email attachments would not fully protect Bilal's computer. [2]
Question 9
Some high-level programming languages, such as Java, are described as "partially compiled and partially interpreted", rather than being purely compiled or purely interpreted.
Which of the following best describes what actually happens when a program written in such a language is translated and run?
Question 10
Farah is a first-year student teaching herself to program, using an Integrated Development Environment (IDE) rather than typing code straight into a plain text editor.
(a) Farah starts typing the name of a built-in function, and the IDE immediately shows her a list of matching function names, along with the parameters each one expects, before she has finished typing. State the name of this IDE feature, and explain how it helps Farah while she is writing code. [2]
(b) Before Farah even tries to run her program, the IDE underlines one line of her code in red and shows a message describing what is wrong with it. State which broad category of IDE feature this is an example of, and explain what it has detected. [2]
(c) Farah's finished code is messy and inconsistently indented. State two separate IDE presentation features that could automatically improve how her code looks, and briefly describe what each one does. [2]
(d) Farah's program now runs without any error message, but it produces the wrong output. Describe how she could use two IDE debugging features together, breakpoints and single-stepping, to find out exactly where in her code the problem first occurs. [2]