Operating Systems Flashcards
What is an operating system?
Software which manages the communications between the hardware and other software as well as sometimes providing an interface for the user.
What tasks must all operating systems carry out?
Memory management (RAM), interrupt service routines, processor scheduling, backing store management and management of all inputs and outputs.
What is memory management?
It is how the OS manages where in RAM the software stores data.
What is paging?
Paging is a memory management technique in which data is divided into fixed sized “pages” (usually 4Kb in size) and a dictionary is used to access them. Has the disadvantage that data often does not fill up pages so space is sometimes wasted.
What is segmentation?
Segmentation is a memory management technique similar to paging in that memory is split in to chunks but these can vary in size to be better suited to the program being stored.
What is virtual memory?
Where pages are switched between secondary memory and RAM when not in use so that there is more space available in RAM for other software.
What is an interrupt?
An interrupt is a signal sent by programs or hardware to request time from the OS. An example of a hardware interrupt would be a button being pressed or a printer saying it is out of paper, an example of a software interrupt would be a divide by 0 error.
What is an interrupt service routine?
When a CPU receives an interrupt it puts all current tasks onto a stack and the interrupt service routine is called dealing with each of the interrupts that have been caused.
At which point does the CPU check for interrupts?
At the end of every fetch-decode-execute cycle.
What is processor scheduling?
The method in which the OS decides which tasks are carried out when.
What is the round-robin scheduling system?
Where each task is given an equal amount of time and has to wait through the rest of the tasks if it does not complete its task in the required time, an interval timer generates interrupts at specific times to switch tasks fairly.
What is the FIFO scheduling system?
First In First Out (FIFO) systems process data in the order it arrives with no priority system.
What is the shortest remaining time / shortest job first scheduling system?
The scheduler predicts how long each task will take and carries out the tasks with the shortest expected time first.
What is a multi-level feedback queue?
A scheduling algorithm which is designed to prefer short jobs and separate tasks based on the requirement for them to use the processor, e.g. tasks that require I/O devices are ran sooner as they require less CPU time but will need to wait for the I/O device.
What is backing store management?
The system in the OS which manages secondary memory, it knows where data is stored and which memory locations are free as well as often allowing the user to move/delete files and manage which users can gain access.