Systems software Flashcards

1
Q

What is paging?

A

Paging is when memory is split up into equal sized sections known as pages.

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

What is segmentation?

A

Splitting up memory into logical sized divisions known as segments, which vary in size.

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

What is virtual memory?

A

Virtual memory is when there isn’t enough RAM left so part of the hard drive is used to act like RAM

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

What is the interrupt service routine?

A

The processor checks the contents of the interrupt register at the end of every Fetch Execute Decode cycle. If there is a high enough priority interrupt the interrupt is scheduled.

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

How does the Round Robin scheduling algorithm work?

A

Each job is given an equal section of processor time to execute, even if the job is not finished it will still move to the next job at the end of the time slice.

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

How does first come first serve scheduling work?

A

Jobs are processed in the order that they come in at, they are completed in full.

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

How do multilevel feedback scheduling queues work?

A

Jobs are given a priority level and are executed in the order of priority.

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

How does shortest job first scheduling work?

A

The shortest task is done first until completion.

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

How does shortest time remaining scheduling work?

A

The shortest job is done first, if a shorter tasks joins the queue then that will be take priority and be completed.

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

What are the different types of operating system?

A

Distributed, embedded, multitasking, multiuser, real-time.

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

What is a distributed OS?

A

A type of operating system that runs across multiple devices allowing the load to be separated across multiple computers processors

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

What is an embedded OS?

A

An embedded OS has a small range of specific tasks that can be completed, with the OS being catered towards a specific device.

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

What is an embedded OS?

A

An embedded OS has a small range of specific tasks that can be completed, with the OS being catered towards a specific device.

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

What is a multitasking OS?

A

A multitasking OS enables the user to carry out tasks seemingly simultaneously. It uses time slicing to switch between programs and applications in memory.

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

What is a multiuser OS?

A

When more than one user can use one computer, (a scheduling algorithm is used so every user gets fair time)

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

What is a real time OS?

A

A real time OS completes tasks in a guaranteed timeframe

16
Q

What is applications software?

A

A software designed to be used by the end user to perform one specific task.

17
Q

What is systems software?

A

Low level software that is responsible for running the computer system smoothly

18
Q

What does a translator do?

A

A translator converts high level source code into low level object code which is ready to be executed by a computer. There are 3 different translators all of which slightly different.

19
Q

What is a compiler?

A

Compilers translate high level language into machine code all at once.

20
Q

What is an interpreter?

A

Interpreters translates and executes code line by line.

21
Q

What is an assembler?

A

An assembler translates assembly code into machine code.

22
Q

What different stages are used when translating code into machine code?

A

Lexical analysis, syntax analysis, code generation, optimisation.

23
Q

What happens in lexical analysis?

A

Whitespace and comments are removed from code.
Keywords and variables are replaced with a token.

24
Q

What happens in syntax analysis?

A

Tokens are analysed against the grammar and rules of the programming language. Any tokens that break the syntax rules are flagged as syntax errors.

25
Q

What happens in code generation?

A

The machine code is created.

26
Q

What happens in the optimisation stage?

A

The code is checked to see if there are any areas that could be made more efficient.

27
Q

What stages are there in the waterfall lifecycle?

A

ADIEM:
Analysis
Design
Implementation
Evaluation
Maintenance

28
Q

What are the benefits and drawbacks of the waterfall lifecycle? When will it be used?

A

Advantages:
Straightforward to manage
Clearly documented
Disadvantages:
Lack of flexibility
No risk analysis
Limited user involvement
When to be used:
Static, low risk projects which require little user involvement

29
Q

What are the stages in the agile methodology?

A

ADIF
Analysis
Design
Implementation
Feedback

30
Q

What are benefits and drawbacks of the agile methodology?
When will it be used?

A

Advantages:
Produces high quality code
Flexible to change user requirements
Regular user input

31
Q

What are the stages of the spiral model?

A

ADIE
Analysis
Design
Implementation
Evaluation

32
Q

What are the benefits and drawbacks of the spiral model?
When will it be used?

A

Advantages:
Thorough risk analysis and mitigation.
Caters to changing user needs
Produces prototypes throughout
Disadvantages:
Expensive to hire risk assessors
Lack of focus on code efficiency
High costs due to constant prototyping
Where will it be used:
Large, risk intensive projects with a high budget.

33
Q

What is Rapid application development?

A

RAD is an interactive methodology which uses partially functioning prototypes which are constantly reviewed and built upon.

34
Q

What are the benefits and drawbacks of RAD?
When will it be used?

A

Advantages:
Caters to changing user requirements
Highly useable finished product
Focus on core features, reducing development time.
Disadvantages:
Poorer quality documentation
Fast pace may reduce code quality
When will it be used:
Small to medium, low budget projects with short time frames.