SLR 4/ Operating Systems Flashcards
What are the 9 roles of the Operating System
Hardware
Managing Programs
System Security
UI
Managing the processor
Memory Management
Handling input/output from peripherals
Networking
File Management
Name the 5 Scheduling types
-First Come First Served (FCFS)
-Round Robin (RR)
-Multi-Level Feedback queues (MFQ)
-Shortest Job First (SJF)
-Shortest remaining time (SRT)
Define First Come First Served (FCFS)
Processes are executed in order as they arrive. If the process takes long the others will simply have to wait.
Define Round Robin (RR)
Each process is allocated a fixed amount of time, known as a time slice. If the process is not complete by the end of its time slice, it returns to the back of the queue.
Define Multi-Level Feedback queues (MFQ)
Several queues are used, each with a different scheduling algorithm and priorities. Jobs are able to move between queues as their priorities change.
Define Shortest Job First (SJF)
Picks the processes that take the shortest time and runs them until they finish. The schedular needs to know how long each process will take.
Define Shortest remaining time (SRT)
Similar to SJF. It is pre-emptive which mean processes can be suspended if a higher priority joins the queue. If a process with a shorter time joins, it goes into the running state and the current process goes back in the queue.
Name the 5 different types of Operating Systems
-Multi-tasking operating system
-Multi-user operating system
-Distributed operating system
-Embedded operating system
-Real-time operating system
Define Multi-tasking operating system
Can run multiple programs at the same time.
Desktop/smartphone
Define Multi-user operating system
Allows many users to access the system and its resources at the same time. Computer will mange users access. Server OS software manages the multiple people using different computers on a network at the same time.
Used in schools and offices
Define Distributed operating system
Allows many computers to work together to carry out a single task.
Data Centre’s, Large Companies, Data mining
Define Embedded operating system
Designed to run inside single-use systems rather than general-purpose computers. Low power, little memory and dedicated hardware.
Washing Machine, Microwave.
Define Real-time operating system
Designed to carry out actions within a fixed and assured amount of time.
-Heart Monitors, Radar Systems
Describe the process of a computer booting up
1.ROM boots the Power On Self Test (POST) to check everything the computer needs is available
2. Clears registers and loads the address of the first instruction in the boot program into the Program Counter (PC)
3.Control is passed to boot program which checks the hardware
4.Check for any BIOS
5.BIOS is run on ROM and is sent to RAM
6. The computer is ready to load the OS usually found on the hard disk
7. OS takes control
Explain Device Drivers
All types of operating systems need to communicate and interact with a wide range of different devices.
A device driver is a piece of software normally supplied with a new device when you buy it. It tells the operating system how it should communicate with the device.
What is Segmentation
Segmentation – this divides memory up into physical divisions, not logical.
Different-sized blocks of memory are carved up on the fly as needed.
What is Paging
Paging. Memory is split into logical divisions. These are fixed-sized pages
What is an Interrupt
An interrupt occurs when a device or other system event needs the CPU to give it attention. The CPU will stop working on its current task so that is is able to process the Interrupt Service Routine (ISR).
Common reasons an interrupt may occur are
-A key pressed on a keyboard
-A printer is out of paper
-A timer interrupt
What is Virtual Memory?
When RAM is full it uses Virtual Memory in the Hard Disk. If pages/segments from memory keep getting moved to the hard disk , this is called Thrashing. This makes the computer very slow
Explain an Interrupt
The CPU must give attention to and stop the current task. In the FDE cycle after execute the CPU will check for Interrupts. Code for interrupts is called the Interrupt Service Routine (ISR). The ISR has its own instructions to be fetched, decoded and executed. That means the contents of the program counter must need to be changed to the address of the interrupt. Interrupts always have a higher priority than normal programs.
What happens to the values in the registers when an Interrupt occurs?
When an interrupt is received the current values in the registers are copied to a data structure in memory called a Stack saving them for later. Once the interrupt is complete, the frame is Popped off the stack. This allows the values to be loaded back into the registers and carried on.
Examples of interrupts
-Printer ink
-Power supply failure
-Power button pressed
-Moving the mouse
-Keyboard Pressed
Define Scheduling
Managers which processes to execute next and the length of time the next process can execute for. As processes enter they are in the “Ready Queue”. When the current process finished it can enter the “Running State”
Can OS overlap ?
Yes, a system can have an OS with a multi tasking capabilities whilst also being multi user.
What is BIOS?
Basic Input Output Systems
-First uses the power on self test (POST) to check for the computer parts
-The bootstrap loads the OS into memory
-Stored in ROM
-BIOS settings stored in Flash memory
What are Device Drivers?
Software that tells the OS how to communicate with a device
What is a Virtual Machine?
A program that has the same functionality as a physical computer. For example many old arcade games can be emulated on modern machines. The program is unaware it is being emulated it is being executed exactly as it was originally. This is an example of virtual machines.
What is Intermediate code?
Java is a good example. Java is designed to run on multiple platforms. So instead of having to use a specific language for each device or use compilers, Java uses intermediate code called “bytecode”. This is translated by Java using the Java Virtual Machine (JVM) so it can be run. This makes Java very portable.