2 Systems Software Flashcards
What is an operating system?
An operating system is a program or set of programs that manage the operations of the computer for the user.
What are the functions of an operating system?
Provide a user interface to enable users to perform tasks such as running applicaiton software.
Resource management - Managing all the computer hardware including CPU, memory, keyboard.
Memory management.
Interrupt service routines.
Processor scheduling
Backing store management.
Management of all input and output.
What is paging?
Paging is when memory is split up into fixed sized pages, with programs being made up of a certain number of fixed pages. These can be swapped between main memory (RAM) and the hard disk as needed.
What is segmentation?
Segmentation is the splitting up of memory into logical sized divisions, known as
segments, which vary in size. These are representative of the structure and logical flow of
the program, with segments being allocated to blocks of code such as conditional
statements or loops.
Explain what virtual memory does.
Virtual memory uses a section of the hard drive to act as RAM when the space in main memory is insufficient to store programs being used. Sections of programs that are not currently in use are temporarily moved into virtual memory through paging, freeing up memory for other programs in RAM.
What is the key issue with paging, segmentation and virtual memory?
The key issue with using these three techniques is disk thrashing. This is when the computer freezes and occurs as a result of pages being swapped too frequently between the hard disk and main memory.
What is an interrupt?
An interrupt is a signal from software, hardware or internal clock indicate to the processor that a process needs attention.
Explain interrupt service routines.
When the CPU receives an interrupt signal, it suspends execution of the running program and disables all interrupts of lower priority. Contents of PC and each register are put onto the system stack, while an ISR is called to deal with the interrupt.
What does the scheduler do?
The scheduler is the operating system module responsible for making sure that processor time is used as efficiently as possible.
What are the objectives of the scheduler?
Maximise throughput.
Be fair to all users on a multi-user system.
Provide acceptable response time to all users.
Ensure hardware resources are kept as busy as possible.
What are the different types of scheduling algorithms?
Round robin First come first served Shortest remaining time Shortest job first Multi-level feedback queues
Describe the scheduling algorithm: round robin.
Each job is given a section of processor time - known as a time slice - within it is allowed to execute. Once each job in the queue has used its first time slice, the OS grants each job an equal slice of processor time until a job is completed, at which point it’s removed from the queue.
What is the problem with round robin?
Longer jobs will take much longer time for completion due to their execution being inefficiently split up into multiple cycles. It also doesn’t take into account job priority.
Describe the scheduling algorithm: First come first served.
Jobs are processed in the order in which they arrive, with no system of priorities.
Explain the scheduling algorithm: Shortest remaining time. What are the advantages and disadvantages of it?
The process with the smallest estimated time to completion is run next.
It tends to reduce the number of waiting jobs, and the number of small jobs waiting behind big jobs.
There is a risk of processor starvation for longer jobs if short jobs are added to the job queue.
Explain the scheduling algorithm: shortest job first.
The process with the smallest estimated running time is run next.
Explain the scheduling algorithm: Multilevel feedback queues
This makes use of multiple queues, each which is ordered based on a different priority.
When may interrupts occur?
Software interrupt occurs when an application program terminates or requests certain services form the OS.
Hardware interrupts may occur when an operating is complete or an error occurs.
Interrupts are also trigged by a timer, to indicate that is is the turn of the next process to have processor time.
What is the purpose of a buffer?
a data buffer (or just buffer) is a region of a physical memory storage used to temporarily store data while it is being moved from one place to another.
What is a distributed operating system?
A distributed operating system is a form of parallel processing system which is run across multiple devices, allowing the load to be spread across multiple computer processors when a task is run.
What is an embedded operating system?
Embedded OS is built to perform a small range of specific tasks, this is catered towards a specific device.
What is a multi-tasking operating system?
Multi tasking OS enable the user to carry out tasks seemingly simultaneously. This is done by time slicing to switch quickly between programs and applications in memory.
Explain multi user, multi tasking operating system?
A single powerful mainframe or supercomputer is connected to dozens or hundreds of terminals all using the mainframe CPU. Each user gets a slice of processor time according to the scheduling algorithim.
What are real time operating systems?
Commonly used in time critical computer systems, it’s designed to perform a task within a guaranteed time frame.
What are some features of a real time OS?
features of real time OS:
Respond quickly to input or sensors
Must deal with inputs simultaneously
Must have failsafe designed to detect and take appropriate action if hardware component fails
Must incorporate redundancy - if one component fails, it automatically switches to back up hardware.