1.2.1 Systems software [OUT OF SERVICE] Flashcards

1
Q

What is an operating system?

A

A collection of programs that 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 features does the operating system provide?

A
Memory Management
Resource management (eg scheduling)
File management
I/O 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

Why is memory management necessary?

A

It ensures memory is being shared optimally between programs.

To allocate memory to allow separate processes to run at the same time.

To protect processes/data from each other.

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

Define paging.

How does this affect processes in memory?

A

Partitioning memory into fixed-size / equal-size physical divisions called pages.

Processes in memory will be assigned an appropriate number of pages.

Pages are swapped between the main memory and the hard disk as needed.

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

Explain segmentation.

Are segments fixed size?

What do segments represent?

How can a large program be executed in terms of segments?

A

Partitioning memory into variable-sized logical divisions called segments.

Segments vary in size.

Segments represent the structure and logical flow of the program.

A large program can be executed by consecutively running its segments.

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

What is virtual memory?

A

An allocated area of secondary storage where pages of inactive jobs are swapped into to free up enough RAM for the current job.

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

How is virtual memory used when there is not enough RAM?

A

A section of the hard drive acts as RAM when the space in the main memory is insufficient to store programs being used.

Sections of programs currently not being used are temporarily moved into virtual memory through paging.

This frees up memory for other programs in RAM.

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

Explain disk thrashing.

A

When the computer freezes due to pages being swapped too frequently between the hard disk and main memory.

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

What is an interrupt?

What happens if the interrupt is a higher priority than the current task?

Where are interrupts stored? In what way are they stored?

A

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

If the interrupt is a higher priority than the current task, the current routine pauses and resumes after the interrupt is executed.

Interrupts have different priorities which is considered when allocating processor time.

They are stored within the interrupt register in a priority queue.

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

Explain the steps of the Interrupt Service Routine

A

1) The processor checks the interrupt register at the end of each FDE cycle
2) If there is an interrupt with a higher priority than the current process

  • The current contents of the registers in the CPU are transferred onto the system stack.
  • The relevant ISR is loaded into RAM
  • A flag is set to signal the ISR has begun
  • The flag is reset once the ISR has finished

3) If there are no interrupts with a higher priority to the current process
- The contents of the stack are popped back into the registers
- FDE cycle resumes

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

What does SCHEDULING ensure?

A

That all sections of programs being run (jobs) receive a fair amount of processing time.

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

Define Pre-emptive Scheduling.

A

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

EG MLFQ, SRT, RR

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

Define Non-Pre-emptive Scheduling

A

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

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

How does Round Robin work?

A

Each job is given a section of processor time (time slice) within which it runs.

Once each job in the queue has used its first time slice, it is given another time slice until a job has been completed.

Completed jobs are removed from the queue.

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

Round Robin

Pros and Cons

A

Pros
- All jobs will eventually be attended to.

Cons

  • Longer jobs will take a much longer time for completion.
  • RR doesn’t take into account job priority
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Explain First Come First Served

A

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

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

First Come First Served

Pros and Cons

A

Pros
- Straightforward to implement

Cons
- Doesn’t take into account job priority

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

Explain Multilevel Feedback Queues

A

Makes use of multiple queues, each with a different priority. Jobs can be moved between queues.

19
Q

Multilevel Feedback Queues

Pros and Cons

A

Pros
- Takes into consideration different job priorities
Cons
- Difficult to implement

20
Q

Explain Shortest Job First

A

Processes are arranged in a queue ordered by how much time (measured in FDE cycles) each process requires for completion.

21
Q

Shortest Job First

Pros and Cons

A

Pros

  • Ensures the maximum number of jobs are completed.
  • Minimises the average time a process takes to complete.

Cons

  • Requires processor to calculate how long each job will take
  • Processor starvation if short jobs are continuously added to the queue
  • Does not take into account job priority or urgency
22
Q

Explain shortest remaining time

A

Processes are ordered in a queue according to time remaining for completion. This means the least time to completion is serviced first.

23
Q

Shortest Remaining Time

Pros and Cons

A

Pros
+ Short processes can be handled very quickly
+ Ensures the maximum number of processes are completed in a given time, taking into account what has happened so far.

Cons

  • It doesn’t take into account the priority of a process. High priority processes will remain at the back of the queue if they need a lot of time to complete, even if the jobs ahead of them are unimportant.
  • Long jobs may never complete if short jobs keep jumping the queue.
24
Q

What does distributed OS do?

What is distributed computing a form of?

What does using a distributed OS look like on the users end?

A

It controls a number of computers simultaneously in order to undertake a single computer-intensive task.

Distributed computing is a form of parallel processing.

As far as the user is concerned they have access to a single, hugely powerful computer. The OS hides all the details needed to control the system.

25
Q

What is a group of computers called?

In distributed computing, what is each computer responsible for?

How does this work?

A

The group of computers is called a cluster.

Each computer is responsible for running its share of the whole OS.

This is because each computer has some software to control how it communicates, interacts and synchronises its jobs with the other computers on the networked system.

26
Q

How is distributed OS installed?

A

Each computer contains part of the overall OS.

The software that makes up the OS is divided up and distributed amongst computers that are physically apart from each other, although they are connected across a network.

27
Q

What is an embedded OS?

A

It is an operating system built to perform a small range of specific tasks.

It is catered towards a specific device.

It has limited functionality and is hard to update.

28
Q

Explain multi-tasking OS

A

It enables users to carry out tasks simultaneously.
Time slicing is used to switch very quickly between programs and applications in memory.

Examples include Windows, OS X, Linux, Android

29
Q

Explain Multi User OS

A

Allows multiple users on different workstations to access a single powerful computer via a network.

This central computer contains the OS used on all connected terminals.

30
Q

What jobs does a multi-user OS do?

A
  • Allocates resources for jobs
  • Works out most efficient use of FDE cycles
  • Maintains security / privacy between different users.
31
Q

Where is real time OS used?

What is it designed to do?

What occurs if two inputs arrive at the same time?

A

It is used in time-critical computer systems and designed to perform a task within a guaranteed time frame.

If two inputs arrive at the same time, the RTOS programmer can set a priority to them (priority interrupts).

32
Q

What is BIOS?

A

The BIOS (basic input output system) is the first program that runs when a computer system is switched on.

33
Q

What is bootstrap?

A

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

34
Q

What are device drivers?

What are they specific to?

A

Computer programs which allow the OS to interact with hardware.

Drivers are specific to the computer’s architecture. Different drivers must be used for different device types such as smartphones, PCs and games consoles.

Device drivers are also specific to the operating system installed on the device.

35
Q

What are virtual machines?

A

A software implementation of a computer system.

It provides an environment with a translator for intermediate code to run.

36
Q

What is intermediate code?

On what machines can it run?

How fast is it compared to low level code?

A

Code that is halfway between machine code and object code.

It is independent of processor architecture so it can run across different machines and operating systems.

It takes longer to execute than low level code.

37
Q

What can virtual machines be used for?

A

Testing programs

Protection from malware (malware enters VM instead of device being used)

Running incompatible software eg software specific to operating systems

38
Q

What does Kernel do?

A

Loading/unloading applications from memory.
Scheduling tasks to run more efficiently on the CPU.
Memory management
Data security

39
Q

What series of tests does BIOS run?

A
  • POST (Power-on Self-Test) which ensures all hardware (keyboard, disk drives) is correctly connected and functional
  • Checking CPU clock, memory and processor is operational
  • Checking for external memory devices.
40
Q

Give examples of where RTOS can be used.

A

Can be used in production lines with robots
Car engine management units
Washing machines to handle wash cycle properly.

Self driving cars

41
Q

What are device drivers?

A

Computer programs which are provided by the OS, and allow the OS to interact with hardware.

42
Q

When a piece of hardware, such as a keyboard, makes a request to the OS, what program is responsible for communicating this request?

A

The device driver

43
Q

What are device drivers specific to?

A

Computer architecture
Operating system