After completing these activities you should be able to:
- Describe a computer as a device that manipulates digital data through input, processing, and output
- Name the major physical components of a computer, and describe their function
- Explain program launch and the CPU fetch-decode-execute cycle
The operating system is a go-between, between the physical machine and the users/programs (applications).
You will see a layered approach to topics in this course time and time again. Layered approaches are used for multiple reasons. Layered approaches allow details to be abstracted away allowing problems to be broken down and solved in smaller pieces, recursively so until the pieces are small enough for us to focus on. The construct of the cyber domain is a layered construct due to the design and nature of the core technology and the aspects of the cyber domain. Most importantly the seams in the layers have continually shown to be points where vulnerabilities exist. Understanding how the layers interact is crucial to operating within the cyber domain.
There is no right or wrong way to learn the layers in, in some cases we will start from the bottom, in others we will start from the top.
If you take a big picture view of a computer
, you get three
- The user and Programs (Applications) running on the user's behalf;
- The operating system; and
- The physical computer.
In this lesson we'll learn a bit about the physical computer. We will explore the operating system, and users and Programs in upcoming discussions.
What is a computer?
Basically, a computer is a device that can read in data,
process data, output data, and, optionally, store data.
Is a calculator a computer by this definition? It has keys for
inputting number and operations, a screen for outputting
results, and it processes data by performing the mathematical
operations you request, so ... it meets the definition.
This an Intel Core i5 CPU
Usually when we think "computer", we're thinking of a PC, a
laptop, or maybe a big server. A typical PC, laptop or server consists of a number basic
CPU - this stands for Central Processing Unit. It is
essentially the brain of the computer.
What CPU does your laptop have? Your smartphone? An iPad?
- Memory (RAM) - this is the CPU's short term memory,
it can only really compute with values it has loaded into
RAM, because the CPU itself can only remember a very small
number of things. When the power goes off, anything stored in RAM is lost.
RAM is usually measured in MB's or GB's (mega bytes and
giga bytes, remember?)
Hard Drive (HDD) - this is the computer's long-term memory.
Things stored here are remembered even after the power's
been turned off. Why bother with RAM then? Mostly
because the hard drive is much slower than RAM. If the
CPU needs to access a value often, it would slow down the
machine way too much to keep having to grab the value off
the hard drive.
Hard Drive space is usually measured in GB's or TB's (giga bytes and
tera bytes, remember?)
Why DoD hates the USB stick
Peripherals - These components are attached to the
computer in some way to increase
the capabilities of your computer but are not a part of
the core architecture of your
computer. These are things like webcams, printers,
scanners, and many others.
The hard drive is a peripheral, but it plays a central role
in how the computer functions, so we talk about it separately.
One of the most popular peripherals
for PCs and laptops
is the "USB stick" flash drive. You can get a key-fob with 16 GB of
storage on it — what's not to love?
Well, from the standpoint of an organization like the
DoD, there's a lot not to love. First off, USB
sticks are easy to lose, and they provide an easy way
for people to smuggle large amounts of sensitive data
out of a secure location. Second, USB sticks
can be "infected" by computer viruses, so they provide
an oft-used avenue to get viruses into secure
locations. Both of these problems can be catastrophic.
Think this is far-fetched? In 2008, an attack that's
been referred to as the "worst breach of U.S. military
computers in history" started with a virus-infected
USB flash drive that made it's way to a DoD computer
Times Aug 2010 article].
In the aftermath of the attack, flash drives were
banned in the DoD.
Today, DoD personnel may only use USB sticks
(flash drives) under very restricted circumstances.
The attack, and the counter operation
(named Buckshot Yankee) "marked a turning
point in U.S. cyber-defense strategy" according to
William J. Lynn III, the then deputy secretary of defense.
In order to find out what CPU and how much RAM you have, follow these steps.
- After clicking on the Windows Start orb, select Control Panel
- Click on System and Security
- Under the System section, click View amount of RAM and processor speed
In the description of your System the description may say "32-bit"
or it may say "64-bit". A CPU is called "32-bit" if it stores
memory addresses in 32-bits. This allows for a maximum of 4GB of memory.
Most CPUs for PCs now are "64-bit", meaning the CPU uses 64 bits
to store memory addresses. This allows for a maximum of 16
billion GB of memory ... which is a lot. The Operating System (OS) is
either written to make full use of 64 bits for addresses, or only
32. If you see "32-bit", it probably means the OS is 32-bit.
In order to see what peripherals you have, follow these steps.
Why the Navy uses 20-year-old CPUs
With the continued evolution of CPUs and other hardware, you
might think that weapon systems always employ the latest and
greatest commercial CPUs.
weapon systems must operate for
many years and must be trusted to function correctly in all
sorts of conditions.
That level of trust or confidence in the hardware is, in many
applications, more important than speed.
Trusting hardware to perform up to this standard requires
many rigorous tests, and a significant investment of time and
So weapons systems may well use old hardware, if that hardware
has been proven trustworthy.
There are weapon systems in use on naval platforms
CPUs (16-bit, 25MHz; over a hundred times slower than
your laptops). Older hardware often means older
operating systems and older software too, such
As the Navy continues to employ increasingly network centric
platforms, engineers need to continually integrate new
technologies with older technologies (often technologies that
were not intended to be connected to networks), while maintaining
the trust and security required of weapon systems.
Your CAC has a computer.
The small gold plate at the bottom of your CAC is a computer.
It has a CPU ("Oberthur ID-One Cosmo 128K v5.5"), memory
(a whopping 144KB), inputs data (e.g.: you enter your PIN),
processes data (e.g.: performs cryptographic calculations),
and outputs data to the card reader.
The computer in your CAC draws power from the card reader.
- Type 'Device Manager' in the Windows Search Bar and then click on Device Manager at the top, say 'yes' to any user account control
Once it is opened you can click to expand things like Network adapters
you'll get some details about these peripherals.
To see how much storage space you have on your hard drive, do these steps.
Question: how many bits of storage is available on your hard drive?
- After pressing the Windows Start button, right click on File Explorer and select 'Manage' say 'yes' to any user account control
- On the left, under Storage, select Disk Management.
- Your hard drive should be listed as a storage device with its capacity.
Fetch, Decode, Execute and the pulse of a CPU
A CPU leads a boring life. It performs the same three steps over,
and over and over and over and over ...
- Fetch the next instruction from memory as a block of bytes
- Decode the bytes to determine what action the instruction specifies
- Execute the action encoded in the instruction
... and it performs these steps hundreds of millions of times per second. A CPU's "clock speed" tells you
(not quite literally, but close) how many of these steps it can
perform each second. So a 1 GHz clock speed means roughly a
billion steps per second. Pretty fast, eh? There is a crystal
inside the CPU that vibrates at a given rate, and it provides
the "tick" for the CPU's clock. It is, if you will, the beating
heart of the CPU.
You can get a graph of how busy your CPU is over time:
a) press control+alt+delete,
b) choose Task Manager,
c) click on the Performance tab.
You may well ask how the instructions the CPU loads from memory
in the fetch step got there in the first place.
These instructions are loaded into memory initially from a file on disk
— namely the file that is "the Program" the CPU is running.
And so we come full circle, back to the previous lesson!
Although it's outside the scope of this course, it's important
to take a second to think about an important problem concerning
hardware: safeguarding the supply chain.
Counterfeit electronic components
a real threat
to American businesses and
to the U.S. military.
Counterfeit parts may be a real problem for the organizations
that purchase them, either because they are unreliable (since
the counterfeiters rely on the real brand's reputation, not
their own, there's no concern for quality control) or because
they are purposely built to fail or to function improperly.
Of course legitimate businesses that produce electronics suffer too: they
lose sales, and when parts fail they — not the
counterfeiters — are blamed for the failure.