1.2.1 Systems Software Flashcards
What is an operating system (OS)? What are its functions?
A collection of programs that work together to provide an interface between the user and the computer.
Functions:
- Memory management
- Provides a user interface
- Manages hardware
- Manages interrupts
- Provides security
- Provides platform to run other software
- Utility software
What is an interrupt? How does an ISR work?
Signals generated by hardware or software that indicates to the CPU that it needs attention. Stored in order of their priority in a priority queue, and the OS ensures they are processed fairly through Interrupt Service Routines (ISR).
ISR:
- The processor checks the contents of the CPU at the end of every FDE cycle.
- If there is a higher priority interrupt than the process currently being executed, then the current contents of the registers
in the CPU are temporarily pushed onto a stack.
- The processor responds by loading the appropriate ISR into RAM.
- The interrupt register is checked again for more higher-priority interrupts.
- If there are none, the contents in the stack are popped back into the special purpose registers and the FDE cycle
continues.
What are the 5 types of operating systems?
Distributed, real-time, embedded, multi-user, multi-tasking.
What is a distributed OS?
Runs across multiple devices, allowing the load to be spread across multiple components when a task is run.
What is a real-time OS?
Designed to perform a task within a guaranteed time frame.
What is a embedded OS? What are its advantages and disadvantages?
Built to support a small range of tasks catered towards a single device.
Advantages => Consume significantly less power than a traditional OS.
Disadvantages => Limited in functionality, hard to update, no memory management.
What is a multi-user operating system?
Multiple users make use of a single computer (usually a supercomputer) from different terminals.
A scheduling algorithm must be used to ensure processor time is shared between jobs fairly to reduce the risk of processor starvation.
What is a multi-tasking operating system?
Allows the user to carry out tasks seemingly simultaneously by switching between programs and applications in memory quickly.
What is the BIOS? What tests does the BIOS do?
Basic Input Output System. It is the first program that is run when the computer is loaded.
Testing for external memory devices.
Checking the CPU clock, memory, and processor to ensure it’s operational.
Power On Self Test (POST) => Ensures all hardware are connected and fully functional.
What is a device driver?
Programs which are provided by the OS allowing it to interact with the hardware. Specific to the computer’s architecture and OS.
When a piece of hardware is used, it communicates this to the OS which can produce the output.
What is intermediate code? What are its advantages?
Code halfway between source code and machine code.
Advantages => Independent of the computer’s architecture so it can be used across different machines and operating systems.
What is a virtual machine? What are its uses, advantages, and disadvantages?
Any instance where software is used to take on the function of a computer system, such as running intermediate code.
Advantages => Saves time & money for developers as they don’t have to buy multiple devices for testing.
Disadvantages => Intermediate code can be slower than using the low level code intended for the device.
Uses => Developers can test programs on operating systems (testing), protection from malware (security), running incompatible software (emulators).