1.1: Characteristics of Contemporary Processors (Paper 1) (SLR1-4) Flashcards
ALU, CU, Registers and Buses (1.1.1A), FDE Cycle (1.1.1B), Performance of the GPU (1.1.1C), Pipelining (1.1.1D), Von Neumann and Harvard (1.1.1D), CISC vs RISC processors (1.1.2A), GPUs and their uses (1.1.2B), Multi-code and parallel systems (1.1.2C), Input, output and storage devices (1.1.3A), Magnetic, flash and optical storage (1.1.3B), RAM and ROM (1.1.3C), Virtual Storage (1.1.3D)
What does the ALU do?
It completes all the arithmetical and logical operations
What is the CU?
A part of the processor which directs operations inside the CPU
What are registers?
Small memory cells that operate at high speeds
Where do all the arithmetic, logic, or shift operations occur?
In registers
What does the PC do?
The PC holds the address of the next instruction
In which part of the CPU do all calculations take place?
The ALU
Where are intermediate arithmetic and logic results stored?
In the ACC
What does the MAR do?
Holds the address of a location that is to be read from or written to
What does the MDR do?
Temporarily stores the data that has just been read from or the data needs to be written
What does the CIR do?
Holds the current instruction divided up into opcode and operand
What is a bus?
A set of parallel wires connecting two or more components together
What is the system bus?
The collection of the data bus, address bus, and control bus is called the system bus
What is the width of a bus?
The number of parallel wires it has
What is the data bus?
A bidirectional bus used to transport data and instructions between components
What is the control bus?
The bi-directional bus used to transmit control signals between internal and external components
What is the address bus used for?
Used to transmit the memory address specifying where data is to be sent from or retrieved from
What does adding a wire to the address bus do to the number of addressable locations?
It doubles the number of addressable locations
What does the Bus Request indicate?
Indicated a device is requesting access to the data bus
What does Bus Grant indicate?
Indicates the CPU has granted access to the data bus
What does memory write do?
Causes the data on the data bus to be written into the addresses location
What does memory read do?
Causes the data from the addressed location to be placed onto the data bus
What does the interrupt request control signal indicate?
Indicates that a device is requesting access to the CPU
What is the clock control signal used for?
It is used to synchronize instructions
What is assembly language?
Assembly language is a programming language where mnemonics are used to represent instructions
What is opcode?
Opcode is used to determine the type of instruction and what hardware to use to execute it
What is the operand?
The operand is the address of where the operation is performed
What occurs during the fetch phase?
- The address from the PC is copied to the MAR
- Instruction held at that address is copied to the MDR by the data bus, simultaneously the contents of the PC is incremented by 1
- The value of the MDR is copied to the CIR
What occurs during the decode phase?
The contents of the CIR is split into operand and opcode
What occurs during the execute phase?
The opcode is executed on the data
What is the clock speed?
The number of clock cycles completed per second
What is cache memory?
Cache memory is the CPU’s onboard memory which can be accesses a lot faster than main memory
What is pipelining
The process of completing the fetch, decode and execute of three separates files simultaneously
What is Von Neumann architecture?
Architecture in which there is a single shared memory and shared data bus for both data and instructions
What is Harvard architecture?
Architecture in which there is two separate memory and data buses for data and instructions
What is contemporary processing?
Processing in which Von Neumann architecture is used for main memory. Cache uses Harvard architecture, divided into instructions, cache and data cache
What does RISC mean?
Reduced Instruction Set Computer
What does CISC mean?
Complex Instruction Set Computer
What are the properties of RISC?
- Small instruction set
- Each instruction is one line of machine code
- Used in everyday devices
What are the properties of CISC?
- A large instruction set
- Instructions are built into hardware
- Used in embedded systems and microprocessors
What are the benefits of RISC processors?
Pipelining is possible since each instruction takes one clock cycle
What are the benefits of CISC processors?
- Compilers have to do less work
- They require less RAM since instructions are smaller
What is a GPU?
A co-processor made up of lots of independent parallel processors
What are GPUs used for now?
Used for image processing and machine learning
What are multi-core systems?
Systems where there are multiple cores that separate fetch-execute cycles
What are parallel systems?
Systems where multiple instructions can be completed at any given time, doesn’t require multiple cores, it can use threading and pipelining instead
Give two types of magnetic storage
- Hard Disk Drive
- Floppy Disk
- Magnetic Tape
Give three examples of input devices
- Keyboard
- Mouse
- Microphone
- Webcam
- Touchpad
- Barcode reader
- Magnetic Stripe Reader
Give an example of a device which is used for both input and output
Touchscreen
What name is given to the areas on a CD’s surface which have been burned into grooves by a laser?
Pits
Give three examples of output devices
- Speaker
- Monitor
- Printer
- Projector
Which has the highest typical storage capacity: CD, DVD or Blu-Ray?
Blu-Ray
In a HDD what is mounted at the end of the actuating arm?
Read/write head
Which storage device has typical capacities in the range 500GB-5TB?
HDD
Give 2 disadvantages of SSDs
- High cost per GB
- Limited lifespan
How is information stored in flash memory?
Information is stored in blocks which are then combined to form pages
Which two types of logic gates are used in flash storage?
NAND and NOR
Give 3 advantages of SSDs
High transfer speeds
Lightweight
No moving parts
Give 2 disadvantages of SSDs
- Expensive
- Limited read/writes
What is ROM?
- Small piece of read-only memory
- Non volatile
- Contains very first instructions for the computer (bootstrap)
What is RAM?
- Temporary storage of instructions and data
- Holds information being executed by the processor
- Volatile
- Much faster than the hard disk
What does the bootstrap include?
- Contains a set of initial startup instructions placed in the ROM during manufacturing
What is POST?
- Power-on self-test
- Sends signal to all connected components, wakes them up and makes the CPU aware of their existence
Describe the process of a boot up
- When a computer system first receives power, there are no instructions in the CPU
- The OS is stored on secondary storage - Hard Drive
- At this stage, the computer isn’t aware that the HDD exists
- The solution to this is ROM, as it contains the bootstrap
- POST is taking place
- As the computer is now aware of the HDD, it can load the OS into RAM
What is virtual storage?
- The concept of storing and receiving data over the internet in the cloud instead of a local storage device
What are the advantages of Cloud storage?
- Data can be accessed at any time, from any device as long as there is internet access
- Data can be easily shared without the need for removable media transfer
- Easy collaboration
- Storage considered to be ‘limitless’ from the user’s point of view
What are the disadvantages of cloud storage?
- Can become quite expensive
- If connectivity is low, access times can be slow
- No internet connection = no access to your files
What can virtual storage also refer to?
- The abstraction or separation of logical storage from physical storage
What is meant by the term multitasking?
- When you have more than one program open and running at the same time
- The processor allocates a small amount of time to each process and cycles between them
What is file management?
- Data is stored in files
- An extension to the filename tells the OS which application to load the file into
- The OS may present a logical structure of files in folders and allow the user to rename, delete, copy and move files
What is user management?
- Allows multiple users to log into the same computer.
- The OS will retain settings for each user such as icons, desktop, backgrounds etc.
- 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
What are some UIs?
- WIMP: Windows, Icons, Menus and pointers
- Visual
- Interactive
- Intuitive
- Optimised for mouse and touch gesture input
What are the 2 methods of dividing memory into smaller sections?
- Paging
- Segmentation
Describe paging
- Pages are fixed size
- Pages are made to fit sections of memory
- Pages are physical divisions
- Programs are split to fit into a given number of pages
- Paging takes no account of how it splits the program, only that it splits it into fixed-sized pages
- It could separate the instructions inside a looping condition so they are in different pages, but that wouldn’t be efficient
Describe segmentation
- Segments are different sizes
- Segments are complete sections of programs
- Segments are logical divisions
What is Virtual memory?
- Using parts of the HDD to store programs that can’t be stored in primary memory
What is an interrupt?
- While the processor does the FDE cycle other devices and applications may require the processor’s attention.
- They need a way to signal to the processor that they require attention - this is what’s called an interrupt
What is the ISR?
- Interrupt Service Routine
- A program with a set of instructions that need to be fetched, decoded and executed to carry out the operations of the interrupt
- That means that the contents of the PC need to be changed to point to the address for the first instruction of the interrupt
What happens when an interrupt is received?
- The values held in the registers are copied into a data structure in memory known as the stack
- These values are pushed onto the stack in a stack frame, effectively saving them for later retrieval
- The interrupt can now be executed
- Once the interrupt is complete, we pop the frame off the top of the stack.
What does popping the frame of the stack allow us to do?
- Retrieve the previous values for the original program
- Load them back into the processor registers
- Carry on executing the original program where we left off
What happens when a high-priority interrupt comes along while an interrupt is being executed?
- The stack system handles it by:
- Suspending ISR A
- Pushes register contents onto the top of the stack
- Starts executing ISR B
- Once ISR B has completed executing, we pop the frame off the top of the stack to retrieve the value for ISR A, load them back into the processor registers and carry on executing ISR A
What are some examples of hardware interrupts?
- Power supply failure
- Power/reset button pressed
What are some examples of user interrupts?
- Moving the mouse
- Keyboard presses
What are some examples of software interrupts?
- Illegal instructions encountered
- Arithmetic overflow
- New log on request
What are some examples of timer interrupts?
- Screen recording application
- Data-logging program reading an input-sensor every second
What are some examples of I/O devices interrupts?
- Buffer nearly empty
- Printer ink supply notification
- Signal the completion of a data transfer to/from a device
What does a scheduler do?
- Manages which process to execute next
- Manages the length of time the next process can execute for
Explain the process of scheduling using Process A as an example
- Process A is a new process
- The number indicates the length of time before it finishes
- It enters the ready queue
- When the currently executing process finishes or is blocked or suspended, process A can move into a running state
- From here it will either:
- Finishing executing completely and leave the system
- Get blocked as it requires an input or output commands, meaning it can’t continue until more data is received
- Run out of time - each process is allocated a certain amount of time after which it is suspended and moved to the back of the ready queue
What is an FCFS algorithm?
- First come First Served
- Processes are executed in the order they arrive
- If a process takes a long time, the others behind it have to wait
What is a SJF algorithm?
- Shortest Job First
- Picks the processes that take the shortest amount of time and runs them until they finish
- The scheduler needs to know how long each process will take
What is a RR algorithm?
- Round Robin
- Each process is allocated a fixed amount of time, known as a time slice or quantum
- If the process isn’t complete by the end of its time slice, it returns to the back of the ready queue
What is a SRT algorithm?
- Shortest Remaining Time
- Similar to SJF
- Pre-emptive algorithm, meaning processes can be suspended if a higher priority process joins the queue
What is a MLFQ algorithm?
- Multi Level Feedback Queue
- This algorithm builds upon these standard algorithms with the following design principles:
- Separates processes into multiple ready queues based on their processing needs.
- Gives preference to processes with high I/O bursts
- I/O bound processes will sleep in a wait queue to give other processes CPU time
- This algorithm allows for processes to be shifted between queues
- If a process has too much CPU time, it will be moved to a lower priority queue
- If a process is I/O bound or an interactive process, it will be moved to a higher priority queue
- If a process is waiting too long in a low-priority queue, it will be moved to a higher priority queue
What are the 5 types of OS?
- Distributed
- Multi-User
- Real-Time
- Embedded
- Multi-tasking
What is a multi-tasking OS?
- An OS that handles many processes at the same time
What is a multi-user OS?
- An OS that allows more than one person to access a single computer at the same time
- The computer will manage the user’s various permissions and access rights when they log on
- Server operating system software will handle the requests of multiple people using different computers on a network at the same time
What is a distributed OS?
- An OS which can combine the processing power of multiple computers across a network for a single task
What happens in distributed computing?
- The operating system controls and coordinates system controls and coordinates the computers, presenting them to the user as if they were a single system
What are embedded OS?
- They run on dedicated hardware so they run with maximum efficiency, using low powered processor and very little memory
What is a real-time OS?
- An OS that executes processes within a known time frame
- Plenty of redundancy is built into these systems so they can handle sudden increases in input
- As such, processors in real-time OS rarely run at capacity
What is the BIOS responsible for?
- Responsible for loading the OS when the computer first turns on
- It first checks that the hardware it needs is connected and working using a POST