1.2.1 Systems Software Flashcards
What is an operating system?
A collection of programs that work together to provide an interface between the user and computer.
What are the 8 functions of an operating system?
Memory management
Resource management
File management
Input/Output management
Interrupt management
Utility software
Security
User interface
What are the three reasons for why memory management is important?
Ensure memory is optimally distributed among processes
Protect programs and data from each other
Allow programs larger than main memory to run?
What is paging?
Partitioning of memory into equal sized divisions known as pages.
What is segmentation?
Partitioning of memory into logical divisions known as segments, which vary in size.
What is virtual memory?
An allocated space within the hard drive that acts as RAM when the space in main memory is insufficient to store programs currently being used.
How does a computer use virtual memory?
Sections of programs that aren’t in use are temporarily moved into virtual memory through paging, freeing up memory for other programs in RAM.
What is disk thrashing?
When the computer freezes as a result of pages being swapped too frequently between the hard disk and memory (as you have to spend time transferring the pages rather than running the program).
What is an interrupt?
A signal generated by software or hardware to indicate to the processor that a process needs attention.
How are interrupts ordered in the interrupt register?
In order of their priority, within an abstract data structure called a priority queue.
How does the OS ensure interrupts are fairly serviced by the processor?
Through the ISR.
Describe the ISR.
1) The processor checks the contents of the interrupt register at the end of every FDE cycle.
2) If an interrupt exists with a higher priority than the current job being performed, then:
- The contents of the CPU’s registers are pushed onto a stack.
- The relevant ISR is loaded into main memory.
- A flag is set to indicate the ISR has begun.
- The flag is reset upon completion of the ISR.
3) The interrupt register is then checked once more for an interrupt with a higher priority. If there is, then:
- The process repeats until all priority interrupts have been serviced.
If not, the contents of the stack are transferred back into the registers in memory.
4) The FDE cycle resumes as before.
What is scheduling?
Allocating processor time to each application to ensure processor time is used as efficiently as possible.
What is pre-emptive?
Jobs are made to actively start and stop by the OS.
MLFQ, SRT, RR
What is non pre-emptive?
Once a job is started, it is left alone until it is completed.
FCFS, SJF
How does Round Robin work?
1) Each job is given an equal section of processor time (known as a time slice) within which it is allowed to execute.
2) Once each job in the queue has used up its time slice, every job is allocated another equal slice of processor time.
3) This continues until a job has been completed, at which point it is removed from the queue.