1.2.1 Systems Software Flashcards

Operating Systems, BIOS, Drivers and Virtual Machines

You may prefer our related Brainscape-certified flashcards:
1
Q

What does OS stand for?

A

Operating System

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

What is an Operating System?

A

A program or set of programs that manages the operation of a computer for the user. It acts as a bridge between the user and the computers hardware.

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

Why was the Operating System made?

A

To make using a computer easier for humans.

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

Where is the Operating System held?

A

In permanent (secondary) storage

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

How is the Operating system loaded?

A

A program called the ‘Loader’, which is stored in the BIOS, is run which sends instructions to load the OS into RAM so that it can run.

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

What are some examples of Operating Systems?

A

Windows, MacOS, IOS, Linux, Android.

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

What functions does the Operating System have to do?

A

Resource Management.
File Management.
Security.
Running Software.
Handling Interrupts.
Providing a GUI.
Providing Utilities.

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

How does the Operating System do Resource Management?

A

It decides where data is sent in the computer and what each component should do with the data. Includes Memory and CPU management.

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

How does the Operating System do File Management?

A

By storing files on the hard drive so they can be accessed later.

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

What does the Operating system allow you to do with files?

A

Move, Copy, Rename and Remove files

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

How does the Operating System Provide Security?

A

Protects against malware and unauthorised access (passwords).
Ensures that apps don’t interfere with each other.
Different users on the same machine shouldn’t be able to access each other’s data.
Encrypts data where necessary.

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

How does the Operating System provide a platform to run software?

A

Provides an easy way to run software on the computer that can add functionality to the computer, allowing you to do more with it than the OS allows as standard.

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

How does the Operating system do Interrupt Handeling?

A

It processes interrupts where other software and hardware sends information to the OS to interrupt it if an action requires immediate attention.

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

What does GUI stand for?

A

Graphical user Interface?

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

What is the Operating System’s GUI made up of?

A

CLI, WIMP

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

What does CLI stand for?

A

Command Line Interface

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

What does WIMP stand for?

A

Windows, Icons, Menus and Pointers

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

How does the Operating System provide utilities?

A

By adding functionality to the computer beyond what it does as standard.

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

What utilities does an Operating System provide that is beyond standard?

A

Compression, Defragmentation, Encryption

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

What is Memory Management?

A

How memory (RAM) is organised

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

What controls Memory Management?

A

The Operating System?

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

What happens if RAM becomes full?

A

The computer may crash or start using virtual memory

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

What are the different types of memory management?

A

Paging, Segmentation, Virtual Memory

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

What must the Operating system do in order to successfully manage memory?

A

Allocate enough memory for each process to run.
Split memory so that it can be allocated to a process (paging and segmentation). This must be done fairly to give each process an equal opportunity to run.
Employ security so that processes can’t access each other’s data.
Have efficient sharing of memory so as little is used for as short of a time as possible.
Be ready to extend to virtual memory if needed.

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

How is RAM divided?

A

Into bytes that are numbered, starting from 0. This is the address of that location/byte

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

What is the RAM address?

A

The physical location within RAM

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

Why cant you write code for a specific RAM address?

A

You cant ensure that the location will be available

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

What is happening within RAM?

A

Programs opening and closing at different times with different requirements.

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

What can malicious programs do?

A

Demand too much memory.
refuse to close/ reopen once closed.
Try to load to ram locations that are already being used.
Look at other locations in RAM that they don’t have access to.

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

What is paging?

A

Where the RAM is divided into ‘Pages’ of a fixed size

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

How big are pages typically?

A

4kb

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

How are processes allocated in paging?

A

Split between pages non-continuously, the pages are not nessiserely next to each other in RAM.

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

What can processes do in paging?

A

View the pages that its code is within but not the pages of the other processes - so it doesn’t know whats running where

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

How is paging inefficient?

A

Programs are not split up evenly - so loops can be spread across multiple pages.
Programs may not take up a whole page so there is wasted space where nothing is stored - inefficient use of RAM

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

What is segmentation?

A

Similar to paging but each segment is a variable size. So each segment will only be as big as it needs to be, so no memory space is wasted.

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

How are segments determined?

A

Based on the process requesting space. The space granted depends on:
If the file size is known in advance.
It contains blocks of code that depend on each other.
It contains whole sections that relate to themselves.

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

How is segmentation beneficial over paging?

A

Solves the issues of different program sizes leading to wasted space

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

Whats the difference between the divisions in paging and segmentation?

A

Paging uses physical divisions based on the physical locations in memory. Segmentation uses logical divisions based on the best places to divide the segments with the process in question.

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

What is virtual memory?

A

Using the hard drive as if it were RAM

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

When is virtual memory used?

A

When RAM has become full of data

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

What does the OS do when using virtual memory?

A

Offload the temporarily inactive pages in the RAM to the disk.

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

What would happen if Virtual Memory wasn’t used?

A

If the RAM becomes full it can cause the computer to crash as there is nowhere to store potentially essential programs.

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

How does Virtual memory effect performance?

A

It degrades the performance of the computer as it takes longer to read and write data to secondary storage than to RAM. If there are too many pages being swapped between secondary storage and RAM then the performance could degrade so much that the computer is essentially unusable.

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

How does Virtual Memory degrade the hardware of the computer?

A

Causes ‘Disk Thrashing’ where the read/write head of the hard drive does so many cycles in quick succession that it causes physical damage to the drive. This can mean that data cant be read from the drive anymore.

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

What is an interrupt?

A

A signal from software, hardware or the internal clock to the CPU to inform it that an action requires immediate attention.

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

Why are interrupts called by software?

A

When applications terminate or request certain services.

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

Why are interrupts called by hardware?

A

When IO operations are complete, when the hardware fails, or for peripheral management (e.g. printer out of paper)

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

Why are interrupts called by timers?

A

Happens at regular intervals to indicate to the CPU that its time for the next process to have processor time. This allows multitasking to take place

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

When do interrupts take place?

A

At the end of the FDE cycle, once one cycle is complete it then checks for any interrupts.

Fetch - Decode - Execute - Interrupts?

50
Q

Does the operating system have to acknowledge interrupts?

A

No. The OS can choose to ignore them based on their priority and the priority of the task currently running.

51
Q

What issues could there be with interrupts?

A

Interrupting important processes - e.g. antimalware.
Have to ensure the CPU returns to what it was doing before it was interrupted after the interrupt is dealt with.
Interrupting during an interrupt.

52
Q

What does ISR stand for?

A

Interrupt Service Routine

53
Q

What is the Interrupt Service Routine?

A

A program stored on the CPU with its own set of instructions that can enter the FDE cycle to deal with an interrupt.

54
Q

What happens when an interrupt occours?

A

The CPU suspends the execution of the current program, process or interrupt of a lower priority. The current values of the registers (PC, MAR, MDR, CIR, etc..) are copied to a stack in RAM called the ‘Stack Frame’ so that they can be accessed later.
The Interrupt Service Routine is then called to deal with the interrupt. A different routine will be called depending on the type of interrupt.

55
Q

What is the benefit of the Stack Frame?

A

Allows many interrupts to be dealt with as once it’s done with one the previous state of the CPU can be restored and the FDE cycle continues.

56
Q

What is the priority of an interrupt compared to a normal program?

A

Almost always of a higher priority

57
Q

What are priorities of interrupts?

A

How important an interrupt is, and how big of an effect not dealing with it will have on the computer.

58
Q

What are the rules with interrupt priotities?

A

An interrupt will only interrupt another interrupt if it is of a higher priority than the one currently being executed. Once the higher priority interrupt is dealt with the previous can continue.

59
Q

What is responsible for allocating processor time and scheduling what is next to be executed?

A

The Operating System - Scheduler Module

60
Q

How does scheduling improve CPU efficiency?

A

While the CPU is processing one thing the OS can be getting the next one ready

61
Q

How does scheduling allow multitasking to take place?

A

A single-core processor can only do one instruction at a time but the task can be split into smaller chunks that the OS can schedule to switch between to give the impression they are happening simultaneously.

62
Q

What are the states that a process can be in?

A

Executed - Finished
Running - Being processed
Blocked - Further IO is required
Suspended - Time expired or moved to the back of the queue

63
Q

What is the Process Ready Queue?

A

The queue of all the processes and the order in which they are going to be executed. The order is determined by an algorithm.

64
Q

What are the objectives of the schedular?

A

Minimise Starvation.
Resolve Deadlocks.
Maximise Throughput.
Be fair to all users.
Provide acceptable response time.
Keep hardware busy.

65
Q

What is process starvation?

A

When a process isn’t processed

66
Q

How does the scheduler prevent process starvation?

A

Ensuring that the process is never not executed.

67
Q

What is deadlock?

A

An issue that occurs in scheduling when two processes arrive at the same time and have the same priority, time and memory requirements. Which one do you execute first?

68
Q

How does the scheduler maximise throughput?

A

Doing as much as possible in as little time as possible.

69
Q

How is the scheduler fair to all users?

A

All users have the same priority and their jobs will be processed at the same chance as someone else with the same job. Admins don’t get priority.

70
Q

How does the scheduler provide acceptable response times?

A

Ensuring no one has to wait too long for their job to be processed.

71
Q

What does a pre-emptive scheduling method mean?

A

Processes can re-join the PRQ after partial completion

72
Q

What does a not pre-emptive scheduling method mean?

A

Processes are fully executed and finished with and do not re-join the process ready queue

73
Q

What is Round Robin Scheduling?

A

Each process is allocated a fixed amount of CPU time. If the process is not complete by the end of this time then its sent to the back of the Process Ready Queue in its semi-completed state and has to wait for its next turn to do more.

74
Q

What is the allocated time for a process called in Round Robin?

A

Time Slice, or Quantum

75
Q

Is Round Robin pre-emptive or not?

A

Pre-emptive - processes return to the PRQ partially completed

76
Q

What are the benefits of Round Robin?

A

Minimises starvation as every process has an equal opportunity of being executed by the CPU. Ensures a reasonable response time.

77
Q

What are the drawbacks of Round Ronin?

A

If a process takes less time to complete than the time slice there may be latency in starting the next process.

78
Q

How does the OS help to facilitate Round Robin?

A

Sets an interrupting clock or interval timer that generates interrupts at specific intervals to move the process on.

79
Q

Where would you use Round Robin?

A

Computers running with a few simple processes

80
Q

Where wouldn’t you use Round Robin?

A

Interfaces as the latency will be noticable.

81
Q

What does FCFS stand for?

A

First Come First Serve

82
Q

What does FIFO stand for?

A

First In First Out

83
Q

Is First Come First Served a pre-emptive scheduling method?

A

No - processes are processed to completion and do not re-join the PRQ

84
Q

What is the first come first serve scheduling method?

A

Processes are completed on a first come first serve basis, each one is processed until it is done before moving onto the next one.

85
Q

What are the drawbacks of First Come First Serve scheduling?

A

Each process must wait its turn, there are no priorities and if a process is taking a long time the subsequent processes have to wait - could lead to starvation

86
Q

What does SJF stand for?

A

Shortest Job First

87
Q

What is Shortest Job First scheduling?

A

The process with the shortest estimated runtime goes to the front of the Process Ready Queue and is executed first.

88
Q

What is needed in order for Shortest Job First to work?

A

The sheduler must know how long each process is going to take - estimated by the OS

89
Q

What are the drawbacks of Shortest Job First scheduling?

A

The Process Ready Queue will need constant sorting when new processes arrive, this takes additional time and processing power.
There is a high risk of starvation for long processes as shorter ones are always done first.

90
Q

Is Shortest Job First a pre-emptive scheduling method?

A

No - Processes are processed to completion

91
Q

What does STR stand for?

A

Shortest Time Remaining

92
Q

Is Shortest Time Remaining a pre-emptive scheduling method?

A

Yes - processes can return to the Process Ready Queue while partially completed.

93
Q

How does the Shortest Time Remaining scheduling method work?

A

If a new process arrives with a shorter remaining time than the current process then the current process is suspended and sent to the back of the process ready queue. The new process with the shorter time remaining is sent to the front of the queue and is executed next.

94
Q

How does Shortest Time Remaining increase throughput?

A

Leads to the gradual reduction in the time remaining for each process, which increases their priority.

95
Q

How does Shortest Time Remaining reduce starvation?

A

Means that the process can be changed before the task is complete. However, there is still a risk of starvation of longer processes.

96
Q

What are the drawbacks of Shortest Time Remaining Scheduling methods?

A

The Process Ready Queue has to be constantly sorted which takes time and processing power to complete.
Requires knowledge of how long the job will take to complete (estimates are produced by the operating system - these could be inaccurate)

97
Q

What does MLFQ stand for?

A

Multi Level Feedback Queues

98
Q

Is a Multi Level Feedback Queue a pre-emtive scheduling method or not?

A

Yes - processes re-join the Process Ready Queue after partial completion or to the back of the process ready queue of another core.

99
Q

What is the priority for the Multi Level Feedback Queue scheduling method?

A

Prioritises:
shorter jobs.
I/O bound processes.

100
Q

How does The Multi Level Feedback Queue scheduling method work?

A

It separates processes into categories based on their processing needs. In a multicore processor each core will have its own process ready queue that has its own priority rating. Each core works on a first come first serve basis.

101
Q

What does the Multi Level Feedback Queue scheduler move processes between queues based on?

A

If its new - New processes are added to the end of level 0.
If the process gives up its own position - added to the end of the current queue that it is in.
If the process is stopped by the schedular - demoted to a lower level queue.
If it gets blocked for input/output - Gets promoted to the next level

102
Q

Why are processes needing I/O promoted to the next level in a MLFQ?

A

Its had to wait for I/O so has lost time - this prevents further time loss. The chance for further I/O requirements is quite high.

103
Q

What are the types of operating systems?

A

Distributed.
Embeded.
Multi-tasking
Multi-user.
Real Time.

104
Q

What is a distributed operating system?

A

A form of parallel processing which spreads the load over multiple computers. The distributed operating system controls and coordinates the computers

105
Q

How does a distributed Operating system work?

A

A single job is split up into several tasks that are run on separate computers. This is controlled by the OS.

106
Q

What are the benefits of a Distributed OS?

A

To the user it feels as though it is happening on a single system.
Load balancing can take place - where heavy processing or traffic can be offloaded to additional servers.

107
Q

What is a multi-tasking OS?

A

An OS that operates on a standalone computer and can do many things at once.

108
Q

How do multi-tasking operating systems work?

A

The processes are given a slice of time on the processor. This applies to single and multi-core systems.

109
Q

What is a multi-user OS?

A

An OS that allows multiple users. This can be on a single machine or via a server.

110
Q

How do Multi-User OSs work on a single computer?

A

Each user has their own set of permissions setup by the admin. All the users have their own accounts with their own data. The data of the other users isn’t accessible to them.

111
Q

How do Multi-user OSs work on a server?

A

The server OS will handle the requests of many users at the same time. The requests come from many terminals connected to the computer.

112
Q

What is an embedded OS?

A

A specific OS designed to run on a specific device in order to carry out a designated task.

113
Q

What are the features of an embedded operating system?

A

Typically have a specific set of Inputs and outputs, minimal user interface, low power requirements, little processing capabilities and little memory.

114
Q

What does RTOS stand for?

A

Real Time Operating System

115
Q

What is a Real Time OS?

A

An operating system that processes information as fast as possible so that it is done in ‘real time’.

116
Q

Where are Real Time OSs used?

A

For safety critical systems like hospitals, automatous vehicles, aeroplanes, military and power stations.

117
Q

When are Real Time OSs used?

A

When processes have to be guaranteed to have executed within a known time frame or acted upon immediately?

118
Q

What is needed so that Real Time OSs can operate?

A

Have high redundancy to handle sudden increases in input data. Means that RTOSs rarely run at capacity. The systems will have ‘fail safes’ that will detect and react to hardware failure.

119
Q

What does BIOS stand for?

A

Basic Input Output System

120
Q

What is the BIOS?

A

A program stored in the ROM or EPROM that starts up the computer once it is turned on

121
Q

What does EPROM stand for?

A

Erasable Programable Read Only Memory

122
Q

What is the function of the BIOS?

A

To initialise and test the system hardware components