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.
Describe multi-level feedback queues
Uses several queues
Each queue has a different priority
The algorithm can move jobs between these queues
What are the 5 main types of operating systems?
Distributed
Multi-User
Real-time
Multi-Tasking
Embedded
Describe a distributed OS
Shares processing between the processors on a network
Allow multiple computers to be treated as one
Multiple computers work on the same problem, completing it quicker
Describe a multi-user OS
Allows multiple users to use the same computer at the same time
Each user is given a time slice of the processor
Describe a real-time OS
Offers a guaranteed response time
Will make decisions and act immediately
Example: Self-Driving Cars & Airplane Auto Pilot
Describe an embedded OS
Has limited function and is read-only – stored in ROM.
System software used to manage the device
Built into the device itself
Specific to the hardware/purpose
Examples: Washing machines & Microwaves
Describe a multi-tasking OS
Allows the user to run more than one program at the same time.
Example uses include running word processing software whilst checking emails.
Describe and give examples of a device driver
A program that enables communication between an operating system and a hardware device.
Example: Printer drivers| Graphics Card drivers| Sound Card drivers
Describe BIOS
Stands for Basic Input Output System
Stored in ROM
Performs the Power On Self-Test (Tests hardware is working)
Stores the Bootstrap loader (used to boot up the OS)
Can change settings such as which storage device the computer boots from.