Personal Computers (PC’s)
Servers
Embedded Computers
Personal mobile device (PMD)
Cloud Computing
Use abstraction to simlify design
Productiviteit verbeteren
Karakteriseer het ontwerp op verschillende levels van representatie
Make the common case fast
Verbeterd de performantie meer dan het weinig voorkomende te verbeteren
Vraagt dat je weet wat de Common Case is
Performance via parallelism
Computers die meer performantie hebben door operaties parallel uit te voeren
Voorbeeld:
- een multiplicatiegebruikt door meerdere dingen tegelijk op te tellen
Performance via pipelining
Vorm van parallellisme
Operaties aan een lopende band uitvoeren
Voorbeeld:
Performance via prediction
Raden in de plaats van wachten tot je het zeker weet
Voorbeeld:
Hierarchy of memories
Geheugen moet snel, groote en goedkoop zijn
Tegenstrijdige voorwaarden: hiërarchie
Voorbeeld:
Dependability via redundancy
Redunante componenten toevoegen
Operating system
Interfaces tussen programma van gebruiker en hardware
Variëteit van diensten en toezichthoudende functies
Voorbeeld: Windows
Systeem software
Software die diensten aanbied die veelgebruikt zijn, zoals operating systems, compilers, loaders en assamblers
Compilers
Een programma dat high-level programming languages vertaalt naar assambly language
Instructies
Machine language → Assembly language
Assambly language → high level programming language
Voordelen van high-level programming language
Onderliggende hardware
Voert dezelfde basis instructies uit in elke computer
Input devices
Output devices
5 klassieke componenten van een computer
1) input
(2) output
(3) memory/geheugen
(4) control
(5) datapath
DRAM
Dynamic random-access memory
- geheugen gebouwd als een integrated circuit
- voorziet random access aan eender welke locatie
- niet sequentieel
Graphics Display
I/O apparaat
Liquid crystal displays (LCD)
Touchscreen
Voornameling gebruikt voor PMD’s
Vervangt de muis en het toetsenbord
Capacative sensing