1.2.2 Flashcards

1
Q

nature of applications

A

Applications software is designed to be used by the end-user to perform one specific task.
They require systems software in order to run.
Examples: desktop publishing, word processing, spreadsheets, web browsers.

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

Utilities

A

They’re a subcategory of system software often sitting alongside operating systems. Lots of operating systems come with utility software’s but you can buy them too.
Utilities are a key piece of system software integral to ensuring the consistent, high performance of the operating system. Each utility program has a specific function linked to the maintenance of the operating system.

  • Keeps computer safe.
  • Keeps it running efficiently.
  • Provides you with useful tools to manage your files and applications.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

types of utilities

A

file management
Enables user to do simple file manipulation, tasks a file management software can perform are moving files from one directory to another, copy files, rename files and list directory contents.

compression
Operating systems provide utilities that enable files to compressed and decompressed. This is used when compressing large files to be transmitted across the Internet and is commonly used to compress scanned files.
As the hard disk becomes full, read/write times slow down. This is because files become fragmented as they are stored in different parts of memory. The disk defragmenter utility rearranges the contents of the hard drive so they can be accessed faster = improving performance.

antivirus
Antivirus is responsible for detecting potential threats to the computer, alerting the user and removing these threats.

automatic update
This utility ensures the operating system is kept up to date, with any updates being automatically installed when the computer is restarted. Updates tackle bugs or security flaws so this ensures the system is less vulnerable to malware and hacking threats.

Backup
The backup utility 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

Open source

A

Is a software for which the source code is freely available to download. The code can be inspected and modified to suit the specific requirements of the user. As the source code is open, users can contribute to fixing errors and vulnerabilities in the code, and can sometimes provide assistance with the product to other users. Also, any number of people could potentially contribute to the software development, and development is often a group effort. Usually free, but not all free software is open source (closed source software can also be free).
The quality of the finished product can vary: some open-source software is extremely high-quality and updated regularly, while some contains a number of bugs and quickly becomes outdated.

ADV: (users) Can share the software with others, free license, can modify the user, the finished quality of the software can vary, although some can be very high quality. Source code available for all to see. (creators) gets their software out there.
DIS: (user) support must be paid for, new versions must come with the same sharing/freedom licences.(creators) little to no financial gain.

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

Closed source

A

Is a software for which the source code is not freely available. It is developed and provided to the user as a fully compiled, executable set of files. The developer often provides support to users after purchase and ensures that the software works as expected. As the user is not provided with the source code, they cannot make changes to the software. Usually sold to end users, although sometimes it is available for free. Importantly, when purchasing software, the user does not buy the software itself, but buys a licence to use the software. Requires appropriate license.

ADV: (user) Support is normally free, although a premium can sometimes be charged. Well supported and tested. The company is obliged to provide software that is fit for purpose. (creators) receive an income from product.
DIS: Software cannot be altered, cannot be shared with others. Source code is not available
Normally developed collaboratively. (users) cost/ongoing subscription fee. (creators) constant demand from community

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

difference between open and closed software

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

Translators

A

A translator is a program that converts high-level source code into low-level object code, which is then ready to be executed by a computer.

High-level languages (Visual Basic, C++, and Python): used to write programs that are independent of the computer architecture they will run on.
- To move from high-level source code to executable machine code requires the source code to be translated.
- There are two main ways in which this can happen: compilation or interpretation.

Low-level language code (assembly language programs): needs to be translated.
- The translators used for assembly language programs are called assemblers.
- There are three types of translator that convert different types of code and work in different ways.

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

differences in operation of interpreters and compilers and assembler

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

hardware and software

A

hardware is physical parts of a computer and its related device, internal and external: motherboards, hard drives, RAM, monitors, keyboards, mice, printers

software is general term covering all computer programs, application, system and utility software.

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

software examples

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

word processor

A

generic application, no specific or narrow purpose. Can use out to carry put different tasks and meet multiple needs. posters, essays, letters, reports

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

number of stages involved in compilation

A

When a compiler is used, high-level code goes through four stages before it is turned into object code that is ready to be executed.

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

database software

A

A specific application highly specific and bespoke, making it essential for creating a serious database application. Creating, managing and using database, only installed for direct need.

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

application software examples

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

stage 1-lexer

A

Starts by converting lexemes in the source code to a series pf tokens. As the lexer reads the source code, it scans the code letter by letter.
When encountering a white space, operator symbol or special symbol, it decided a word (lexeme) is complete. Then checking the lexeme is valid using a predefined set of rules that allow every lexeme to be identified as a valid token.
tokens = keywords, constants, identifiers, strings, numbers, operators, punctuation
white space and comments removed because they are passed over by lexer.

Now we have created our token streams from lexemes in the source code, we put these tokens into a symbol table.

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

stage 2- syntax analysis

A

we have our token stream created from lexemes in the original source code. lexer couldn’t tell us if these token were valid within the grammar (syntax) of the language- SA can.
if the check fails, the sa can report the failure to the user, letting them know the line and location of error and suggesting possible corrections.

18
Q

abstract syntax tree

A

Main output of syntax analysis phase is to create AST. Created from the input token stream, to check everything is correct, When a identifier is added to the AST, the symbol table is checked to see if it exists. Info from AST used to updtae the data type of identifiers.

19
Q

stage 3- code generation

A

The abstract syntax tree produced in the syntax analysis stage is used to produce machine code, object code. This is the executable version of the code before the final step(linker) is run.

20
Q

stage 4-optimization

A

The optimizer may identify redundant or repeated code, and remove or rearrange the code as necessary.Tweaks the code so it will run as quickly and use as little memory as possible.

21
Q

libraries

A

ready compiled and tested programs that can be run when needed. Typically grouped together into software librarians. Most programming languages have extensive libraries of pre-built functions e.g. math library provides common solutions to problems with numbers.

22
Q

dynamic link libraries

A

when programming in the windows OS. These contain sub-routines written to carry out a common task on windows OS, e.g. save as when user needs to save their work as a file. Programmers needs to call the appropriate DLL sub routine with correct parameters and save as box will appear.

23
Q

adv and dis of using library routines

A
24
Q

linker

A

responsible for putting appropriate machine addresses in all the external call and return instructions so all modules and external library routines are linked together correctly. Also links any separately complied subroutines into the object code.

25
Q

static and dynamic linking

A
26
Q

loader

A

Part of the OS that loads executable program file (machine code) not memory ready to be run when using DL, it will also be responsible for loading the required libraries into memory.