Midterm 1 - hardware Flashcards
lect 8-9
what is caching
caching is the process of retrieving information from a slower storage system and placing it in a faster storage so that it is readily accessible to a program
how many caches exist
secondary storage (slowest, largest)
memory/ram
L3
L2
L1 (fastest, smallest)
note: L cache is specifically stored directly by the CPU itself
how does a CPU use few basic operations, but extremely quickly
- uses arithmetic logic –> a bunch of AND + OR gates
OR = inclusive “either or both”
XOR = exclusive “either, but NOT both”
- control flow of logic to organize data movement
since the arithmetic is very simple –> can be done extremely quickly
since LOTS of arithmetic is done so quickly, easily capable to scale up to very complex operations
what are the key CPU characteristics (4)
CCCP
of cores –> how much multitasking can be done at once
core clock (hz) –> how quickly tasks can be performed
cache size –> how much information can be stored on a moments notice
power consumption
logic gate symbols
bullet = AND
arrow = OR
reinforced arrow = XOR
(practice)
secondary storage vs primary storage
differences: speed, size, permanence, connectivity
secondary = recgular drive storage –> very large, relatively slow to access data from
primary = ram –> fast access, small storage
CPU can only utilize data on primary/ram –> data on secondary is inaccessible
secondary does not require continuous power supply to retain info –> permanence
primary (ram) requires power. power off –> primary is wiped clean
how does a PC use secondary storage
program requests data from primary –> data is pulled into ram and therefore accessible to program (caching)
program no longer uses the data –> data is overwritten for more immediate tasks and therefore must be re-retrieved (re-cached)for later use
define peripheral
hardware not technically required for the PC to function. includes interaction and non-interaction stuff
eg monitor keybaord, wifi router, GPS, sensors
event driven vs polling peripherals
differentiated based on how/when they send/recieve signals
event-driven –> only sends signals when an action has occurred (eg keyboard)
polling –> continuously sends data, usually for monitoring/sensing changes in values (eg GPS)
software: application vs system program
programs/services are required for computer operations (eg drivers), usually operate in the background
applications are software that is intractable (eg games, media editors)
components of any software
instructions - how the program will utilize data –> logic control + flow
data - inputs the program will recieve, outputs it will return (eg textures, audio files, stored data files)
OS requests - what sorts of system resources the program will require –> must request access + allocation of resources from OS (eg X program requires X ram, Y storage space)
example of OS requests
- access + allocation of RAM
- access for user settings stored in a file from secondary storage (request to move file to RAM)
- request access to server through specific ports
- request to access/modify core system files
components of an OS (3)
kernel
bundled apps
shell
OS - kernel
systems resource management –> quartermaster
responds to app requests –> sends authorizations for system access
AUTHORIZATIONS TO SAVED DATA + INTERNET ACCESS
therefore critical to security –> prevents malware from readily overtaking system
OS - bundled apps
pre-installed programs that come with the OS
includes critical sys files + bloatware