1.2.1 Systems Software Flashcards
1
Q
What is the purpose of an operating system?
A
- Provide an interface between the user and computer’s hardware.
- Handles memory management, ISRs, processor scheduling and I/O.
2
Q
How do paging and segmentation function, and why is memory management needed?
A
- Paging splits memory physically into identical size pages, ready to be moved to and from storage.
- Segmentation splits memory logically, into different size segments based on program flow.
- Management allows programs larger than memory to run, protects programs from overwriting each other, and maps logical to physical memory addresses.
3
Q
What is the purpose of virtual memory?
A
- A section of secondary storage where less used programs are sent to when memory becomes full.
- Transfer between storage and memory is very slow.
4
Q
What are the steps of an interrupt service routine (ISR)?
A
- At the end of an FDE cycle, check interrupt register.
- If there is one and it is of a higher priority than the current job, dump registers into a memory stack.
- A flag is set and an ISR is loaded into memory.
- Once the interrupt is serviced, registers emptied from stack LIFO.
- Continue previous job (repeat cycle).
5
Q
What are the types of scheduling algorithm?
A
- Pre-emptive algorithms actively start and stop jobs (MLFQ, Shortest remaining time, Round Robin).
- Non-pre-emptive algorithms leave jobs to finish once they have begun (First come first served, shortest job first).
6
Q
How do the round robin and multilevel feedback queue scheduling algorithms work?
A
- Round robin gives each job an equal time slice and cycles through each until complete. All jobs are tended to, but long jobs will take some time.
- Multilevel feedback queues have several queues sorted by priority. Far better performance, but much harder to implement.
7
Q
How do the first come first serve, shortest job first, and least remaining time scheduling algorithms work?
A
- First come first serve tends to jobs in chronological order. It is very simple to implement but very inefficient to the point of starvation.
- Shortest job first handles jobs based on their overall size, reducing wait times, but requires calculations of job sizes and cannot prioritise.
- Least remaining time handles jobs based on how long is left. Increases throughput but has no regard for priority and can cause starvation.
8
Q
What are the types of operating system?
A
- Distributed systems run across several computers, splitting processing load.
- Embedded systems are made for small, specific tasks. Not powerful but efficient to run.
- Multitasking systems use time slices to give the illusion of running several programs at a time.
- Multi-user systems have several users with their own data and settings on a single device.
- Real-Time systems have a guaranteed response time for use in time-critical scenarios.
9
Q
What is the purpose of the BIOS?
A
- Performs Power-On-Self-Tests (POSTs) to ensure all hardware functions correctly (CPU clock, memory, processor).
- Tests any external memory devices to ensure function.
- Uses the bootstrap to load the OS into memory from storage.
10
Q
What is the purpose of device drivers?
A
- Programs provided by the OS that allow hardware to interact with it through requests, so the processor can handle the input.
- Specific to the computer’s architecture and OS.
11
Q
What is the purpose of a virtual machine?
A
- A software implementation of a computer system within another.
- Uses intermediate code (halfway between machine and object) that is not hardware-specific, and translators, to emulate other devices and their programs.
- Can be used as security from malware (cannot escape VM) or for emulating incompatible software.