1.2.1 Systems Software Flashcards

1
Q

What is an operating system?

A

A collection of programs that work together to provide an interface between the user and computer.

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

What are the 8 functions of an operating system?

A

Memory management
Resource management
File management
Input/Output management
Interrupt management
Utility software
Security
User interface

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

What are the three reasons for why memory management is important?

A

Ensure memory is optimally distributed among processes

Protect programs and data from each other

Allow programs larger than main memory to run?

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

What is paging?

A

Partitioning of memory into equal sized divisions known as pages.

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

What is segmentation?

A

Partitioning of memory into logical divisions known as segments, which vary in size.

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

What is virtual memory?

A

An allocated space within the hard drive that acts as RAM when the space in main memory is insufficient to store programs currently being used.

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

How does a computer use virtual memory?

A

Sections of programs that aren’t in use are temporarily moved into virtual memory through paging, freeing up memory for other programs in RAM.

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

What is disk thrashing?

A

When the computer freezes as a result of pages being swapped too frequently between the hard disk and memory (as you have to spend time transferring the pages rather than running the program).

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

What is an interrupt?

A

A signal generated by software or hardware to indicate to the processor that a process needs attention.

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

How are interrupts ordered in the interrupt register?

A

In order of their priority, within an abstract data structure called a priority queue.

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

How does the OS ensure interrupts are fairly serviced by the processor?

A

Through the ISR.

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

Describe the ISR.

A

1) The processor checks the contents of the interrupt register at the end of every FDE cycle.
2) If an interrupt exists with a higher priority than the current job being performed, then:
- The contents of the CPU’s registers are pushed onto a stack.
- The relevant ISR is loaded into main memory.
- A flag is set to indicate the ISR has begun.
- The flag is reset upon completion of the ISR.
3) The interrupt register is then checked once more for an interrupt with a higher priority. If there is, then:
- The process repeats until all priority interrupts have been serviced.
If not, the contents of the stack are transferred back into the registers in memory.
4) The FDE cycle resumes as before.

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

What is scheduling?

A

Allocating processor time to each application to ensure processor time is used as efficiently as possible.

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

What is pre-emptive?

A

Jobs are made to actively start and stop by the OS.

MLFQ, SRT, RR

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

What is non pre-emptive?

A

Once a job is started, it is left alone until it is completed.

FCFS, SJF

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

How does Round Robin work?

A

1) Each job is given an equal section of processor time (known as a time slice) within which it is allowed to execute.
2) Once each job in the queue has used up its time slice, every job is allocated another equal slice of processor time.
3) This continues until a job has been completed, at which point it is removed from the queue.

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

Pros and Cons: Round Robin

A

Pros
- Ensures each job is seen to
Cons
- Longer jobs take much longer for completion
- Doesn’t consider job priority

18
Q

How does First Come First Served work?

A

Jobs are processed in chronological order by which they entered the queue.

19
Q

Pros and Cons: First Come First Served

A

Pros
- Straightforward to implement
Cons
- Doesn’t consider priority

20
Q

How do Multilevel Feedback Queues work?

A

Makes use of multiple queues, each which is ordered based on a different priority. Jobs can be moved between queues.

21
Q

Pros and Cons: Multilevel Feedback Queues

A

Pros
- Considers job priority
Cons
- Difficult to implement

22
Q

How does Shortest Job First work?

A

The queue storing jobs to be processed is ordered according to the time required for completion, with the longest jobs being serviced at the end.

23
Q

Pros and Cons: Shortest Job First

A

Pros
- Waiting time is minimised for shorter jobs
Cons
- Requires the processor to calculate how long each job will take
- Risk of processor starvation if short jobs keep getting added to the queue.

24
Q

How does Shortest Remaining Time work?

A

The queue storing jobs to be processed is ordered according to the time left for completion. The jobs with the least time to completion are serviced first.

25
Q

Pros and Cons: Shortest Remaining Time

A

Pros
- ..
Cons
- Risk of processor starvation for longer jobs if short jobs keep getting added to the queue.

26
Q

What is a distributed OS?

A

A type of OS which is run across multiple devices, allowing the workload to be spread across multiple computer processors when a task is run.

27
Q

What is an embedded OS?

A

A type of OS built to perform a small range of tasks. It is catered towards a specific device.

They are limited in functionality and hard to update, although they consume significantly less power than other types of OS.

28
Q

What is a multitasking OS?

A

A type of OS that enables the user to carry out tasks seemingly simultaneously. This is done by using time slicing to switch quickly between programs in memory.

29
Q

What is a multiuser OS?

A

Multiple users make use of one computer within a multiuser system. Scheduling is used to ensure processor time is shared fairly between jobs.

30
Q

What is a Real Time OS?

A

A type of OS commonly used in time-critical computer systems. They are designed to perform a task within a guaranteed time frame.

Examples: Self driving cars, ATC towers

31
Q

What is BIOS?

A

A program that tests whether system hardware is functional, before loading the OS from the hard disk into RAM when the computer is turned on.

32
Q

What are the three key tests that the BIOS runs before loading the OS into main memory?

A

1) POST which ensures all hardware is correctly connected and functional
2) Checking the CPU clock, memory and processor is operational
3) Testing for external memory devices connected to the computer

33
Q

What is the bootstrap/bootloader?

A

The program that loads the OS from the hard disk into main memory.

34
Q

What are device drivers?

A

A program supplied with a peripheral device that allows the OS to control and communicate with the device.

35
Q

What two things are device drivers specific to?

A

The computer’s architecture (Different drivers must be used for different device types) and specific operating systems.

36
Q

What is a virtual machine?

A

A software implementation of a computer system, which provides an environment with a translator for intermediate code to run.

37
Q

What is intermediate code?

A

Code that is halfway between machine code and object code.

38
Q

What is intermediate code independent of?

A

Processor architecture, so it can be used across different machines and operating systems.

39
Q

What are virtual machines commonly used for?
Whats the advantage and disadvantage of this?

A

Can be used to create a development environment for programmers to test programs on different operating systems.

This saves time and money, as you do not need to purchase multiple devices just for testing.

However, it can be considerably slower compared to running low level code on the device it was designed for.

40
Q

What are uses of VMs?

A

Protection from malware
Running incompatible software

41
Q

What does BIOS stand for?

A

Basic Input Output System

42
Q

What does POST stand for?

A

Power-on self test.