Systems Software Flashcards
What is an operating system?
A collection of programs that work together to provide an interface between the user and computer
Give the functions of an operating system
- Memory management
- Resource management
- Input/Output management
- Interrupt management
- Security
- User interface
- Utility software
What are the similarities and differences between paging and segmentation
Both: Are used when RAM space is insufficient, can cause disk thrashing
Paging: Uses equal-sized sections called pages
Segmentation: Uses variable-sized, logical sections called segments
Describe how virtual memory is used when there is not enough RAM
- A section of the hard drive is used to act as RAM
- Sections of programs not currently being used are temporarily moved into virtual memory through paging
- This frees up memory for other programs in RAM
What is an interrupt
A signal generated by software or hardware to indicate to the processor that a process needs attention
Explain the stages of the Interrupt Service Routine
- Interrupt register checked at the end of each Fetch-Decode-Execute cycle.
- If there is an interrupt exists with a higher priority to the current process, the current contents of the registers in the CPU are transferred into a stack.
- The relevant interrupt service routine (ISR) is loaded into RAM.
- A flag is set to signal the ISR has begun.
- The flag is reset once the ISR has finished.
- Interrupt register checked again. If interrupts are of a higher priority, the process is repeated.
- If there are no interrupts with a higher priority, the contents of the stack are popped and place back into the special memory registers
- The fetch-Decode-Execute cycle renews as before
Are these scheduling algorithms pre-emptive or non pre-emptive?
FCFS, SRT, SJF, MLFQ, RR
Pre-emptive: RR, SRT, MLFQ
Non-preemptive: FCFS, SJF
What are the advantages and disadvantages of using Multilevel Feedback Queues for scheduling?
Advantage: Services most urgent interrupts first
Disadvantage: Hard to implement
Define a real-time operating system and when it may be used
Real-time operating systems perform a task within a guaranteed time frame.
They are used in systems were a response within a given time frame is critical eg. life support systems, self-driving cars, power systems
Describe three functions of the BIOS
Running tests upon the computer’s start up:
● POST (Power-on self test) which ensures that all hardware is correctly connected and functional
● Checking the CPU clock, memory and processor
● Testing for external memory devices
What is the role of a device driver
Enable the operating system to interact with hardware devices
Describe an instance in which a Virtual Machine may be used
● Testing programs
● Protection from malware
● Running software compatible with different versions and types of operating systems
Give one advantage and one disadvantage of intermediate code
Advantage: Platform independent, portable
Disadvantage: Slower execution