3.4 Computer Systems Flashcards

1
Q

Hardware

A

Physical components, it is a platform on which software executes.

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

Software

A

Software consists of sequences of instructions, called programs. The programs can be understood and executed by the hardware.

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

Software

A

Software are the computer programs that give instructions to the computer system to run.

1) Application software
2) System software

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

Application software

A

Application software is a program designed to perform a specific task that the user interacts daily with.

Commonly used tools such as spreadsheets, web browser and word processing tools are examples of application software.

Application software needs to run on top of system software (operating system) which take care of interaction with the hardware resources.

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

System software

A

System software is concerned with the running of the computer.

It’s purpose is to control the computer hardware and manage the application software.

The most important piece of system software is the operating system.

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

Operating systems

A

Operating systems are pieces of software that regulate interactions between software and hardware.

There are lots of different operating systems. The most popular are:
• Windows
• macOX
• Linux
• Android

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

Functions of an operating system

A

• Error handling
• Program management
• Memory management
• Interaction with the user
• Processor management
• Input and output
• Security
• File management

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

What does the OS handle management of?

A

• Application management
• Processor management
• Memory management
• Security
• Input / Output devices

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

Application management

A

• Application software does not need to concern itself with interaction and complexities of managing the hardware because it is dealt with by the operating system.
• Application software needs to run on top of the operating system.
• The operating system takes care of the interaction with the hardware resources.
• The applications manager allocates memory space and determines time needed by a processor for an application to run.

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

Processor management

A

• Allows multiple applications to be run simultaneously by managing the processing time between between applications and cores and switching processing between applications very quickly.

• Multiple applications will access the processor resources via a schedule that alternates processes between applications

• High priority applications will have more CPU time, but it means that lower priority applications will take longer to run.

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

Memory management

A

• Distributes memory resources between programs and manages transfer of data and instruction code in and out of memory.
• Ensures that each applications does not use and excessive amount of memory.

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

Input/output devices

A

• OS controls interaction with input (e.g. keyboard) and output (e.g. monitor) and storage (e.g. hard disk) using hardware devices.

• Allows users to save files to the hard disk and print documents for instance.

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

Security

A

• Tools such as anti-virus software and fireballs help protect the computer from attack.
• In addition require for passwords and control of access.

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

Utility programs examples

A

• Disk defragmentation
• Auto backup and restore
• Anti-virus
• Firewall
• Compiler

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

Disk defragmentation

A

• Organises files on a disk to be located contiguously.
• Often after defragmentation performance is improved because a file can be accessed from one location on a disk.
• Files can become fragmented when the original file increases in size and no longer fit into a contiguous location and has to be split over multiple locations.

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

Auto back up and restore

A

Ability to automatically back-up files on the computer, either using cloud storage or another form of secondary storage.

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

Anti-virus

A

Scans the computer to identify malicious code.

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

Firewall

A

Scans input and output packets and prevent malicious packets entering the computer.

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

Compiler

A

Converts high level computing code into low level.

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

High level languages

A

• High level languages are those that are relatively easy for programmers to use, as they involve a large amount of English language.
• One command in a high level language will relate to several in a low level one.
• Using high level languages, allows programmers to write applications that are portable across devices and different platforms.
• Computers can only understand Machine Code, so all higher-level programming languages must be translated before the computer can understand them.
• Uses mnemonics to help understand it better.

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

Low level languages

A

• Machine code is instructions written in binary, where one instruction relates to one thing that the computer needs to do.
• Low level languages are those extremely close to machine languages.
• This means that the syntax are quite far away from human language but the instructions have a 1-1 correspondence to machine code.

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

Examples of low level languages?

A

• Machine code
• Assembly language

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

Machine code

A

• Computers use machine code.
• Machine code uses 0s and 1s (binary).
• It is almost impossible for humans to understand programs written in machine code.
• Every processor has its own specific machine code instruction set.

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

Assembly language

A

• Assembly language must be translated by an assembler for the computer to understand it, but has a 1:1 correspondence with machine code - one instruction in assembly language corresponds to one instruction in machine code.
• This means that assembly language is also specific to a processor or family of processors, and can’t be used across different pieces of hardware.
• Assembly language is often used to develop software for embedded systems and for controlling specific hardware components.

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

Advantages and disadvantages of LLL versus HLL

A

+ Since they are nearer to machine code, they are faster to process.
+ Low level languages are appropriate for developing new operating systems, embedded systems and hardware device drivers

  • They are specific to the piece of hardware they are written for, and cannot be run on any other hardware.
  • Very challenging and requires a great deal of knowledge and experience.
26
Q

Advantages and disadvantages of HLL versus LLL?

A

+ These can be easily moved across devices and platforms.
+ Relatively straightforward
+ Can be debugged in a much easier manner than in low-level languages.
- Slower processes as they have to be translated through several layers of code before reaching the hardware.
- Needs a translator.

27
Q

Program translators

A

Program translators allow programs to be translated into machine code so the than programs can be run on a computer.

• Interpreter
• Compiler
• Assembler

28
Q

Interpreter

A

Interpreter converts high level languages into machine code one instruction at a time on-the-fly while the program is running. Each instruction is converted to machine code once the previous instruction has been executed.
• Interpreters are good for debugging code because the program stops as soon as the error has been found.
• However running code this way is much slower running compiled code. The machine code is not saved.

29
Q

Compiler

A

A program that converts high level languages into machine code before the program is run.
• A compiler saves the machine code, so the source code is no longer needed.
• A compiler allows a program to be run faster that interpreted code.
• Software is normally distributed as compiled machine code. For proprietary software this is good because other people cannot copy the code and use it for their own applications.

30
Q

Assembler

A

Assembler converts assembly language instructions into machine code.

31
Q

Integrated development environment (IDE)

A

IDEs will be specific to a certain high level language.
They will normally consist of:
• Source code - allowing the writing and editing of code.
• Interpreter - allows source code to be translated into machine code one line at a time for testing.
• Automation tools - automate tasks such as finishing off key words and indenting on your behalf.
• Debugger - Identifies logic and syntax errors and shows where they are.
• Compiler - converts the entire source code into machine code so it can be run as its own individual program file.

32
Q

Arithmetic Logic Unit - ALU

A

• Part of CPU
• Carries out arithmetic calculations: Addition, subtraction, shifts (multiplication and division).
• Carries out logical operations: AND, OR, NOT, Less than <, Greater than >.

33
Q

Control unit

A

• Part of CPU.
• Manages the execution of instructions.
• Ensures all components perform tasks at the correct time.
• Responsible for the fetch-execute cycle.
• Analogy: a conductor for an orchestra.

34
Q

Clock

A

• A signal to synchronise tasks.
• Clock cycle is known as a tick.
• Each cycle has: High state, Low state.

35
Q

Bus

A

•The system bus connected the 3 main components together: CPU, Memory, Input/Output.
• The system bus consists of three separate buses:
- Control bus (controls signals)
- Address bus (memory addresses)
- Data bus (instructions and data items)
• Bus is a collection of wires through which data/signals are transmitted from one component to another.

36
Q

Register

A

• A register is a store with its own identity used for storing a single number temporarily.
• It could represent an address, a value, an instruction, or the status of something.
• For example an 8 bit CPU has a number of 8 bit registers.
• Registers are used to hold temporary data while a software program is running. As the CPU, processes the data, the software program will shift the data in and out of registers.
• It is much faster to shift data to and from the registers rather than in and out of the CACHE or RAM and so this speeds up the processing time.

37
Q

Processors - OS

A

• The OS manages the use of the CPU.
• The OS needs to manage any tasks and the processes that take place for those tasks.
• Most OSs allow multi-tasking.
• All of these programs will want to use the CPU.
• Each program will share the CPU time
• This is known as scheduling.

38
Q

Factors that can affect the performance of the CPU?

A

• Clock speed - faster speed = better performance
• Number of processor cores - more cores = better
performance
• Cache size - larger size = better performance
• Cache type

39
Q

Clock speed

A

• Clock speed is measured in Hertz (Hz)
• Hz is the number of clock cycles per second
• A 3 GHz processor ticks 3 billion times per second
• The higher the Hz the more instructions can be carried out per second

40
Q

Number of cores

A

• Processors can have more than one core
• The core receives instructions and performs calculations
• More cores contribute to an increase in performance because :
• Parallel processing – allows different instructions from the same program to be run at the same time
• Multi-tasking – allows instructions from more than one program to run at the same time.

• Dual-core does not mean that performance will double as not all instructions can be run in parallel
• It may need to wait for other instructions to finish first

41
Q

CACHE

A

• Cache is super fast memory that is built into the CPU
• Recently used instructions are stored in cache so they can be used again quickly, without having to fetch them from main memory (RAM)
• This improves the performance of the CPU
• Instructions can be retrieved more quickly from the cache than from main memory

42
Q

Levels of CACHE

A

L1 cache - Part of the CPU. Fastest to access. Smallest size. Each core of a multi-core processor as its own L1 Cache. Stores the most frequently used instructions/data.
L2 cache - Can also be built into the CPU but will be slower. Further away from the processor. Larger so more memory available. After L1 is full, the most frequently used instructions/data are stored in L2.
L3 cache - Larger but slower. Not part of the processor and will be shared by multi-core processors. After L2 CACHE is full, the next most frequently used instructions/data are stored in L3.

43
Q

Fetch-Execute Cycle

A

• During one cycle:
• Fetch next instruction from main memory
- Control Unit (CU) sends signal to main memory to say it’s ready for next instruction
• Decode instruction
- translates the instruction to work out what it is
• Execute the instruction is executed (carried out)
- run the code
- may include reading, writing from/to main memory

44
Q

Memory

A

• Cache memory – used to store frequently used
instructions/data
• Main memory – data and instructions are passed to and from main memory to the CPU

45
Q

Main memory

A

• Main memory needs to be allocated to processes that are running
• The OS will allocate memory addresses for processes to use, either for their instructions or for the data they are using
• The OS must manage memory carefully so that data is always available to processes that are running

• Memory is limited so allocated memory space often needs to be released so that it can be used for another purpose
• The OS will release memory addresses that are no longer required

• If memory space becomes full and it is not possible for the OS to release memory space, then it will use virtual memory
• This is an area of secondary storage that extends the amount of main memory available
• Secondary storage is much slower than main memory

46
Q

2 types of main memory

A

• Random Access Memory (RAM)
• Read Only Memory (ROM)
• Main memory is accessed directly by the CPU using the system bus

47
Q

Random access memory (RAM)

A

• RAM stores the data that is currently in use by the CPU, as well as programs currently running.
• It is a volatile memory which means that once the power is lost, the data is wiped.
• It is a fast memory, and the more RAM a computer has, in general the faster the computer is able to run, so people will sometimes add RAM to improve performance.
• It is also constantly being changed and rewritten.

48
Q

Read only memory (ROM)

A

• ROM stores the instructions that are required to boot up the computer (known as the BIOS), and nothing else.
• This means that it is usually a lot smaller than RAM, although in an embedded system, there is likely to be a lot more ROM than RAM due to the functionality of the device.
• It is very difficult (or sometimes impossible) to change the contents of ROM.
• Unlike RAM, ROM is non-volatile which means that the data stored on ROM isn’t lost when the computer is switched off.

49
Q

Secondary storage

A

• Secondary storage refers to any other storage device that can’t be directly accessed by the CPU, but is able to store data even when the computer is switched off (non-volatile).
• We need to have secondary storage to be able to store files and software on them.
• Data is not lost when the computer is turned off.
• Data and instructions that are needed by the CPU have to be passed to RAM a and then onto the processor.
• Secondary data can internal to the base unit or external to the base unit.
Hard disk, solid state memory, magnetic tape, CD/DVD/Blu-ray
• Hard disk drives and solid state drives can be found inside a computer and also can be external and therefore portable:
memory card, USB memory stick.

50
Q

Differences between secondary storage and RAM

A

• Secondary storage is much slower than DAM.
• Secondary storage is non-volatile so data is not lost when the computer is turned off.
• It can therefore be used to store data and programs in the long term.

• Secondary storage can also be used as virtual memory.
• If RAM becomes full then storage space on the secondary storage can be allocated as virtual memory.

51
Q

Types of secondary storage

A
  1. Solid State such as Solid State Drives (SSDs), USB sticks, SD cards and other flash memory
  2. Optical such as CDs, DVDs and Blu-Rays
  3. Magnetic such as Hard-Disk Drives (HDD) and magnetic tape
52
Q

Magnetic storage

A

• Magnetic storage uses a series of platters (disks) which have been coated in a magnetic material.
• Each one has data encoded in them as a series of changes of direction of magnetisation.
• As the discs spin, the read head is then able to recognise these changes as a string of data.
• Magnetic HDDs are a very reliable way to store data, although they are susceptible to magnetic fields, and due to the moving parts can be damaged by dropping them.
• However, they are very cheap, and often have a high capacity (200GB to 1TB are common in computers these days, although they can go to 4TB and beyond).

53
Q

Solid state storage

A

• SSDs have no moving parts so are less likely to suffer damage
• SSDs don’t make any noise
• Access to data on SSDs is much faster than HDDs
• SSDs are smaller and use a lot less power than HDDs
• This makes them suitable for portable computers eg phones, tablets and laptops
• BUT they are more expensive than HDDs
• SSDs use electrical circuits to store data in millions of transistors (tiny switches) which can be either on or off

54
Q

Optical

A

• Optical drives use lasers to burn pits into the surface of discs
• It reads pits and lands ( where there is no pit) on discs
• When writing, a laser beam can be used to burn pits into discs
• The change from a pit to a land represents a 1
• Whereas no change represents 0
• The optical drives are very cheap and can be disposable
• They can be easily scratched which can make them unreadable
• They are very portable and can be used in computers and also for multimedia including music and videos

55
Q

Cloud storage

A

Cloud storage refers to the use of magnetic (and increasingly solid state) storage at a remote location to store data. This is then accessed via the internet connection on the device.

56
Q

Why cloud storage has grown?

A

• Bandwidth of mobile networks has increased, including the introduction of 4G, making fast internet more readily available.
• Increased use of mobile devices which have less space for local storage.
• Great improvements in network security giving people more confidence to store their data out of sight.
• There is a broader range of services available, including ones with better interfaces and integration with current systems.
• Storage is getting increasingly cheap, so cloud computing companies are able to offer much better rates than before.
• Many companies have now developed models which make use of cloud computing in day-to-day work.

57
Q

Advantages of cloud storage

A

• Data can be accessed from any device anywhere in the world (as long as there is an internet connection).
• Can allow for automatic back-ups of data.
• Can share data with other users easily without having to wait for it to be transferred.
• Increases the amount of storage that is available on a device quickly and easily without the need for additional weight or bulk.
• Reduced cost as users don’t need to invest in local storage.

58
Q

Disadvantages of cloud storage

A

• Increased security risks with a centralised system that is outside your control.
• It relies on having a high-bandwidth internet connection to be able to access the material.
• Whilst it avoids an initial outlay of cost for hardware it could cost more in the long-term due to monthly subscription payments.
• You are relying on the service who is providing the cloud storage. If they go down, your data could be lost.
• Potential for data privacy issues, with other people able to access your data.

59
Q

General purpose systems

A

General purpose systems are used for lots of different things and include desktop and laptop computers as well as smartphone and tablets.

60
Q

Embedded systems

A

Embedded systems are where the computer works as part of a larger system, for example the computer system in a car, or a micro controller in a washing machine. They are only designed to do one specific task, so are often simpler than a general purpose computer.

• In an embedded systems, the main memory and CPU are just one component, whereas they are physically separate in a non-embedded system.
• The programs used by an embedded device are also likely to be stored in__ ROM__ instead of RAM.
• This means that an embedded system is likely to have more ROM than RAM and indeed, less likely to require secondary storage.

Washing machine, digital camera, television, microwave.

61
Q

John Avon Neumann

A

• He identified that data and programs could be stored in the same memory. This means that only one set of RAM is required for storing both data and programs rather than having two separate sets of memory.
• Many modern computers still follow the Von Neumann design, although other designs like Harvard architecture are also used in many smart phones.

62
Q

Internet of things

A

• Embedded systems exist in many devices that are connected to networks and the Internet
• This is known as he Internet of Things (IoTs)
• This could include smart switches that turn on
controlled by your smart phone
• Centrally heating turning on automatically when you arrive home
• Gas meters sending automatic readings to the gas provider