1.2.2 Flashcards

1
Q

What is applications software?

A

Software which is designed to be used by the end user to perform a task

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

What are some examples of applications software?

A
  • word processor
  • web browser
  • spreadsheet software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is systems software?

A

Software which is responsible for the smooth running of a computer, interacting with hardware devices and generally providing a platform for applications software to run

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

What are some examples of systems software?

A
  • OS
  • device drivers
  • utility programs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is utility software?

A

Software which maintains consistent, high performance of the computer by completing maintenance tasks

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

What are some examples of utility software?

A
  • compression
  • disk defragmentation
  • encryption
  • antivirus
  • backup
  • automatic updatint
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is source code?

A

The code written by the programmer before it has been compiled

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

What is open source software?

A

Software which can be used by anyone without a licence and users have access to the source code

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

What is closed source software?

A

Users must have an appropriate licence to use the software and they do not have access to the source code

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

What are the advantages of open source software?

A
  • anyone can modify and improve software
  • tech in cal support provided by online community
  • can be modified and sold on
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the disadvantages of open source software?

A
  • less secure
  • online support may be insufficient
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are the advantages of closed source software?

A
  • secure
  • regular, thorough, well-tested updates
  • expert support provided
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the disadvantages of closed source software?

A
  • users cannot modify/improve software
  • number of users that can access software is limited
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a translator?

A

A program that converts high-level source code into low-level object code

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

What are the three types of translator?

A
  • compiler
  • assembler
  • interpreter
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the compiler?

A

A program that converts high level code to machine code all at once

17
Q

What are the advantages of using a compiler?

A
  • can be run without a translator present
  • all errors picked up at start
18
Q

What are the disadvantages of using a compiler?

A
  • initial compilation process slow
  • specific to OS/ processor
19
Q

What is an interpreter?

A

A program that translates and executes source code to machine code line by line

20
Q

What are the advantages of using an interpreter?

A
  • not OS/ processor specific
21
Q

What are the disadvantages of using an interpreter?

A
  • slower to run
  • requires an interpreter to run
22
Q

What is an assembler?

A

A program that translates assembly code to machine code

23
Q

What are the 4 stages of compilation?

A
  • lexical analysis
  • syntax analysis
  • code generation
  • code optimisation
24
Q

What happens during lexical analysis?

A
  • all white space and comments are removed
  • all keywords/variable names are replaced with tokens
  • tokens put into symbol table
25
Q

What happens during syntax analysis?

A
  • the tokens are checked agains the grammar rules of the language
  • anything that breaks rules is flagged up
  • abstract syntax tree is created
26
Q

What happens during code generation?

A
  • machine code produced using abstract syntax tree
27
Q

What happens during code optimisation?

A
  • code checked for any areas which can be made more efficient
  • redundant code removed
28
Q

What are linkers?

A

A piece of software which links external modules and libraries included in the code

29
Q

What are static linkers?

A

The modules and libraries are added directly into the main file

30
Q

What are dynamic linkers?

A

The address of the modules and libraries are referenced in the main file

31
Q

What is a loader?

A

A piece of code which retrieves the library or module from the given memory location

32
Q

Why do we use libraries?

A
  • they are error free
  • readily compiled
  • save time
  • ready to use
  • don’t need to reinvent the wheel