APPLICATIONS GENERATION Flashcards

(23 cards)

1
Q

What is an application?

A

a program that can be run on a computer allowing the user to carry out specific tasks

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

What is utility software?

A

system software with a specific purpose usually related to maintenance

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

What are some examples of utility software?

A
  • disk defragmentation - disk defragmenter utility rearranges the contents of the hard drive so they
    can be accessed faster, thus improving performance
  • antivirus - responsible for detecting potential threats to the computer, alerting the user and removing these threats
  • backup - automatically creates routine copies of specific files selected by the user. How often files are backed up is also specified by the user. This means that in the event of a power failure, malicious attack or other accident, files can be recovered
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is open source software?

A
  • software whose source code is freely available to view, redistribute or modify
  • can be used without a license
  • distributed with the source code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is closed source software?

A
  • requires the user to hold an appropriate
    license to use the source code.
  • users cannot access the source code as the company owns the copyright license
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the advantages of open source software?

A
  • can be modified - improvements made and also can be made more specific for certain problems
  • usually free
  • new features regularly added as the code is continually being developed in a collaborative way
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the disadvantages of open source software?

A
  • lack of support
  • lower security as it may not be developed in a controlled environment
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the advantages of closed source software?

A
  • regular well tested updates
  • high level of security
  • support provided by company that owns the software
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the disadvantages of closed source software?

A
  • restrictions on use
  • cost
  • software can’t be modified by users
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is a translator?

A

a program which converts code from one computer language to another

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

What are the 3 types of translator?

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

Compiler

A
  • translate high-level code into machine code all at once
  • initial compilation process is longer than using other translators
  • compiled code is platform-specific
  • doesn’t require original source code to be executed
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Interpreter

A
  • translate and execute code line-by-line
  • calls subroutines within its own code to execute a program
  • produce an error if a line contains an error
  • slower than running compiled code
  • correct interpreter required to run on different platforms
  • code is platform-independent
  • useful for testing code
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Assembler

A
  • assembly code is a low-level language that is platform specific
  • assemblers translate assembly code into machine code
  • each line of assembly code is equivalent to almost one line of machine code.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What are the 4 stages of compilation?

A
  • 1 - lexical analysis
  • 2 - syntax analysis
  • 3 - code generation
  • 4 - code optimisation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Lexical analysis

A
  • whitespace and comments are remove
  • keywords and identifiers are replaced with tokens
  • information about tokens is stored in a symbol table
17
Q

Syntax analysis

A
  • tokens analysed against rules of the programming language
  • syntax errors are flagged up
  • abstract syntax tree is produced
18
Q

Code generation

A
  • abstract syntax tree used to produce machine code
19
Q

Code optimisation

A
  • object code is made as efficient as possible by
    removing redundancies to produce code that gives the same result
  • aims to reduce execution time
  • very time-consuming stage
20
Q

What is a linker?

A

a program which places the appropriate machine addresses in the call and returns instructions of a compiled program so all the other required object code files and modules are linked together

21
Q

What is a loader?

A

a program that loads the executable object program and its associated libraries into memory before it is run

22
Q

What are libraries?

A

a collection of programs which are already compiled and can be loaded into a program and run whenever required

23
Q

What are the advantages of using a library?

A
  • error-free
  • save time and effort of developing and testing modules
  • can be reused across multiple programs