Mod 1 - Computer Organization Flashcards
What is a computer based on past and current definitions?
Definition changed lots over time
Past: large computer that takes up the whole room
Current: smart phones classified as computer
What is hardware?
It is physical equipment & devices that a computer is made of.
What are 3 primary components hardware is made of?
- CPU
- Primary Memory & Secondary Storage
- Peripherals
What does CPU stand for & what do CPUs do?
CPU: Central Processing Unit
It is the brain/processor of the computer. It performs few & basic functions.
What functions do CPUs perform?
- data movement (from one location to another)
- controls flow (how CPU decides what to do next)
- arithmetic (+, -, *, /)
- logic (and, or, not)
- comparisons (=, >,
How do CPUs work (think machine language)?
A lot is accomplished with few functions b/c CPUs are very fast. Each one has its own machine language that gives it instructions & tends to be exclusive for each CPU, but can be compatible (ex. Intel, AMD).
What is one of the most important components of a computer?
The CPU! When buying a computer, prices often reflect the quality of the CPU.
What are the key characteristics of a CPU?
- Make & model
- Speed
- Number of cores
- Power consumption
- Cache
Describe make & model
Manufacturers have different CPU models that determine characteristics
ex. Intel i7 is more powerful than Intel i3
Describe speed
The speed is measured in Gigahertz (GHz) - giga=billion and hertz=per second.
ex. theoretically, a 3GHz processor can perform 3 billion operations per second
Describe number of cores
Modern CPUs are a combination of several cores (processors)
ex. a quad-core processor has 4 independent processors in a single chip & can do 4 times as much computation as a single core
Describe power consumption
The speed and number of cores affects the amount of power used. Low battery mode is often used to cut back power consumption.
Describe cache
It is a fast, short-term memory built into a CPU and is known as “super memory” b/c its x100 faster than primary. Basically, the bigger the cache the better.
What is secondary storage?
it is the long term (permanent) storage of a computer.
current ex: hard drives, flash drives, CDs, DVDs, etc.
past ex: magnetic tapes & floppy disks
What is the most common secondary storage?
Hard drives
How do hard drives work?
Inside of it, there is a physical motor than spins several magnetic disks. These disks store large amounts of information in small amounts of space. They are measured in terabytes (TB) - meaning trillions of bytes.
Explain flash drives.
The way it works is fairly complicated, but basically, it uses static electricity.
ex. USB sticks & SD cards
What is a Solid State Drive (SSD)?
It is a type of flash drive often used in mobile devices because it uses less power while having a high speed & high capacity. They have yet to replace hard drives b/c they are more expensive & have less capacity.
What does secondary storage typically contain?
- operating system (OS)
- programs (apps)
- documents/other user data
- settings/preferences
What is primary memory?
It is required for a computer to work properly because it is the working space of a computer, meaning everything done is stored there
Ex. executing, displaying, calculating
What is primary memory known as?
Random Access Memory (RAM)
How does a CPU access secondary storage?
It cannot directly access secondary storage, so the information desired is copied from secondary to primary where it can be “used” (explains delay when app started).
Ex. open a file: copied from secondary to primary; save a file: vice versa
What happens when you first turn on a computer?
The primary memory is initially empty/blank, so it boots up using the boot loader. This is stored on a separate chip called Read-Only Memory (ROM) where it copies/loads OS into primary.
Provide a summary of primary memory
Primary:
- small capacity (few GB)
- significantly faster
- CPU can see info in primary
- has short term memory
- the more primary there is, the faster the computer will be
Provide a summary of secondary storage
Secondary:
- large capacity (TB)
- much slower than primary
- CPU cannot see info in secondary
- has long term/permanent memory
What is a peripheral?
it is every other piece of hardware or physical device associated with computers.
List some common examples of direct peripherals.
- monitor
- keyboard
- mouse
- touch screen
- printer
List some common examples of indirect peripherals.
- ethernet
- wifi
- GPS
- motion sensor
- 3G
- Graphic Processing Unit (GPU)
What is a driver?
It is a piece of software designed to let hardware talk to the OS.
How does a mouse work?
It is an event-based peripheral meaning a special piece of hardware connected to the mouse that waits for a mouse event to occur (moving/clicking). It has an “alarm” to wake up the CPU which stops the OS to read/interpret the info in primary - happens in a microsecond.
How does a camera work?
It is a polling peripheral meaning the OS decides when it wants info & tells the peripheral to wake up and gather info.
What is Universal Serial Bus (USB)?
It is an advancement in standardizing how peripherals connect to the computers.
What is hardware convergence?
It is when hardware for several different components are combined into a single chip known as System on a Chip (SoC). It decreases size, increases speed & reduces power consumption.
ex. cell phone chip has CPU, primary memory, GPU, wifi, GPS, etc. all on it.
Why is software important? What are the 2 types?
It is codependent on hardware and they rely on each other to make computers work properly.
The types are:
1. Applications
2. System Programs
What is an application (app)?
It is designed to interact with users and the vast majority of the program is made up of instructions. The instructions are really just the basic operations CPUs understand known as low level operations.
Ex. Lamp flow chart
What do programmers usually use in terms of instructions?
Programmers often use high level programming languages that are easier for humans to understand (ex. JavaScript). There is usually a machine translator in programs that convert high level to many low level
What is a real time translator?
It converts a high level language to a machine language.
ex. Excel & often used for many Android apps
ex 2. hardware emulator for playing old games - like for gameboy
What other components are important for applications to function properly?
- data: includes all text & multimedia/graphics
- OS requests: made so the app can interact with secondary storage or peripherals
What is a system program?
While apps are designed to work in the foreground, system programs are designed to work in the background.
ex. services & device drivers
What is a service?
It is designed to work without user intervention.
ex. notification service for social media sends messages to the OS to alert the user.
What is a device driver?
It facilitates communication between peripherals and the OS.
What are some examples of desktop OS’s?
- Windows
- OS X
- Linux
What are some examples of mobile OS’s?
- Android
- Apple iOS
What components make up an OS?
- Kernel
- Bundled Applications
- Shell
Describe bundled applications
They come with an OS and make it more useful/important for consumers. They don’t change the understanding of an OS.
ex. photo-booth, calendar, sticky notes, etc.
Describe the shell
It is basically the user interface & allows user interaction with the OS by facilitating:
- launching/closing apps
- “windowing” the system to switch b/w apps
- accessing secondary storage & networks
- configuring the OS (settings)
Most shell designs are user-friendly & inuitive
What is the kernel & it’s 2 main responsibilities?
It is the heart of the OS.
- Managing resources (CPU, primary memory, peripherals) ex. allocates areas of primary memory to apps
- Responding to app requests
- -> both involve managing computer security
How many programs can a computer run at the same time?
Only 1 program can run at time per core, so powerful computers can run several at a time, but for the most part, it is mostly an illusion that all the apps are running at the same time.
How do computers manage running several apps at a time?
The kernel constantly & quickly switches b/w different programs (in milliseconds) which maintains the illusion that all programs are running at the same time. The kernel will prioritize apps to determine the amount of time each one receives.
ex. movie player gets more time to ensure it plays smoothly
Describe how the kernel ensures security (app permissions)
It coordinates with CPU hardware to ensure apps cannot access the memory for other programs. It also manages the peripherals through app requests.
ex. kernel allows one app to access the camera through a request.
Give some examples of app requests.
- requesting more primary memory
- accessing secondary storage files
- accessing websites
- communication with other apps