COMOUTER HARDWARE

  ABOUT OF COMPUTER HARDWARE 
    
         Computer hardware is the collection of physical parts of a computer system. This includes the computer case, monitor, keyboard, and mouse. It also includes all the parts inside the computer case, such as the hard disk drive, motherboard, video card, and many others. Computer hardware is what you can physically touch. 
    
               
computer.hardware
hardware
  

Computer Hardware

  • Computers have two main parts: hardware and software
  • Like piano (hardware) and music (software)
  • In this section: hardware
The computer is an amazingly useful general-purpose technology, to the point that now cameras, phones, thermostats, and more are all now little computers. This section will introduce major parts and themes of how computer hardware works. "Hardware" refers the physical parts of the computer, and "software" refers to the code that runs on the computer.

Chips and Transistors

  • Transistor - vital electronic building block
    -Transistors are "solid state" - no moving parts
    -One of the most important inventions in history
    -"Switch" that we can turn on/off with an electric signal
  • Silicon chip - fingernail sized piece of silicon
  • Microscopic transistors are etched onto silicon chips
  • Chips can contain billions of transistors
  • Chips are packaged in plastic, with little metal legs 
  • e.g. CPU chips, memory chips, flash chips
  • Silicon (metalloid) vs. Silicone (soft substance on cooking utensils)
Here is a silicon chip inside its plastic package. I pulled this out of the e-waste pile at the Stanford CS building, so it's probably kind of old. This is a small chip with just a few "pins" of electrical connection. Later we'll see a bigger chip with hundreds of pins. 
     
hardware part

                
Modern computers use tiny electronic components which can be etched onto the surface of a silicon chip.  Note that silicon (chips, solar panels) and silicone (soft rubbery material) are different!
The most common electronic component is the "transistor" which works as a sort of amplifying valve for a flow of electrons. The transistor is a "solid state" device, meaning it has no moving parts. It is a basic building block used to construct more complex electronic components. In particular, a "bit" (below) can be built with an arrangement of 5 transistors. The transistor was invented in the early 1950's, replacing the vacuum tube. Since then, transistors have been made smaller and smaller, allowing more and more of them to be etched onto a silicon chip. 
                
           
       

Moore's Law

  • Transistors get 2x smaller about every 2 years
    - sometimes listed as about 18 months
  • Can fit twice as many transistors per chip
  • Due to better chip etching technology
    -But a cutting edge chip factory costs more than 1 billion dollars
  • Observation vs. scientific "law"
  • 2 Effects:
  • a. chips have twice the capacity every 2 years
    -speed does not double, capacity doubles which is still very useful
  • b. or keeping capacity constant, chips get smaller and cheaper every 2 years
  • (b) is why computers are now in cars, thermostats, greeting cards
  • Example: $50 MP3 player capacity every 2 years: 2GB, 4GB, 8GB, 16GB
  • Rule of thumb: 8x capacity every 6 years
  • 8x in 6 years may match your phone's capacity increase
  • Moore's law will probably not go on forever
Moore's law (Gordon Moore, Intel co-founder) states that the density of transistors on a chip doubles about every 2 years or so (sometimes listed as every 18 months). The increase is due to improved chip making technology. It is not a scientific law, just a broad prediction that seems to keep working. More broadly, it captures the idea that per dollar, computer technology (not just transistors) gets exponentially better as time goes along. This is quite clear if you look at the cost or capability of computers/cameras etc. you have owned. Moore's Law results in more capable computers (compare what an iPhone 7 can do vs. the original iPhone) as well as cheaper computers (less capable computers show up everywhere, like in thermostats and cars).

Computers in life: Control Systems

  • Control system: responds to external state
  • e.g. car engine: vary fuel mix based on temperature
  • e.g. set off the airbag on high G-forces from collision
  • Chips are a great, cheap way to build control systems
  • The pre-computer control systems did not work so well
  • One reason cars work so much better today

Control System / Moore's Flashlight Demo

  • Maglite XL200 flashlight has a chip in it
  • Example of a control system
  • Moore's law makes this application of a chip feasible
  • Flashlight converts angular position to brightness. (1-click)
  • Also has an angle to blink-speed mode. (2-clicks)   
       

Computer Hardware - CPU, RAM, and persistent storage

Now let's talk about the three major parts that make up a computer -- CPU, RAM, and Persistent Storage. These three are found in all computers: laptops, smartphones, and tablets. 

                                      parts of the computer: cpu, ram, persistent storage
            
 

1. CPU

  • CPU - Central Processing Unit
  • Acts like a brain: follows the instructions in the code
  • "general" - images, networking, math .. all on the CPU
  • Performs computations, e.g. add two numbers
  • vs. RAM and persistent storage which just store data
  • "gigahertz" = 1 billion operations per second
  • A "2 gigahertz" CPU performs 2 billion operations per second
CPU - Central Processing Unit - inevitably referred to as the "brains" of the computers. The CPU does the active "running" of code, manipulating data, while the other components have a more passive role, such as storing data. When we say that a computer can "add two numbers, a billion times a second" .. that's the CPU. When you hit the Run button, the CPU ultimately "runs" your code. Later on, we will complete the picture of how your Javascript code is run by the CPU. 
                  
       

Aside: CPU "Cores"

  • Modern CPU chips have multiple "cores"
  • Each core is a semi-independent CPU
  • Key: having 4 cores is not 4x faster than having 1 core
  • i.e. 4 cars does not get you there faster than 1 car
  • Diminishing returns
  • More than 4 cores is often useless

CPU Examples

  • e.g. Run button - "print information," do some math
  • e.g. Send text message - format the bytes, send out the bytes, verify they were sent

CPU Variant: GPU - Graphics Processing Unit

  • Like the CPU, but specialized to handle images
  • Computer games use the GPU heavily
  • Modern CPUs are mostly fast enough, more energy going into GPUs

2. RAM

  • RAM - Random Access Memory
  • Acts like a whiteboard
  • Temporary, working storage bytes
  • RAM stores both code and data (temporarily)
  • e.g. open an image in Photoshop
    - image data loaded into the bytes of RAM
  • e.g. adding 2 to a number in a calculator
    - manipulating bytes in RAM
  • "persistent"
    -RAM is not persistent. State is gone when power turned off
    -e.g. You're working on a doc, then power goes out and you lose your work (vs. "Save")
RAM - Random Access Memory, or just "memory". RAM is the working scratchpad memory the computer uses to store code and data that are being actively used. RAM is effectively a storage area of bytes under the control of the CPU. RAM is relatively fast and able to retrieve the value of any particular byte in a few nanoseconds (1 nanosecond is 1 billionth of a second). The other main feature of RAM is that it only keeps its state so long as it is supplied with power -- RAM is not "persistent" storage.
Suppose you are working on your computer and it suddenly loses power and the screen goes blank. You understand that what you were working on is gone. RAM has been wiped clean, leaving you only with what you last saved to disk (below).

RAM Examples

  • You have many tabs open in your browser
    - the data for each tab is in RAM
  • A program is running
    - the code of the program is in RAM
  • A program is manipulating a large image
    - the data of the image is in RAM
  • e.g. you can run out of RAM - cannot open a new tab or program because all the RAM is in use
  • Aside: now phones have 2-4GB of RAM ... enough for most purposes

3. Persistent Storage: Hard Drive, Flash Drive

  • Persistent storage of bytes
  • "Persistent" means preserved even when not powered
  • e.g. Hard drive - stores bytes as a magnetic pattern on a spinning disk
    - aka "hard disk"
    - High pitch spinning sound you may have heard
  • Hard drives have been the main, persistent storage tech for a long time
  • BUT now flash is getting more popular.
How a Hard Drive Works Video (Webm is an open standard video format, works in Firefox and Chrome). 4:30 in the video to see some reading/writing of bits.

Persistent Storage, Newer Technology: Flash


  • "Flash" is a transistor-like persistent storage technology
    "solid state" - no moving parts
    -aka "Flash drive"
    -aka "Flash memory"
    -aka "SSD": Solid State Disk
  • Flash is better than a hard drive in every way but cost - faster, more reliable, less power
  • Flash is more expensive per byte
  • Formats: usb key, SD card in camera, flash storage built into a phone or tablet or computer
  • Flash used to be very expensive, so most computers used hard disks
  • Flash is getting cheaper (Moore's law)
  • However per-byte, hard drives are still substantially cheaper
  • Not to be confused with "Adobe Flash", a proprietary media format
  • Warning: flash does not persist forever. It may not hold the bits past 10 or 20 years. Nobody knows for sure
Persistent storage - long term storage for bytes as files and folders. Persistent means that the bytes are stored, even when power is removed. A laptop might use a spinning hard drive (also known as "hard disk") for persistent storage of files. Or it could use a "flash drive", also known as a Solid State Disk (SSD), to store bytes on flash chips. The hard drive reads and writes magnetic patterns on a spinning metal disk to store the bytes, while flash is "solid state": no moving parts, just silicon chips with tiny groups of electrons to store the bytes. In either case, the storage is persistent, in that it maintains its state even when the power is off.
A flash drive is faster and uses less power than a hard disk. However, per byte, flash is significantly more expensive than hard drive storage. Flash has been getting cheaper, so it may take over niches at the expense of hard drives. Flash is much slower than RAM, so it is not a good replacement for RAM. Note that Adobe Flash is an unrelated concept; it is a proprietary media format.
Flash storage is what underlies USB thumb drives, SD cards for use in cameras, or the built-in storage in a tablet or phone.

File System

  • How are the bytes in persistent storage organized?
  • e.g. Bytes on a flash drive?
  • "File system" - organize the bytes of persistent storage, files and folders
  • "File" - a name, a handle to a block of bytes
  • e.g. "flowers.jpg" refers to 48KB of image data bytes

file system organizes the bytes of persistent storage
The hard drive or flash drive provides persistent storage as a flat area of bytes without much structure. Typically the hard disk or flash disk is formatted with a "file system" which organizes the bytes into the familiar pattern of files and directories, where each file and directory has a somewhat useful name like "resume.txt". When you connect the drive to a computer, the computer presents the drive's file system to the user, allowing them open files, move file around, etc.
Essentially, each file in the file system refers to a block of bytes, so the "flowers.jpg" name refers to a block of 48KB of bytes which are the data of that image. The file system in effect gives the user a name (and probably an icon) for a block of data bytes, and allows the user to perform operations on that data, like move it or copy it or open it with a program. The file system also tracks information about the bytes: how many there are, the time they were last modified.
Microsoft uses the proprietary NTFS file system, and Mac OS X has its Apple proprietary HFS+ equivalent. Many devices (cameras, MP3 players) use the very old Microsoft FAT32 file system on their flash cards. FAT32 is an old and primitive file system, but it is good where wide support is important.

Persistent Storage Examples

  • This one is easy to understand, since you have used files and files sytems
  • e.g. 100 separate 1 GB video files .. need 100 GB of storage capacity

Pictures of Hardware

Below are images of a low-end Shuttle computer with a 1.8ghz CPU, 512MB of RAM, and a 160GB hard drive. It cost about $200 in around 2008. It broke, and so became a classroom example.
Here is the flat "motherboard", a little smaller than a 8.5 x 11 piece of paper, that the various components plug in to. At the center is the CPU. At the far right is the RAM memory. Just to the right of the CPU are a couple support chips. Prominently, one of the chips is covered with a copper "heatsink" .. this presses tightly against the chip, dissipating the heat from the chip into the surrounding air. The CPU also had a very large heatsink, but it was removed to make the CPU visible.
  • Motherboard
  • CPU metal package, held by lever
  • Copper heatsink 
    

Arduino Computer

  • This is an "arduino" board, microcontroller chip (CPU, RAM, storage all in one)
  • As low as $10
  • Open source, free, not Windows only, tinkering
  • Art project -- switches, sensors, lights
                                   arduino microcontroller board

Comments