Chapter 4: Software Flashcards

1
Q

Definition of utility programs (utilities)

A

part of an operating system which carries out certain functions such as virus checking, defragmentation and screensaver

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

Definition of malware

A

programs (such as viruses, worms and Trojan horses) that are installed on a user’s computer with the aim of deleting, corrupting or manipulating data illegally

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

Definition of anti-virus software

A

software that quarantines and deletes files or programs infected by a computer virus; the software can run in the background or be initiated by the user

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

Definition of heuristic checking

A

checking software for behaviour that could indicated a possible virus

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

Definition of quarantine

A

to isolate (in order to later delete) a file or program identified by anti-virus software as being infected by a virus

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

Definition of defragmentation

A

a process that reorganises sectors on an HDD by rearranging blocks of data so that they are contiguous

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

Definition of contiguous

A

next to each other

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

Definition of back-up

A

make copies of files onto another storage media in case the original file becomes corrupted or is deleted

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

Definition of screensaver

A

software that supplies a still or moving image on a monitor if a computer has been inactive for a period of time

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

Definition of device driver

A

software that communicates with the operating system and translates data into a format understood by the device

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

Definition of descriptor

A

a collection of information about a device plugging into a USB port; this can be vendor ID (VID), product ID (PID) or serial number

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

Definition of operating system

A

software that provides an environment in which applications can run and also provides an interface between computer and human operator

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

Definition of boot up/bootstrap loader

A

a small program that is used to load other programs to correctly ‘start-up’ a computer system

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

Definition of EEPROM

A

stands for electronically erasable programmable ROM

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

Definition of human computer interface (HCI)

A

an interface supplied by the operating system to ‘hide’ the complexities of the software and hardware from the human user

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

Definition of command line interface (CLI)

A

an interface which allows communication with the computer by typing in commands using a keyboard

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

Definition of graphical user interface (GUI)

A

an interface that uses icons to represent apps and tasks which the user can select/launch by clicking on a mouse or using a touch screen

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

Definition of windows icons menu and pointing device (WIMP)

A

an interface that uses a pointing device such as a mouse to select options from screen icons or a menu

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

Definition of post-WIMP

A

a modern touch screen interface system that allows actions such as pinching and rotating

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

Definition of memory management

A

the part of an operating systems that controls main memory

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

Definition of security management

A

the part of an operating system that ensures the integrity, confidentiality and availability of data

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

Definition of hardware management

A

the part of an operating system that controls all input and output devices; it is made up of sub-systems such as printer management

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

Definition of buffer

A

a memory area used to store data temporarily

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

Definition of file management

A

part of an operating system that manages files in a computer (for example, the ability to create, delete, copy, open, close and rename files)

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

Definition of interrupt

A

a signal sent from a device or software to a microprocessor requesting its attention; the microprocessor suspends all operations until the interrupt has been serviced

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

Definition of multitasking

A

a function that allows a computer to process more than one task/process at a time

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

Definition of administrator

A

a person responsible for the upkeep and maintenance of a computer system that involves multi-user function

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

Definition of user account

A

an agreement that allows an individual to use a computer; the user needs a user name and password to enter the user’s area

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

Definition of error handling routine

A

a routine in a program or operating system that recognises and recovers a system from abnormal inputs or hardware faults (for example, recovery from an attempt to divide by zero)

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

Definition of firmware

A

a program that provides low level control for devices

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

Definition of interrupt priority

A

the priority assigned to an interrupt are given a priority so that the microprocessor knows which one needs to be serviced first and which interrupts are to be dealt with quickly

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

Definition of service (an interrupt)

A

when an interrupt is received, some action needs to be taken by the processor depending on what caused the interrupt; until this is resolved (that is, it is serviced), the interrupt cannot be removed to allow the processor to continue

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

Definition of interrupt service routing (ISR)

A

software that handles interrupt requests (for example, when the printer out of paper) and sends a request to the CPU for processing

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

Definition of machine code

A

a binary programming language, a program written in machine code can be loaded and executed without translation

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

Definition of high-level language (HLL)

A

a programming language that is independent of computer hardware, a program written in a HLL needs to be translate into machine code before it is executed

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

Definition of low-level language (LLL)

A

a programming language that is dependent on computer hardware, both machine code and assembly language are LLLs

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

Definition of assembly language

A

a programming language that is dependent on computer hardware, a program written in an assembly language program needs to be translated into machine code before it is executed

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

Definition of assembler

A

a computer program that translates programming code written in assembly language into machine code

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

Definition of compiler

A

a computer program that translates a source program written in a high-level language to machine code

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

Definition of translator

A

converts a program written in a high-level language program into machine code

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

Definition of interpreter

A

a computer program that analyses and executes a program written in a high-level language line by line

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

Definition of Integrated Development Environment (IDE)

A

a suite of programs used to write and test a computer program written in a high-level language

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

Definition of debugging

A

finding errors in a computer program by running or tracing the program

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

Definition of prettyprinting

A

displaying source code using different colours and formatting, which make the code easier to read and understand

45
Q

Definition of report window

A

a separate window in the runtime environment of an IDE that shows the contents of variables during the execution of a program

46
Q

What are the two types of software?

A
  • system software
  • application software
47
Q

General features of system software

A
  • set of programs to control and manage the operation of computer hardware
  • provides a platform on which other software can run
  • required to allow hardware and software to run without problems
  • provides a human computer interface (HCI)
  • controls the allocation and usage of hardware resources
48
Q

General features of application software

A
  • used to perform various applications (apps) on a computer
  • allows a user to perform specific tasks using the computer’s resources
  • may be a single program (e.g. NotePad) or a suite of programs (e.g. Microsoft Office)
  • user can execute the software as and when they require
49
Q

Examples of application software

A
  • Word processor
  • Spreadsheet
  • Database
  • Apps
  • Graphics manipulation software
  • Video editing software
  • Photo editing software
  • Control and measuring software
50
Q

Application software: Word processor

A

Word processing software is used to manipulate a text document, such as an essay or a report. Text is entered using a keyboard and the software provides tools for copying, deleting and various types of formatting.

51
Q

Functions of word processing software

A
  • creating, editing, saving and manipulating text
  • copy and paste functions
  • spell checkers and thesaurus
  • import photos/images into a structured page format
  • translation into a foreign language
52
Q

Application software: Spreadsheet

A

Spreadsheet software is used to organise and manipulate numerical data (in the form of integer, real, date and so on). Numbers are organised on a grid of lettered columns and numbered rows. The grid itself is made up of cells, and each cell is identified using a unique combination of columns and rows, for example B6

53
Q

Functions of spreadsheets

A
  • use of formulas to carry out calculations
  • ability to produce graphs
  • ability to do modelling and ‘what if’ calculations
54
Q

Application software: Database

A

Database software is used to organise, manipulate and analyse data. A typical database is made up of one or more tables. Tables consist of rows and columns. Each row is called a ‘record’ and each column is called a ‘field’. This provides the basic structure for the organisation of the data within the database.

55
Q

Functions of databases

A
  • ability to carry out queries on database data and produce a report
  • add, delete and modify data in a table
56
Q

Application software: control and measuring software

A

Control and measuring software is designed to allow a computer or microprocessor to interface with sensors

57
Q

Functions of control and measuring software

A
  • measure physical quantities in the real world (such as temperatures)
  • to control applications (such as a chemical process) by comparing sensor data with stored data and sending out signals to alter process parameters (e.g. open a valve to add acid and change the pH)
58
Q

Application software: Apps

A

Apps is short for applications - a type of software. They normally refer to software which runs on mobile phones or tablets. They are normally downloaded from an ‘App Store’ and range from games to sophisticated software such as phone banking.

59
Q

What are common examples of apps?

A
  • video and music streaming
  • GPS (global positioning systems - help you find your way to a chosen location)
  • camera facility (taking photos and storing/manipulating the images taken)
60
Q

Application software: Photo editing software

A

Photo editing software allows a user to manipulate digital photographs stored on a computer; for example, change brightness, change contrast, alter colour saturation or remove ‘red eye’. They also allow for very complex manipulation of photos (e.g. change the features of a face, combine photos, alter the images to give interesting effects and so on). They allow a photographer to remove unwanted items and generally ‘touch up’ a photo to make it as perfect as possible

61
Q

Application software: video editing software

A

Video editing software is the ability to manipulate videos to produce a new video. It enables the addition of titles, colour correction and altering/adding sound to the original video

62
Q

What does video editing software include?

A
  • rearranging, adding and/or removing sections of video clips and/or audio clips
  • applying colour correction, filters and other video enhancements
  • creating transitions between clips in the video footage
63
Q

Application software: Graphics manipulation software

A

Graphics manipulation software allow bitmap and vector images to be changed. Bitmap images are made up of pixels which contain information about image brightness and colour. Bitmap graphics editors can change the pixels to produce a different image. Vector graphic editors operate in a different way and don’t use pixels - instead they manipulate lines, curves and text to alter the stored image as required. Both types of editing software might be chosen depending on the format of the original image

64
Q

What are some examples of typical system software?

A
  • Compilers
  • Linkers
  • Device drivers
  • Utilities
  • Operating Systems (O/S)
65
Q

System software: Compilers

A

A compiler is a computer program that translates a program written in a high-level language (HLL) into machine code (code which is understood by the computer) so that it can be directly used by a computer to perform a required task. The original program is called the source code and the code after compilation is called the object code. Once a program is compiled, the machine code can be used again and again to perform the same task without re-compilation.

66
Q

What are some examples of high-level languages?

A
  • Java
  • Python
  • Visual Basic
  • Fortran
  • C++
  • Algol
67
Q

System software: linkers

A

A linker (or link editor) is a computer program that takes one or more object file produced by a compiler and combines them into a single program which can be run on a computer. For example, many programming languages allow programmers to write different pieces of code, called modules, separately. This simplifies the programming task since it allows the program to be broken up into small, more manageable sub-tasks. However, at some point, it will be necessary to put all the modules together to form the final program. This is the job of the linker

68
Q

System software: Device drivers

A

A device driver is the name given to software that enables one or more hardware devices to communicate with the computer’s operating system. Without drivers, a hardware device (for example, a computer printer) would be unable to work with the computer. All hardware devices connected to a computer have associated drivers. As soon as a device is plugged into the USB port of a computer, the operating system looks for the appropriate driver. An error message will be produced if it can’t be found.

69
Q

Examples of device drivers

A
  • printers
  • memory sticks
  • mouse
  • CD drivers
70
Q

System software: Operating systems (O/S)

A

The operating (OS) is essentially software running in the background of a computer system. It manages many of the basic functions. Without the OS, most computers would be very user-unfriendly and the majority of users would find it almost impossible to work with computers on a day-to-day basis

71
Q

What do operating systems allow?

A
  • input/output operations
  • users to communicate with the computer (e.g. Windows)
  • error handling to take place
  • the loading and running of programs to occur
  • managing of security (e.g. user accounts, log on passwords)
72
Q

System software: utilities

A

Utility programs are software that are designed to carry out specific tasks on a computer. Essentially, they are programs that help to manage, maintain and control computer resources.

73
Q

What are some examples of utilities?

A
  • anti-virus (virus checkers)
  • anti-spyware
  • back-up of files
  • disk repair and analysis
  • file management and compression
  • security
  • screensavers
  • disk defragmenter/ defragmentation software
74
Q

What are common features of anti-virus software?

A
  • they check software or files before they are run or loaded on a computer
  • anti-virus software compares a possible virus against a database of known viruses
  • they carry out heuristic checking- this is the checking of software for types of behaviour that could indicate a possible virus; this is useful if software is infected by a virus not yet on the database
  • any possible files or programs which are infected are put into quarantine which:
    • allows the virus to be automatically deleted, or
    • allows the user to make the decision about deletion (it is possible that the user knows that the file or program is not infected by a virus- this is known as a false positive and is one of the drawbacks of anti-virus software)
  • anti-virus software needs to be kept up to date since new viruses are constantly being discovered
  • full system checks need to be carried out once a week, for example, since some viruses lie dormant and would only be picked up by this full system scan
75
Q

What will the back-up utility do?

A
  • allow a schedule for backing up files to be made
  • only carry out a back-up procedure if there have been any changes made to a file
76
Q

How many versions of a file should there be for total security?

A

3

77
Q

What three versions of a file should there be for total security?

A
  1. The current (working) version stored on the internal HDD or SSD
  2. A locally backed up copy of the file (stored on a portable SSD, for example)
  3. a remote back-up version stored well away from the computer (for example, using cloud storage)
78
Q

What facilities does the Microsoft Windows environment offer using the back-up utility?

A
  • restore data, files or the computer from the back-up (useful if there has been a problem and files have been lost and need to be recovered)
  • create a restore point (this is basically a kind of ‘time machine’ where your computer can be restored to its state at this earlier point in time; this can be very useful if a very important file has been deleted and can’t be recovered by any of the other utilities)
  • options of where to save back-up files; this can be set up from the utility to ensure files are automatically backed up to a chosen device
79
Q

What will Time Machine automatically do?

A
  • back-up every hour
  • do daily back-ups for the past month
  • do weekly back-ups for all the previous months
80
Q

What does security software do?

A
  • manages access control and user accounts (using user IDs and passwords)
  • links into other utility software, such as virus checkers and spyware checkers
  • protects network interfaces (for example, through the use of firewalls)
  • uses encryption and decryption to ensure any intercepted data is meaningless without a decryption key
  • oversees the updating of software (does the update request come from a legitimate source, for example)
81
Q

What are some useful background tasks that can be activated when the computer is in an ‘idle’ state?

A
  • virus scans
  • distributed computing applications - these allow apps to use the computer’s resources only when it is idle (for example, an online gaming app)
82
Q

What are common examples of operating systems?

A
  • Microsoft Windows
  • Apple Mac OS
  • Google Android
  • Apple IOS
83
Q

What are some of the functions in a typical operating system?

A
  • Human computer interface (HCI)
  • Multitasking
  • Platform for running of application software
  • Management of user accounts
  • Managing files
  • Hardware peripheral management (including drivers)
  • Memory management
  • Interrupt handling routines
  • Security (manages log on, passwords)
84
Q

Advantages of command line interface (CLI)

A
  • the user is in direct communication with the computer
  • the user is not restricted to a number of pre-determined options
  • it is possible to alter computer configuration settings
  • uses a small amount of computer memory
85
Q

Disadvantages of command line interface (CLI)

A
  • the user needs to learn a number of commands to carry out basic operations
  • all commands need to be typed in which takes time and can be error-prone
  • each command must be typed in using the correct format, spelling, and so on
86
Q

Advantages of graphical user interface (GUI)

A
  • the user doesn’t need to learn any commands
  • it is more user-friendly; icons are used to represent applications
  • a pointing device (such as a mouse) is used to click on an icon to launch the application - this is simpler than typing in commands or a touch screen can be used where applications are chosen by simply touching the icon on the screen
87
Q

Disadvantages of graphical user interface (GUI)

A
  • this type of interface uses up considerably more computer memory than a CLI interface
  • the user is limited to the icons provided on the screen
  • needs an operating system, such as Windows, to operate, which uses up considerable memory
88
Q

Who would use a command line interface (CLI)?

A

a programmer, analyst or technician; basically somebody who needs to have a direct communication with a computer to develop new software, locate errors and remove them, initiate memory dumps (contents of the computer memory at some moment in time), and so on

89
Q

Who would use a graphical user interface (GUI)?

A

the end-user who doesn’t have or doesn’t need to have any great knowledge of how the computer works; a person who uses the computer to run software or play games or stored/manipulates photographs, for example

90
Q

What functions does memory management carry out?

A
  • manages the primary storage (RAM) and allows data to be moved between RAM and HDD/SSD during the execution of programs
  • keeps track of all the memory locations
  • carries out memory protection to ensure that two competing applications cannot use the same memory locations at the same time. If this wasn’t done the following might happen:
    • data would probably be lost
    • applications could produce incorrect results (based on the wrong data being in memory locations)
    • potential security issues (if data is placed in the wrong location, it might make it accessible to other software, which would be a major security issue)
    • in extreme cases, the computer could crash
91
Q

How does security management ensure the integrity, confidentiality and availability of data?

A
  • by carrying out operating system updates as and when they become available
  • ensuring that anti virus software (and other security software) is always up to date, preserving the integrity, security and privacy of data
  • by communicating with, for example, a firewall to check all traffic to and from the computer
  • by making use of privileges to prevent users entering ‘private areas’ on a computer that permits multi-user activity (this is done by setting up user accounts and making use of passwords and user IDs); this helps to ensure the privacy of data
  • by maintaining access rights for all users
  • by offering the ability for the recovery of data (and system restore) when it has been lost or corrupted
  • by helping to prevent illegal intrusion into the computer system (also ensuring the privacy of data)
92
Q

What does hardware management do?

A
  • communicates with all input and output devices using device drivers
  • uses a device drivers to take data from a file (defined by the operating system) and translates it into a format that the input/output device can understand
  • ensure such hardware resource has a priority so that they can be used and released as required
  • manages input/output devices by controlling queues and buffers
93
Q

What is the role of printer management when printing out a document?

A
  • first of all, the printer driver is located and loaded into memory
  • then the data is sent to a printer buffer reading for printing
  • if the printer is busy (or the printing job has a low priority) then the data is sent to a printer queue before it can be sent to the printer buffer
  • it will send various control commands to the printer throughout the printing process
  • it receives and handles error messages and interrupts from the printer
94
Q

What are the main tasks of file management?

A
  • file naming conventions which can be used i.e. filename.docx (where the extension can be .bat, .htm, .dbf, .txt, .xls, etc.)
  • performing specific tasks (for example, create, open, close, delete, rename, copy, and move)
  • maintaining the directory structures
  • ensuring access control mechanisms are maintained (for example, access rights to files, password protection, or making files available for editing or locking them)
  • ensuring memory allocation for a file by reading it from the HDD/SSD and loading it into memory
95
Q

How does the operating system make sure that multitasking operates correctly?

A

It constantly monitors the status of each of the processes under its control:
- resources are allocated to a process for a specific time limit
- the process can be interrupted while it is running
- the process is given a priority so it can have resources according to its priority (the risk here is that a low priority process could be starved of resources)

96
Q

What does the operating system managing different user accounts allow each user to do?

A
  • customise their screen layout and other settings
  • user separate folders and files and to manage these themselves
97
Q

What can interrupts be caused by?

A
  • a timing signal
  • an input/output process (for example, a disk drive or printer requiring more data)
  • a hardware fault (for example, a paper jam in the printer)
  • user interaction (for example, the user presses a key (or keys) on a keyboard, such as <CTRL><ALT><BREAK>, which causes the system to be interrupted)</BREAK></ALT></CTRL>
  • software errors that cause a problem (for example, an .exe file that cannot be found to initiate the execution of a program, two processes trying to access the same memory location, or an attempt to divide by zero)
98
Q

Programs written in high-level languages are easier to:

A
  • read and understand as the language used is closer to English
  • write in a shorter time
  • debug at the development stage
  • maintain once in use
99
Q

Advantages of high-level languages

A
  • independent of the type of computer being used
  • easier to read, write and understand programs
  • quicker to write programs
  • programs are easier and quicker to debug
  • easier to maintain programs in use
100
Q

Advantages of low-level languages

A
  • can make use of special hardware
  • includes special machine-dependent instructions
  • can write code that doesn’t take up much space in primary memory
  • can write code that performs a task very quickly
101
Q

Disadvantages of high-level languages

A
  • programs can be larger
  • programs can take longer to execute
  • programs may not be able to make use of special hardware
102
Q

Disadvantages of low-level languages

A
  • it takes a longer time to write and debug programs
  • programs are more difficult to understand
103
Q

Why do programmers write in an assembly language?

A
  • to make use of special hardware
  • to make use of special machine-dependent instructions
  • to write code that doesn’t take up much space in primary memory
  • to write code that performs a task very quickly
104
Q

Advantages of interpreters

A
  • easier and quicker to debug and test programs during development
  • easier to edit programs during development
105
Q

Advantages of compilers

A
  • a compiled program can be stored ready for use
  • a compiled program can be executed without the compiler
  • a compiled program takes up less space in memory when it is executed
  • a compiled program is executed in a shorter time
106
Q

Disadvantages of interpreters

A
  • programs cannot be run without the interpreter
  • programs can take longer to execute
107
Q

Disadvantages of compilers

A
  • it takes a longer time to write, test and debug programs during development
108
Q

What features do IDEs usually have?

A
  • code editors
  • a translator
  • a runtime environment with a debugger
  • error diagnostics
  • auto-completion
  • auto-correction
  • an auto-documenter and prettyprinting