Module 2 Flashcards
Internet of Things
conceptualize how trillions of devices will be connected together.
What are the three primary categories of hardware components
1.The CPU
2.Primary Memory and Secondary Storage
3. Peripherals
Hardware definition
The physical equipment and devices that a computer is made up of
CPU
-brain of the computer
-aka processor
-performs the computing
-has its own machine language that usually doesnt work with other cpu, but some companies make their language compatible
-like engine of car
-price of computer is reflection of CPU
Basic Operations:
1. Arithmetic (sub, add, multi, divide)
2. Comparisons (<,>,=)
3. Logic (and, or, not)
4. Data movement (move data from one location to another)
5. Control Flow (how it decides what to do next)
Most common computer cpu: intel and AMD
Phones: ARM-based CPUS (Snapdragon and Apple’s A12)
Characteristics of CPU
- Make and Model: determine the characteristics, some better than others
- Speed: measured in GHz (Gigahertz), 3 Ghz can perform 3 billion operations per second
3.Number of Cores: modern ones are a combination of several processors (cores), a quad-core processor has four independent processors in it, so it can do four times as much compared to a single core
- Power Consumption: Speed and number of cores affect power, so need to be able to slow down speed and swithc to low power mode to conserve
- Cache: bigger the better
Secondary Storage
-long term (permanent) storage of a computer
ex: harddrives, flashdrives, Cd, Dvd, floppy disks
Secondary Storage for Computer contains:
1. Operating System (OS)
2. Programs (applications)
3. Documents and other data files
4. Settings and preferences
So basically everything u need
Harddrive
most common for modern computing
-inside: several magnetic disks that can store info in a small amount of space
-Space measured in terabytes (TB) which is trillions of bytes
-called drives bc of the physical motor that spins the magnetic discs
Flashdrives
-Static electricity used instead of magnitism
ex: USB, SD cards, SSDs (high speed, high capactiy flash drives)
-require less power than harddrive because no moving parts (drive so technically shouldnt call it a flashDRIVE
-modern ssds are faster than harddrives but have lower capacity and are more expensive than hardrives
Primary Memory
-Main Memory
AKA RAM (Random Acess Memory)
-not permamnetly saved, if computer loses power, info on primary memory is lost
-Working space of the computer, everything that is being done on the computer is stored here
CPU cant access the secondary storage, so info from there is copied into the primary memory so that it can be used
ex: when program is opened, it is always stored in secondary, but when opened, it is copied to the primary and is then started. This is why delay is there
When u save a file, it copied it from primary memory back to secondary storage
Where is the boot loader stored and what does it do
-boots up the computer since primary memory is initially blank, it is a program
-stored on the ROM (read-only memory)
-copies the operating system from secondary memory to the primary memory so that it can be run
What analogy represents the cpu, primary memory and secondary storage relationship
Cooper (CPU) sitting at a desk (primary memory) with a file cabinaent in another room(secondary storage)
Cooper has amnesia so he cant remember anything that is not infront of him on the desk, he can only get info from the secondary storage if his assidtant copies it and places it on his desk, now he can start working. Cooper can make changes to the papers, follow instructions, etc but at the endof the day if he wants to save his work for the next day he needs to get his assisnant to copy it back to the secondary storage because everything on the desk is destroyed at the end of the day
What are the main differences between primary memory and secondary storage
- Capacity: Primary is smaller than secondary
- Speed: Primary is significantly faster than secondary, even fastest ssds are 50 times slower than primary memory
- Connectivity: CPU directly interacts with primary, so it can see this info but NOT the secondary storage
- Permanence: Secondary is permanent, primary is not, anything not saved to secondary will be gone
How can you speed up a computer?
By having more primary memory. Think, a smaller desk has less area to work with, so it will get filled up quicker, but a bigger desk will not
When a computer is slowing down: it is needing to access the secondary storage more often, and too many programs are running.
If a primary needs more space, it can get rid of things on its, but it needs to amke sure that it is stuff already on the secondary. But if it keeps needing to go to secondary, it will slow it down because it is like an assistant continously copying the same pages back and forth
What is a cache
part of CPU
-built in fast short term memory that is neither the primary nor secondary,
-it is 100x faster than primary
think that in analogy, the person at the desk has post its on arm, so rather than having to look at desk for info it looks at itself
the larger the cache, the more the cpu can perform without the primary memoru
Peripherals
Everything that isnt the cpu, primary, or secondary
-monitor
-keyboard
-mouse
-touchpad
-touch screen
-camera
-mic
etc
also… stuff that is still peripherals but not directly interacted wtih
-wifi
-compass
-GPS
-LTE
-Ethernet
This is for event-based peripherals:
Originally needed customized hardware or software for the cpu/ operating system to connect to peripherals: DEVICE DRIVER or DRIVER
There is also a special piece of hardware that sits outside CPU but is connected to it that detects a mouse event (move the mouse or click button) and sends a signal to CPU to wake up and also puts mouse info into primary memory. Then, operating system stops what it is doing and reads the information and uses the device driver to understand what the mouse is doing and then causes the cursor on the screen to visually move
remember evan dennis polly and cooper analogy for that
Polling Peripherals:
constantly asking “did the mouse move?”
-less power consumed
USB
Way for peripherals to connect to computer
device drivers i think
Software
Program that runs on the hardware
Co-dependent with hardwarem needed for computers to work
TWO TYPES:
1) Application Programs: -interact with user
-made up of instructions (think flow chart)
-instructions are basic; called Low Level Operations
Programmers write in high level languages, such as JavaScript
-high level understood due to machine translators, real time translators, hardware emulators etc.
-have three different components: a)CPU Instructions
b) Data (texts and multimedia)ex: video game needs to store the graphics, sound files, words, etc
c)Operating system requests: for cpu to interact with the secondary system or the periphals, it must do so through the operating system, these are machine and operating system specific, a windows application cannot run on a mac
2) System Programs: work in the background to operate computer:
have services: these worl without user intervention, ex: a sercvice that checks for notificartions, does this without the user
also have device frivers (discussed earlier)
What is an example of a low level program code
repeat until sandwich is gone:
open mouth
put portion of sandwich in mouth
close mouth
repeat until food is fully masticated:
chew
swallow
How are high level program languages understandable by the hardware/computer
-translated into lowlevel language by a “machine translator”
this is bc application programs only understan/ the isntrcutions for them are low level instructions
also “real time translators” such as excel or javascript that convert it into machine language
-advantage of this over machine translator is that this can be run on any machine, it is not machine specific, so it can be on any machine that a translator exists on
Other types include:
Hardware emulators: allow games developed for old hardware to be played
Operating System
Most popular COmputer ones:
Windows
Mac OS X
Linux
Phone ones:
Android
Apple IOS
Games:
Nintendo
Sony
Components:
1) Kernel: Managers resources
2) Bundled Applications: just applications
3) Shell or user interface: provides an interface for the user to interact with the operating system
-allows for launching and c losing apps
-window to switch between apps
-access second storage and networs
-setting prefernces, interfaces,
Kernel info
-part of the operating system
-the heart of it
two main responsibilities:
1. Managing resources: CPU, Primary, peripherals
-makes it seem like a dozen programs running at once but it is actually just the kernel switching between different programs
-it basically prioritizes applications/services and decides how much CPU each will recieve in that moment
-for ex: if watching a movie, it needs alot so it will deligate alot
-if computer is jerky, it may be due to too many applications runnning or not prioritizing resources properly
-after the computers are woken up by a timer, it is the kernels job to allocate the cpu energy
- Responding to application requests:
together they manage security of computer
What is a conputer recap
A computer is a combination of both hardware and software
Computer hardware includes the CPU, primary memory, secondary storage and peripherals
Computer software includes applications and system software
A computer has an operating system with bundled applications, a shell and a kernel
The kernel manages the resources of the computer and responds to application requests
Application requests include
In addition to accessing peripherals, application requests also include:
Requesting more primary memory
Accessing files in secondary storage
Accessing websites and other networking tasks
Communication with other applications (e.g., sending messages)
system programs designed to work without user intervention
SERVICES
-primary purpose is to work in the background to operate the computer
higher cpu mark means
better cpu
the bigger the primary memroy wgat
means u can run more applications at the same time
-having more space for it allows this