1.2.1 Flashcards
What features are provided by an operating system?
Provides a user interface
Manages hardware (peripherals)
Manages CPU usage / Interrupts
Provides utilities
Manages Memory
Provide system security
Provides a platform for software to run
What are the key facts about memory management?
Provides security as it does not let programs access memory reserved for other programs.
Ensures that RAM is used efficiently and not wasted.
Removes data not needed anymore (garbage collection) and allocates memory to applications.
Provides multitasking as it allows multiple programs to run at once
What are the key facts about paging
Physical addressing with fixed-size divisions –
Data can be held non-contiguously and makes the best use of storage.
What are the key facts about segmentation?
Logical addressing with variable size divisions.
This can leave gaps in RAM due to differing sizes of segments
What are the key facts about virtual memory?
Uses secondary storage (HDD)
Pages not currently needed get moved to virtual memory to create room
Pages are swapped between virtual memory and RAM as nothing can be running from virtual memory.
What is an interrupt?
A signal to the processor indicating a device/process needs attention
What happens when an interrupt is received?
If it is of a higher priority, the CPU finishes its current FDE cycle.
The contents of the CPU’s registers are copied to a stack in memory.
The location of the appropriate interrupt service routine is loaded into the program counter.
When complete, the previous contents are popped from the stack and loaded back into the registers.
If the interrupt is of a lower/equal priority to the current process, then the current process continues.
What are virtual machines?
A theoretical computer that runs like software
Shares the resources with the actual OS that it is running on
What are the benefits of virtual machines?
Allows you to run the software on several different systems without needing multiple physical machines.
Protects the physical machine from a virus as the VM can quickly be reset to its original state.
Some VM are used to execute intermediate code (Java)
What is the purpose of scheduling (CPU Management)
Used to process as many jobs as possible in the least possible time
Ensures all jobs are processed fairly
Enables the most efficient use of the processor
What are the five main types of scheduling algorithms?
Round Robin (RR)
First come first served (FCFS)
Shortest job first (SJF)
Shortest remaining time (SRT)
Multi-level feedback queues (MLFQ)
Describe round-robin scheduling
Each process is given an equal time slice
If the process is not completed, then it joins the back of the queue.
Describe first come first served scheduling.
Jobs are processed to completion in the order in which they arrive (First in First Out)
The job will be completed before the next one starts
Each job has an equal priority.
Describe the shortest job first scheduler.
Picks the job that will take the shortest time and runs it until it finishes
Needs to know the time each job will take in advance
Describe the shortest remaining time scheduler.
The quickest job is completed first but stops and re-evaluates when a new job arrives.