1.2.1 - Systems Software Flashcards
What does ‘operating system’ mean?
The term operating system refers to a collection of programs that work together to provide an interface between the user and the computer.
Name four tasks that the operating system does.
Memory management (paging, segmentation, virtual memory); Resource management (scheduling); File management; Input / output management; Interrupt management; Utility software; Security; User interface.
Name the two types of memory management.
Paging and segmentation.
Describe the purpose of memory management.
Computer memory must be shared fairly between multiple programs and applications to ensure the computer doesn’t crash and each application runs properly.
Describe how paging works.
Paging is when memory is split up into equal size sections called pages.
Paging uses physical divisions of memory.
Describe how segmentation works.
Segmentation is the process of splitting up memory into segments of varying size.
Segmentation uses logical memory divisions.
What is meant by ‘virtual memory’?
Virtual memory uses a section of the hard drive to act as RAM when the RAM is insufficient.
What is the main issue with virtual memory?
Virtual memory can cause disk thrashing to occur. This is where the computer freezes as a result of pages being swapped too frequently between the hard disk and main memory.
What is an interrupt?
Interrupts are signals generated by software or hardware to indicate to the processor that a process needs attention.
How are interrupts stored?
Interrupts are stored in order of their priority.
Whose job is it to ensure interrupts are serviced fairly by the processor?
The operating system through interrupt service routines.
How does an interrupt service routine work?
- The processor checks the contents of the interrupt register at the end of each fetch-decode-execute cycle.
- If an interrupt exists that is a higher priority to the process being executed, the current contents of the registers in the CPU are transferred onto the stack.
- The processor then loads the correct interrupt service routine into RAM.
What happens when an ISR has finished?
The contents of the registers are taken from the stack and reloaded into the registers in the CPU. The processor then carries on as normal.
What is scheduling?
Scheduling ensures that all sections of the programs being run receive a fair amount of processing time.
Name the five scheduling algorithms.
Round robin, first come first served, shortest job first, shortest remaining time and multilevel feedback queues.
Describe how the round robin scheduling algorithm works.
Each job is given a section of processor time called a time slice. If the job has not been completed when the time slice has ended, the next job is given a time slice.
Describe how the first come first served scheduling algorithm works.
Jobs are processed in chronological order by which they entered the queue.
Describe how the shortest job first scheduling algorithm works.
The queue storing jobs to be processed is ordered according to the time required for completion, with the longest jobs being serviced at the end.
Describe how the shortest remaining time scheduling algorithm works.
The queue storing jobs to be processed is ordered according to the time left for completion, with the jobs with the lowest remaining time being serviced first.
Describe how the multilevel feedback queue scheduling algorithm works.
This makes use of multiple queues which store different priority jobs. The higher priority, the faster the job is completed.
What is a disadvantage of using the round-robin scheduling algorithm?
Longer jobs have a much longer time to completion due to the execution being split up into multiple cycles.
What is a disadvantage of using the first come first served scheduling algorithm?
There can be lots of small jobs waiting behind a larger job.
It doesn’t take into account the priority of the job.
What is a disadvantage of using the multilevel feedback queue scheduling algorithm?
It is difficult to implement as it has to decide which job to prioritise.
What is a disadvantage of the shortest job first algorithm?
It requires the processor to estimate how long each job will take.
There is a risk of processor starvation if short jobs keep on being added to the queue.
What is a disadvantage of the shortest remaining time algorithm?
There is a risk of processor starvation if short jobs are added to the queue.
Name the five different types of operating system.
Distributed, embedded, multi-tasking, multi-user, real time.
Describe how a distributed operating system works.
A distributed operating system runs across multiple devices which allows the load to be spread across multiple computer components when a task is run.
Describe the features of an embedded operating system.
An embedded operating system is built to support a small range of tasks and catered towards a single device.
Describe how a multi-tasking operating system works.
Multi-tasking operating systems allow the user to carry out tasks seemingly simultaneously. This is done by switching quickly between programs and applications in memory.
Describe how a multi-user operating system works.
Multiple users make use of a single computer (usually a supercomputer) from different terminals.
Describe how a real time operating system works.
A real time operating system is designed to perform a task within a guaranteed time frame.
Name two features of an embedded operating system.
They are limited in functionality
Hard to update
No memory management
Consume less power that a traditional operating system
Name an important feature of a multi-user operating system.
A scheduling algorithm must be used to ensure processor time is shared fairly between jobs. This is to reduce the risk of processor starvation.
What does the BIOS stand for?
Basic Input Output System.
What is the first program run when a computer is loaded?
The BIOS.
Name a test that is run as part of the BIOS.
Power On Self Test (POST)
Checking the CPU clock, memory and processor to ensure that it is operational.
Testing for external memory devices.
What happens during the power on self test (POST)?
Ensures that all hardware are correctly connected and functional.
What is a device driver?
A computer program that is provided by the operating system and allows the operating system to interact with hardware.
What are device drivers specific to?
The computer’s architecture and the operating system.
What is a virtual machine?
A theoretical computer that is a software implementation of a computer system. It also provides an environment with a translator for intermediate code to run.
What is intermediate code?
Code that is halfway between machine code and source code is called intermediate code.
What is intermediate code independent of? What advantage does this give?
The computer architecture. This means it can be used across different machines and operating systems.
Why are virtual machines commonly used?
They create a development environment for programmers to test programs on operating systems.
What are the advantages of using virtual machines?
It saves time and money for developers as they do not have to purchase multiple devices solely for testing purpose.
What is a disadvantage of using a virtual machine?
Intermediate code can be considerably slower than using low level code on the device it was designed for.
Name another use of a virtual machine.
Protection from malware.
Running incompatible software.