1.2 Software extra Flashcards

1
Q

flooExplain why a real-time operating system would be suitable for intensive care units

A

If something happens to patient, response must be immediate and other systems may have delays which could result in patient not receiving treatment in time

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

Why may fcfs be inefficient

A

Once a job starts it prevents others from being processed so a job using a slow resource like a printer will waste processor time

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

Why is scheduling necessary

A

Process as many jobs as possible…
…in least possible time
Ensure all jobs are processed (fairly)
Efficient use of resources / processor time

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

Why is memory management necessary

A

Allows programs to share memory /
allocate memory…
…& protect programs / data from each
other
Allows programs larger than main memory
to run

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

How does memory management do it

A

Converting logical addresses to physical addresses

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

What are pages used for

A

Virtual memory

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

Important statement for paging

A

PHYSICAL DIVISIONS

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

Important statement for segmentation

A

LOGICAL DIVISIONS

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

Similarities between paging and segmentation

A

Use virtual memory / backing store to
swap parts of programs
Allow programs larger than memory to
run / insufficient memory

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

What do both paging and segmentation allow

A

Allows programs to be stored in
memory non contiguously

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

Why do linkers need to be used after compilation

A

The user running the program will not
necessarily have the library installed on
their machine (1) therefore the relevant
code needs to be included within the
final executable (1) – it is the job of the
linker to combine this code (1)

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

Other benefits of using library routines

A

Ready to use, and programmer expertise

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

What are statements checked against in syntax analysis

A

The rules/grammar of the language

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

Extra things for syntax analysis

A

Errors reported as a list, error diagnostics given and receives output from lexical analysis and passed code to code generation

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

Can libraries be written in different language

A

Yes so this is advantage

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

Why is waterfall better for project with static requirements

A

Requirements clearly layer out from start so can be focused on

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

Waterfall for big or small projects?

A

Big

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

How could black box testing be used on a piece of code

A

Tests the expected output… [1]
…based on input [1]
Does not look at the code // looks only
at program specification [1]

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

What is alpha testing

A

Testing done by the programmer

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

How will white box testing be done on a peice of code

A

Using the source code
Check every possible path / condition
statements
Dry Runs / Trace Tables

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

Describe RAD

A

Prototype is created (1)
– (Evaluated and) feedback used to
inform next iteration (1)
– Any changes are made (1)
– Process repeated until…(1)
…prototype becomes final
product. (1)

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

What is instantiation

A

Classes provide blueprints for creating objects, a process known as instantiation.

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

What is a subclass

A

A class that inherits from another class is called a subclass (also a derived class, extended
class, or child class)

24
Q

What is a super class

A

The class from which the subclass inherits from is called a superclass (or parent class)

25
Q

What is encapsulation

A

(information hiding) - Encapsulation is the bundling together of attributes and methods into a class. Attributes are given the private access modifier and publicly accessible methods are provided in the class (getters and setters) to access these attributes. Benefits are that data cannot be changed accidently so reducing the chance of errors, ensures changes to attributes are only made in the way that is intended.

26
Q

Advantages of inheritence

A

reusability and readability. When child class inherits the properties and functionality of parent class, we do not need to write the same code again in child class. This makes it easier to reuse the code, makes us write the less code and the code becomes much more readable

27
Q

Disadvantages of inheritance

A

When you choose to inherit from another class, you have coupled the two classes. What will happen if someone extends the base class? What will happen if someone changes the base class to inherit from another class? Your class may now have acquired attributes and methods that you are not aware of.

28
Q

Data redundancy

A

Unecessary repition of a field in multiple tables

29
Q

Example of general purpose software

A

Word-processor, spreadsheet or graphics package

30
Q

Example of special purpose software

A

Payroll software and hotel booking systems

31
Q

Off the shelf

A

Ready to use

32
Q

Bespoke

A

Get a company to make software to satisfy particular requirements

33
Q

Off the shelf and cost

A

Less expensive since the cost is shared among other people buying the package

34
Q

Off the shelf and documentation/reliability

A

Well documented, well tested and error-free

35
Q

Off the shelf is ready to be

A

Installed immediately

36
Q

Off the shelf and the problem with features

A

May contain a lot of unwanted features and some essential features may be missing

37
Q

Bespoke software and cost

A

More costly and requires expertise to analyse document requirements

38
Q

Bespoke software and features

A

Features customised to user requirements and other features can be added as needs arise

39
Q

Bespoke software and development time

A

May take a long time to develop

40
Q

Bespoke software and errors

A

My contain errors which do not surface immediately

41
Q

What is a virtual machine

A

Software used to take on the function of a machine including executing intermediate code or running an operating system within another

42
Q

Virtualisation

A

Creating a virtual version of something including virtual machines for running other operating systems

43
Q

Platform-independent code

A

The code will run on all operating systems

44
Q

Pros of virtual machines

A

Provides access to programs no longer supported by new OS, allows another computer to be run without having to purchase another one, can test apps built for different platforms

45
Q

Cons of virtual machines

A

May require substantial processing power and memory, sharing resources so can degrade performance of the virtual and real machine. May not provide the full functionality of using on its own

46
Q

Use of intermediate code

A

Independent of the processor architecture so can be used across different machines and OS

47
Q

What can virtual machines make

A

development environments for programmers to test

48
Q

Virtual machines and malware

A

Malware will affect virtual machine not device being used

49
Q

Pros of static linkers?

A

You guarantee the library is combined with the executable code.
More reliable code
You can control exactly which version.

50
Q

Pros of dynamic linkers?

A

The executable program itself as it does not have the libraries merged into it so saving disk space. Multiple programs can share a single copy of the library.
The operating system can maintain the latest versions of all the libraries as part of its regular updates.

51
Q

Cons of static linkers?

A

Bigger file size
Copies of redundant libraries are found and libraries can be out of date

52
Q

Cons of dynamic linkers?

A

If you’ve not got the dynamic library, the program can’t run! You might need to ship copies of the libraries with your code just in case.

53
Q

What do loaders do?

A

validation, initialising registers and copying the program from hard disk/SSD to main memory.

54
Q

What is validation of loaders?

A

Checking permission required to run the program, check memory requirements to ensure

55
Q

What is initialising registers of loaders?

A

Set program counter to entry point