3.4 Computer Systems Flashcards

1
Q

Computer

A

An electronic device that takes an input, processes data, and delivers an output.

In order to do this a computer follows a set of instructions known as a computer program.

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

Fetch execute cycle

A

• Fetch stage - Fetch the next instruction from main memory (RAM), bring it back to the CPU.
• Decode stage - Inspect the instruction and work out what is is that it needs to do.
• Execute stage - Carry out the instruction. This could cover many things such as: going back to main memory and grabbing some data, performing a calculation, storing information back into main memory.

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

Von Neumann Architecture

A

Describes a system where the CPU runs programs stored in memory.
Programs consist of instructions and data which are stored in memory addresses.

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

CPU:
Arithmetic logic unit

A

• Responsible for carrying out arithmetic calculations and making logical decisions.

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

CPU:
Control unit

A

• Sends signals to control how data moves around the CPU.
• Decodes the current instruction.

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

CPU:
CACHE

A

• Small amount of very fast memory.
• Provides fast access to frequently used instructions and data.

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

CPU:
Clock

A

• Electronic unit that synchronises related components by generating pulses at a constant rate.

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

CPU:
Registers

A

• Tiny, super fast pieces of onboard memory inside the CPU.
• Each has a very specific purpose.

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

CPU:
Busses

A

Collection of wires through which data and instructions are transmitted from one component to another.

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

Factors that affect the performance of CPU’s

A

• Clock speed
• CPU cores
• CACHE

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

Clock speed

A

• Measured in Hz
• Number of cycles per second.
• Modern processors operate at billions of cycles per second, Gigahertz (GHz)
• 3.2 GHz clock speed = 3.2 billion instructions can be fetched per second.

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

Cache size

A

• Temporary storage of data and instructions being read to and written from.
• Located on board or very near to the CPU.
• Stores copies of recent data and instructions.
• Much quicker getting items from the cache than from main memory (RAM).
• Trying to avoid going and getting instructions and data from memory if we don’t need to as it costs time.
• A larger CPU cache gives the CPU faster access to more data it needs to process.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
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.

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

Number of cores

A

• A core is a complete copy of a CPU.
• CPUs with more than one core have more power to run multiple programs at the same time.
• Doubling the number of cores doesn’t simply double the overall speed.
• CPU codes have to communicate with each other, this takes time.
• Many programs are not designed to make use of multiple cores.

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

Embedded systems

A

A computer system with a dedicated function within a larger mechanical and electrical system.

• Traffic lights
• Domestic appliances
• Factory equipment
• Engine management systems
• Hospital equipment

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

Properties of embedded systems

A

Properties of embedded systems compared to general purpose computers include:
• Low power consumption
• Small size
• Rugged operating systems
• Low cost per unit
• More efficient at doing their task
• Easier to design
This of course comes at the cost of limited processing resources which makes them more difficult to program and interact with.

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

Different types of memory

A

• RAM
• ROM
• Registers
• CACHE

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

Primary storage compared to secondary storage

A

• All types of primary storage with exception of ROM are volatile.
• ROM is considered read only.
• Primary storage devices have a relatively small capacity compared to secondary storage.
• Very fast access times compared to secondary storage.

• Secondary storage is non-volatile.
• Much larger storage capacity compared to primary storage.
• Very slow access times compared to primary storage.

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

Volatile

A

Temporary memory. It requires power to retain its data.

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

Non-volatile

A

Permanent memory - it keeps its contents when it has no power.

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

ROM

A

• Small piece of read only memory located on the motherboard.
• Non volatile
• Holds the first instructions for when the computer is first turned on known as bootstrap.
• Programs may be stored in ROM in embedded systems.
• Read only.
• Small in comparison to RAM.

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

RAM

A

• Holds the operating system, programs and data in use by the CPU when the computer is running.
• Volatile
• Much faster than the hard disk.
• Read and write.
• Large in comparison to ROM.

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

Why is secondary storage needed

A

• Because ROM is read only and RAM is volatile.
• Secondary storage is needed for:
- Storage of programs and data when the power is off.
- Semi-permanent storage of data that can change.
- Backup of data files.
- Archive of data files.

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

Common types of storage

A

Magnetic
Optical
Solid state

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

Drive

A

The device that reads and writes data from secondary storage.

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

Media

A

What the data is actually stored on.

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

Optical storage devices

A

• CDs, DVDs and Blu-Ray discs.

• 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

• Come in three forms:
- Read only (e.g. CD-ROM/DVD-ROM/BD-ROM)
- Write once (e.g. CD-R/DVD-R/BD-R)
- Rewritable (e.g. CD-RW/DVD-RW/BD-RW)

+ Low capacity compared to other types of storage.
+ Thin, lightweight and portable.
- Slow to access data.

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

Magnetic

A

• Hard disk drive, tape.

• 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.

+ High storage capacity
+ Quick to access data.
- Has moving parts, which eventually fail.
- Hard disks perform better if they are defragmented.

29
Q

Solid state

A

• SSD, Memory sticks, Flash memory cards.
• SSDs use electrical circuits to store data in millions of transistors (tiny switches) which can be either on or off.
+ Medium storage capacity.
+ Very quick to access data.
+ No moving parts, very reliable.
+ No noise.
+ No need to defragment
+ Low power
- Limited number of read/write cycles.
- Expensive compared to other types of storage.

30
Q

Which storage device to use is based on:

A

• Capacity - how much data needs to be stored?
• Speed - how quickly can data be read and transferred?
• Portability - if data needs to be transported are size, shape and weight important?
• Durability - How robust is the media? Will it be damaged by shocks, and extreme conditions?
• Reliability - does it need to be used over and over again without failing?
• Cost: how expensive is the media per byte of storage?

31
Q

Cloud storage

A

Remote servers that store data that can be accessed over the internet.

• Typically uses magnetic hard drives.
• Use do soli state drives is increasingly popular.

32
Q

Advantages of cloud storage

A

+ Access your files anywhere, anytime, from any device.
+ Automatic backup is possible.
+ Files no longer take up any space on your own device.
+ Collaborate on files easily.

33
Q

Disadvantages of cloud storage

A
  • Must have a working, active internet connection to gain access to your files.
  • Can be costly, typically a monthly of yearly subscription cost.
34
Q

Hardware

A

Physical stuff that makes up your computer.

• Motherboards
• Hard drives
• RAM
• Monitors
• Keyboards
• Printers

35
Q

Software

A

Manages the computer system resources and acts as a platform to run application software.

• System software
• Application software

36
Q

System software

A

• Operating systems - Windows, IOS, android - provides a platform on which users can run programs.
• Utility software - Anti-virus, defragmentation, backup, compression, firewalls. - used to maintain the computer system

37
Q

Application software

A

Software that persons end-user tasks.
• Presentation, word processor, spreadsheet, web browsers, communication, games, apps.

38
Q

Relationship between hardware and software

A

Application software runs on operating system software.
The operating system software talks to your hardware and applications.

39
Q

Types of user interfaces:
Graphical user interface (GUI)

A

• Windows, icons, menus, pointers (WIMP)
• Visual
• Interactive
• Intuitive
• Optimised for mouse and touch gesture input.

40
Q

Types of user interfaces:
Command line

A

• Text based.
• Less resource heavy compared to GUI.
• More commands than a GUI.
• Efficient
• For advanced users.
• Useful for automating processes with scripts.

41
Q

Types of user interfaces:
Natural language

A

• Responds to questions in spoke language.
• Not always reliable.
• Getting better all the time.

42
Q

What does the OS handle management of?

A

• Providing a platform for software to run on.
• Providing a user interface
• Managing processes
• Managing the computer’s memory
• Managing input and output devices
• Managing applications
• Managing security

43
Q

Applications:
Multitasking

A

• Running multiple applications at the same time by giving each application a small time-slice of processor time.
• This allows more than one program to be held in memory at a time, and data shared between them such as copy and paste.

44
Q

Memory management

A

• When programs are loaded, the operating system decides where they are held in memory.
• Over time the memory becomes fragmented as programs are loaded and closed because they use different amounts of memory.
• The operating system must keep track of different program fragments.
• When the memory is full, the operating system uses virtual memory.

45
Q

Input/output:
Device drivers

A

Input/output devices allow computers to take inputs and give outputs. It does this using device drivers.

• Translates operating system instructions into commands that the hardware will understand.
• Each peripheral needs a device driver.
• Many are already built into the operating system

46
Q

User management

A

• Providing for different users to log into a computer.
• The operating system will retain settings for each user, such as icons, desktop backgrounds.
• Each user may have different access rights to files and programs.
• A client server network may impose a fixed or roaming profile for a user, and manage login requests to the network.

47
Q

File management

A

• Data is stored in files.
• The operating system may present a logical structure of files into folders, and allow the user to rename, delete, copy and move files.

48
Q

Utility system software

A

Software designed to:
• Keep your computer safe.
• Keep it running efficiently.
• Provide you with useful tools for management of your files and applications.

49
Q

Utilities program examples

A

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

50
Q

Auto backup and restore

A

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

51
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.

52
Q

Anti virus

A

Scans the computer to identify malicious code.

53
Q

Compiler

A

Converts high level computing code into low level.

54
Q

Firewall

A

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

55
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.

56
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.

57
Q

Examples of low level language

A

• Machine code
• Assembly code

58
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.

59
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.

60
Q

Advantages and disadvantages of LLL

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.
61
Q

Advantages and disadvantages of HLL

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.

62
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

63
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.

64
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.

65
Q

Assembler

A

Assembler converts assembly language instructions into machine code.

66
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.

67
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

68
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.

69
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.