Operating Systems and System Software Flashcards

1
Q

What is the purpose of a stack when handling interrupts?

A

Allows the processor to…
- Retrieve previous values for the original program
- Load them back into the processor registers
- Carry on executing the original program from where it left off

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What happens to the values of the registers when an interrupt is received?

A

They are pushed onto a memory stack in a stack frame

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Where are multi-user operating systems used?

A

In environments requiring collaboration and resource sharing among multiple users

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the main advantage of multi-tasking systems?

A

Enhances user productivity and system efficiency by allowing the simultaneous execution of processes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Where are multi-tasking systems used?

A

Desktop environments - to run multiple applications simultaneously

Servers - to manage several user requests or services (hosting, database management, file sharing)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a multi-tasking operating system?

A

An OS which allows multiple tasks or processes to run concurrently

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the BIOS?

A

A program responsible for loading the operating system when the computer first turns on

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a boot loader?

A

A program used to load the OS kernel into memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What happens once the OS has been loaded?

A

It takes over from ROM and boots up the rest of the system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What does the BIOS do first when turned on?

A

Checks all the hardware it needs is connected and working using POST (power on self test)

Clears anything that may still be in the registers of the CPU

Loads the address of the first instruction into the PC

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

State 5 roles of the OS

A

File management
Memory management
Peripheral management
Providing a user interface
Utility software
Processor scheduling
Interrupt management
Security

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

State the 5 scheduling algorithms

A

Round robin
First come first served Shortest remaining
Multi-level feedback queue
Shortest job first

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Describe the round robin scheduling algorithm

A

Each process is given an equal time slice

If a process is not complete within the time it joins the back of the queue

Higher priority tasks can interrupt the process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Describe the first come first served scheduling algorithm

A

Processes are felt with in the order they come

No system of priorities

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Describe the shortest remaining time scheduling algorithm

A

Jobs with the shortest remaining estimated time are executed until finish or until a job with a shorter remaining time interrupts the process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Describe the multi-level feedback queue scheduling algorithm

A

Sorts jobs into categories depending on their priority level

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Describe the shortest job first scheduling algorithm

A

Jobs with the shortest execution time are processed first

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

State all the pre-emptive scheduling algorithms

A

Round robin
Shortest remaining time
Multi-level feedback queue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

State all the non pre-emptive scheduling algorithms

A

First come first served Shortest job first

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is a preemptive scheduling algorithm?

A

An algorithm where an executing process can be interrupted when a higher priority process comes

21
Q

What is a non-preemptive scheduling algorithm?

A

An algorithm where an executing process cannot be interrupted. The high priority must wait until the end of execution.

22
Q

State an advantage and disadvantage of preemptive algorithms

A

Advantage
- more reliable
- average response time is improved
- flexible - critical processes can be attended to

Disadvantage
- low priority processes have to wait if multiple high-priority processes arrive at the same time

23
Q

State an advantage and disadvantage of non-preemptive algorithms

A

Advantage
- minimal scheduling burden
- very easy procedure
- high throughput rate

Disadvantage
- rigid: critical processes have to wait for the CPU to finish processing
- bugs can cause computer to freeze up

24
Q

Explain how round robin works

A
  • OS sets an interrupting clock
  • clock generate interrupts at specific times
25
Q

State the main advantage of round robin

A

Guarantees a reasonable response time to all users of the system

26
Q

State an advantage and disadvantage of shortest job first and shortest remaining time

A

Advantage
- reduces number of waiting jobs
- reduces number of small jobs waiting behind big jobs

Disadvantage
- requires knowledge of how long a job will take

27
Q

What is a multi-user operating system?

A

An OS which allows many users to access the system and its resources at the same time

28
Q

Give an example of where a multi-user OS is used

A

In a computing lab where many students login to a computer and access the same resources without interference

29
Q

What is a distributed operating system?

A

An OS which allows many computers to work together to carry out a single task

30
Q

Give an example of where a distributed OS may be used

A

Processing an order from an online shop

31
Q

What is a real-time operating system?

A

An OS designed to carry out action within a fixed and assured amount of time

32
Q

Give an example of where a real-time OS may be used

A

A heart monitor in a hospital

33
Q

What is an embedded operating system?

A

An OS designed to run inside single-use systems rather than general-purpose computers

34
Q

Give an example of where an embedded OS may be used

A

Washing machine

35
Q

Describe the process of a computer booting up

A
  1. POST is run
  2. checks components are available
  3. clears CPU registers
  4. loads address of first instruction
  5. boot loader program carries out checks on hardware
  6. checks for BIOS
  7. combines with basic BIOS on ROM (boot file) and sends to RAM
  8. loads OS from hard disk
  9. OS takes control
36
Q

State and explain 2 advantages of the BIOS

A
  • non-volatile : allows system to boot up with correct configurations every time
  • can be easily updated or rewritten : enables firmware updates
  • more reliable than traditional methods : reduces risk of data loss
  • compact + small physical footprint : suitable for limited space on motherboard
37
Q

What is a device driver?

A

Software that tells the operating system how to communicate with a peripheral device

38
Q

What is the purpose of a device driver?

A

To facilitate communication between the OS and hardware devices

39
Q

What does a device driver do?

A

Translates operating system instructions into a series of instructions that a specific piece of hardware will understand

40
Q

State an advantage of device drivers

A
  • simplifies programming
  • enhances portability
  • ensures compatibility between various hardware components : don’t have to worry about hardware specific programming
  • provides mechanisms for error detection and handling
41
Q

What is a virtual machine?

A

A program that has the same functionality as a physical computer

42
Q

What can a virtual machine be used for?

A

To support a large number of virtual servers spread over a small number of physical servers

  • if one stops the others can pick up the load
43
Q

What is intermediate code?

A

Programming language translated into half-code (byte-code) then translated by a virtual machine on the target device into specific machine code

44
Q

State the advantage of intermediate code

A

makes code highly portable between devices

45
Q

Explain why interrupts are used

A
  • to signal to the CPU that a process needs attention
  • allows OS to allocate adequate processor time
46
Q

What is paging?

A
47
Q

What is segmentation?

A
48
Q
A