1.2.1 Software and software development Flashcards

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

What is an operating system?

A

An operating system is a program or set of programs that manages the operations of the computer for the user.

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

Why do we need an operating system?

A

To act as a bridge between the user and the computer’s hardware, since a user cannot communicate with hardware directly.

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

Give three functions of an operating system?

A

Memory management
Resource management
Interrupt management
Security
User interface
Utility software

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

What 3 process does memory management entail?

A

Tracking the status of memory allocation
Determining storage requirements
Controlling memory usage

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

How does the OS Track the status of memory allocation?

A

Memory is divided up into physical address spaces
The OS initially marks each space as free
When required, the OS loads data into these spaces and marks them as allocated
When the data or instructions are no longer needed, the OS marks the spaces as free again, which allows the data that is stored in these spaces to be overwritten

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

How does the OS determine storage requirements?

A

The OS reserves blocks of addresses for each process to use

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

How does the OS control memory usage?

A

The OS manages swapping between processes and their memory space in order to provide memory access as required.

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

Name 2 methods of partitioning memory?

A

Paging
Segmentation

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

Name 3 features unique to paging?

A

Pages are fixed size.
Pages are stored discontinuously.
Pages are physical divisions.

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

Name 3 features unique to segmentation?

A

Segments are variable sizes.
Segments are stored contiguously.
Segments are logical divisions.

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

What are 2 similarities between paging and segmentation?

A

Both allow programs to be stored non-contiguously
Both use virtual memory

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

How does a multi-level feedback queue work?

A

Initially, processes are added to a queue with a certain level of priority.
If a process uses too much CPU time, it is moved to a lower priority queue and if a process has been idle for a long time, it is moved to a higher priority queue. This helps avoid starvation.
Processes that depend on input/output devices require a lot of processing time, so they are kept in high priority queues, and processes that are quick to complete are served first.

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

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

A

A section 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/segmentation
This frees up memory for other programs in RAM

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

What is an interrupt?

A

An interrupt is a signal from a software program, hardware device or internal clock to the CPU.

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

In-between what steps in the FDE cycle does the interrupt occur?

A

Execute & Fetch

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

What are the 5 steps of the interrupt service routine?

A
  1. Complete the current Fetch-Decode-Execute Cycle.
  2. Check the priority of the incoming interrupt.
  3. If it’s of a higher priority than the current task
    a. Contents of the registers stored in a stack.
  4. The relevant interrupt service routine is loaded by loading the relevant value into the program counter.
  5. When the ISR (interrupt service routine) is complete the
17
Q

What is a scheduler?

A

The scheduler is the operating system module responsible for making sure that processor time is used as effective as possible.

18
Q

Name 5 scheduling algorithms?

A

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

19
Q

How does round robin scheduling work?

A

In round robin scheduling, processes are despatched on a first in first out (FIFO) basis
Each process in turn being given a limited amount of CPU time called a time slice.
If the process does not complete before its time expires, or before a high priority interrupt occurs, the despatcher gives the CPU to the next process.
In order to do this, the operating system sets an interrupting clock or interval timer to generate interrupts at specific times.

20
Q

How does fist come first serve scheduling work?

A

Jobs are processed in the order in which they arrive, with no system of priorities.

21
Q

How does shortest job first scheduling work?

A

The process with smallest estimated running time is next.

22
Q

How does shortest remaining time scheduling work?

A

The process with the smallest estimated time to completion is run next.

23
Q

How does a multi-level feedback queue work?

A

Initially, processes are added to a queue with a certain level of priority.
If a process uses too much CPU time, it is moved to a lower priority queue and if a process has been idle for a long time, it is moved to a higher priority queue. This helps avoid starvation.
Processes that depend on input/output devices require a lot of processing time, so they are kept in high priority queues, and processes that are quick to complete are served first.

24
Q

Name an advantage of a multi-level feedback queue?

A

Services most urgent interrupt first

25
Q

Name an disadvantage of a multi-level feedback queue?

A

Hard to implement

26
Q

Name 5 types of operating systems?

A

Distributed
Embedded
Multitasking
Multi-user
Real time

27
Q

Define a distributed system?

A

A distributed operating system coordinates the communication between computer nodes and makes them component parts that are joined together as a whole.

28
Q

Define a embedded system?

A

Embedded operating systems are used in computers which only serve a specific purpose, such as mobile phones and washing machines.

29
Q

Define a multitasking system?

A

A multitasking operating system manages the computer’s resources to provide the illusion to the user that it is possible to switch between tasks.

30
Q

Define a multi-user system?

A

A multi-user operating system provides the facilities for multiple users to access the same system.

31
Q

Define a real time system?

A

A real-time operating systems perform a task within a guaranteed timeframe.

32
Q

Give 3 examples of real time systems being used?

A

Nuclear power station
Aeroplane
Self driving cars

33
Q

What does POST stand for?

A

Power-on Self-test

34
Q

What does BIOS stand for?

A

Basic Input Output System

35
Q

Where are the BIOS settings stored?

A

Flash memory

36
Q

What is the name of the program used to load the OS into memory?

A

Bootstrap

37
Q

Name 3 roles the BIOS has?

A

Checks the computer is functional
POST test
Run bootstrap

38
Q

Define a device driver?

A

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

39
Q

Define a device driver?

A

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