Systems Software (1.2.1) Flashcards

1
Q

What is an operating system?

A

A collection of programs that work together to provide an interface between the user or application program and hardware.

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

What are the main features an OS provides?

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 is memory management?

A

When the operating determines and allocates memory fairly between multiple programs.

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

What are the three main memory management methods?

A
  • Paging
  • Segmentation
  • Virtual memory
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is paging?

A

When memory is split into equal sized sections known as pages (Each program is made from a certain number of equally-sized pages). A page table would be used to identify the memory location of each page i.e. map the logical location to the physical location.

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

What is segmentation?

A

When the memory is split into logical sized divisions called segments which vary in size. They represent the structure and logical flow of the program and the segments are allocated blocks of codes meaning only part of the program needs to be loaded into memory.

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

What is the difference between paging and segmentation?

A
  • Paging uses equally sized sections called pages.

- Segmentation uses variable-sized, logical sections called segments.

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

What is virtual memory?

A

When part 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.
Freeing up memory in RAM for other programs.

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

When is virtual memory used?

A

When their is insufficient space in RAM to store programs being used.

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

What is a common issue between paging, segmentation and virtual memory?

A

Disk thrashing

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

What is disk thrashing?

A

When the computer freezes because pages are being swapped too frequently hard disk and main memory.
More money is spent transferring pages than running the program.

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

What are interrupts?

A

Signals generated by software or hardware to alert the processor that a process needs attention.

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

What is the interrupt service routine?

A

1) The processor checks the contents of the interrupt register ​at the end of each Fetch-Decode-Execute cycle​.
2) If an interrupt exists that is of a higher priority to the process being executed, the ​current contents of the special purpose registers in the CPU are temporarily transferred into a stack​.
3) The processor then responds to the interrupt by ​loading the appropriate interrupt service routine (ISR)
4) If there are more interrupts to be serviced, the process described above is repeated until all priority interrupts have been serviced.
5) If there are no more interrupts or interrupts are of a lower priority to the current process, the contents of the stack are transferred back into the registers in memory. 6)The Fetch-Decode-Execute cycle resumes as before. into RAM​.

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

What do scheduling algorithms do?

A

Ensure all ​sections of programs being run​ (known as ​‘jobs’​) receive a ​fair amount of processing time.​

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

What happens in pre-emptive scheduling algorithms?

A

Jobs are actively made to start and stop by the operating system.
e.g. Multilevel Feedback Queues, Shortest Remaining Time, Round Robin

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

What happens in non pre-emptive scheduling algorithms?

A

Once a job is started, it is left alone until it is completed. e.g. First Come First Served, Shortest Job First

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

What are the 5 main scheduling algorithms?

A
  • Round robin
  • First come first served
  • Multilevel feedback queues
  • Shortest job first
  • Shortest remaining time
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What is round robin scheduling?

A

Each job is given​ a section of processor time​ - known as a ​time slice​ - within which it is allowed to execute.

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

Round robin ADVs

A

-Ensures each job is carried out

20
Q

Round robin DISADVs

A
  • Longer jobs will take a longer time to complete because they are inefficiently split.
  • Doesn’t consider job priority.
21
Q

What is first-come first served scheduling?

A

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

22
Q

FCFS ADVs

A

-Straightforward to implement

23
Q

FCFS DISADVs

A

-Doesn’t allocate processor time based on priority

24
Q

What is multilevel feedback queue scheduling?

A

This makes use of multiple queues, each which is ordered based on a
different priority.

25
Q

Multilevel feedback queue ADVs

A

-Jobs are prioritised

26
Q

Multilevel feedback queue DISADVs

A

-Hard to implement due to deciding on job priorities.

27
Q

What is shortest job first scheduling?

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.

28
Q

Shortest job first ADVs

A

-Waiting time is minimised in batch systems

29
Q

Shortest job first DISADVs

A
  • Some job lengths may not be able to be calculated

- Risk of processor starvation if short jobs continue to be added (longer jobs may not be carried out)

30
Q

What is shortest remaining time scheduling?

A

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

31
Q

Shortest time remaining DISADVs

A

Risk of processor starvation for longer jobs if short jobs are
added to the job queue.

32
Q

What is processor starvation?

A

When a process does not receive enough processor time to execute and complete.

33
Q

What are 5 types of operating system?

A
  • Distributed
  • Embedded
  • Multi-tasking
  • Multi-user
  • Real-time
34
Q

What is a distributed OS?

A

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

35
Q

What is an embedded OS?

A

An OS built to perform a small range of specific tasks and catered to a specific device. They have limited
functionality and hard to update but they consume significantly less power than other types of OS.
e.g. washing machine, in-car system

36
Q

What is a multi-tasking OS?

A

Multi-tasking operating systems enable the user to carry out tasks seemingly simultaneously. This is done by using time-slicing to switch quickly between programs and applications in memory.

37
Q

What is a multi-user OS?

A

Allows multiple users to use the same system. Therefore a scheduling algorithm must be used to ensure processor time is shared fairly between jobs. Without a suitable scheduling algorithm, there is a risk of processor starvation.

38
Q

What is a real-time OS?

A

An OS which is designed to perform a task within a guaranteed time frame, used for time-critical tasks.
e.g. the management of control rods at a nuclear power station, self-driving cars: any situation where a response within a certain time period
is crucial to safety.

39
Q

What is the BIOS?

A

The Basic Input Output System is the first program that runs when a computer system is switched on and is responsible for running various key tests before
the operating system is loaded into memory (bootstrapping). It is stored in the ROM and is critical to a computer system.

40
Q

What tests does the BIOS perform?

A
  • POST (Power-on self-test): ensures that all hardware (keyboards, disk drives) are correctly connected and functional
  • Checking the CPU clock, memory and processor is
    operational
  • Testing for external memory devices connected to
    the computer
41
Q

What is the bootstrap/bootloader?

A

The program which loads the OS from the hard drive to main memory.

42
Q

What are device drivers?

A

Computer programs provided by the operating system which allow the operating system to interact with hardware. They are specific to the device and OS.

43
Q

How do device drivers work?

A

When a piece of hardware is used, such as a keyboard, it

is the device driver that communicates this request to the operating system which can then produce the relevant output.

44
Q

What is a virtual machine?

A

A theoretical computer in that it is a

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

45
Q

What is intermediate code?

A

Code that is halfway between machine code and object code. This is independent of the processor architecture so can be used across different machines and operating systems.

46
Q

What are the uses of virtual machines?

A
  • To test programs on different operating systems without the expense of buying multiple devices but it can be slower.
  • To protect from malware- it will affect the virtual machine, not the hardware.
  • To run incompatible software e.g. mac software on windows