Unit 4 - Hardware and software Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

What are the two types of software?

A

The two types of software are system software and application software.

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

What are the four types of system software?

A

The four types of system software are: operating systems, utility programs, library programs and translators.

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

What are the two types of application software?

A

The two types of application software are general purpose and special purpose.

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

What is the general purpose of all system software?

A

System software is required to run and manage the computer’s hardware and application programs (a.k.a the system).

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

List three example purposes of system software.

A
  • Allocating jobs to the processor
  • Peripheral management
  • Maintaining security and checking for viruses
  • Software installation
  • Translating program code into machine code.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the general purpose of the operating system?

A

The operating system acts as a bridge between the computer’s hardware and the software.

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

Give an example of a task performed by the operating system.

A
  • Resource management (Processor management, memory management, backing store management and IO management)
  • Provision of a user interface, such as a GUI or command line
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the general definition of utility software?

A

Utility software is designed to analyse, configure, optimise, maintain or otherwise aid in the running of a computer system.

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

Give two examples of utility software.

A
  • Virus checkers
  • Automatic backup and restore
  • Disk defragmentation
  • File compression
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the general definition of a library?

A

A library is a collection of pre-compiled routines that can be used by other programs. An example would be ArrayLists in Java.

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

What is machine code?

A

Machine code is the lowest level of instruction comprised of pure binary. It is the only level of instruction that computers can process.

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

What is the purpose of a translator?

A

A translator is used to translate code from assembly language or a high level language down to machine code.

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

What are the three types of translator?

A

A translator can be: an assembler to translate between assembly and machine code, a compiler to compile a high level language down to executable object/machine code or an interpreter which directly executes the instructions from the high level language.

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

Is a translator an example of a utility program?

A

Nope.

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

What is the general purpose of application software?

A

Application software aids in the completion of different tasks. Examples are: word processors, image editors, internet browsers and email clients.

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

What are the four categories of application software?

A
  • General purpose
  • Special purpose
  • Bespoke
  • Off-the-shelf
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Give two advantages of off-the-shelf software.

A
  • Readily available
  • Low cost
  • Often well-documented and well-tested
18
Q

Give a disadvantage of off-the-shelf software.

A
  • No control over the included features

- Will often contain additional unnecessary features

19
Q

What is used to hide the complexities of a computer’s operation from the user?

A

An API (Application Programming Interface)

20
Q

What does an API do?

A

An API allows the user to issue complex commands in a simple manner, such as by clicking an icon on a desktop.

21
Q

What is the purpose of processor scheduling?

A

Processor scheduling controls which programs can send data to the processor to be processed. Multiple requests are queued.

22
Q

What the purpose of the scheduler module within the operating system of a computer?

A

The scheduler manages how processor time is used between programs. Three common algorithms are: round robin, where each process is allocated some time every second, shortest job next and a priority system.

23
Q

What is backing store management?

A

Backing store management is a process undertaken by the operating system to keep track of where all files are stored on hard disk or external drives and where space is available for data to be written to.

24
Q

What allows the operating system to communicate with I/O devices? (not drivers)

A

The I/O controller.

25
Q

Give three examples of functions of the operating system.

A
  • Memory management
  • Processor scheduling
  • Backing store management
  • Peripheral management of IO device
26
Q

What are the two components of a machine code instruction?

A

A typical machine code instruction holds an operation code (opcode) in the first few bits and an operand in the rest.

27
Q

What is the instruction set of a computer and what decides how large it can be?

A

The instruction set is all the instructions that the computer can understand and execute. The size of the opcode relates to how large the instruction set can be.

28
Q

What is different about assembly language in comparison to machine code?

A
  • The opcode instructions are replaced by mnemonics

- The operand uses decimal or hexadecimal instead of binary.

29
Q

What is the difference between an imperative and declarative high-level languages?

A

Imperative high-level languages consist of commands for the computer to perform, whilst declarative ones are more focused on doing tasks without going into detail on how they are done.

30
Q

Which level of programming languages is portable?

A

Only high-level language are portable, meaning a program written for one type of computer can be used on any other computer if recompiled.

31
Q

What is the source code and object code for an assembler?

A

The source code is the assembly code being input to the assembler. The assembler outputs machine code called object code. Only object code can be executed.

32
Q

What is the source code in programming language translators?

A

The source code is the code input to the translator, such as high-level code for a compiler/interpreter and assembly code for an assembler.

33
Q

What is the object code in a programming language translator?

A

The object code is the machine code that is output by the translator.

34
Q

What kind of code is output from a compiler after detecting errors but before it is saved to machine code?

A

The intermediary code for a compiler is called “relocatable code” as the addresses of the program are not fixed at this point. It becomes machine code when it is saved.

35
Q

Advantages of a compiler instead of an interpreter:

A
  • The object code post-compilation can be distributed and executed without the compiler
  • The object code runs faster than interpreted code
  • The object code is more secure, as binary is much harder to read and modify compared to the high-level code.
36
Q

Between compilers and interpreters, which outputs object code?

A

Only compilers output object code.

37
Q

When is an interpreter more useful than a compiler?

A

An interpreter is more useful when a programmer wants to test a small piece of code but doesn’t want to wait to recompile the whole program.

38
Q

What is bytecode and why is it useful?

A

Bytecode is an intermediate form and is also portable because every computer that can run Java has a Java Virtual Machine that can convert the bytecode into the correct machine code based on the device.

39
Q

System software definition.

A

System software is designed to run a computer’s hardware and application programs. It acts as an interface between hardware and user applications. An example would be the operating system.

40
Q

Utility software definition.

A

Utility software exists to assist the maintenance of a computer. It is not designed to help the user in a way they will notice.