Module 1 - Basic Organization of A Computer System
Module 1 - Basic Organization of A Computer System
Module 1 - Basic Organization of A Computer System
Introduction:
This module is designed to provide you with basic concepts and techniques that will get
you started in understanding and analysis of hardware and software interaction in computer
systems. Computing is a rapidly changing field, with processor speed doubling every 1.5 years,
and entire computer systems becoming obsolete in two to four years. In this course, you will
learn how computers work, how to analyze computer performance, and what issues affect the
design and function of modern computers.
The development of computers since the late 1930s has led to the corresponding development
of a variety of software and hardware tools and capabilities. In this section of our course notes,
we review several key concepts that you are likely to encounter in this course, and in practice.
In particular, this section reviews the use of abstractions, technology, logic design, and
performance assessment.
➢ Lesson 2: Data Logic Design introduces you a system in electrical and computer
engineering that uses simple number values to produce input and output operations. As
a digital design engineer, you may assist in developing cell phones, computers, and
related personal electronic devices.
I. Pre – Assessment:
Direction. Write TRUE if the statement is correct and FALSE if it is wrong. Write your answers
on a separate sheet of paper.
_______2. The advent of World War II increased the demand for more accurate calculations.
_______3. Computer systems span many levels of detail, which in computer science we call
levels of abstraction.
_______7. Volatile memory: data retains as long as continuous power supply is provided.
_______8. Character data is composed of letters, symbols, and numerals that are not used in
calculations.
_______9. Numeric data consists of numbers that can be used in arithmetic operations.
_______10. All of the data stored and transmitted by digital devices is encoded as bits.
4 Module 1 | Basic organization of a computer system
Explore:
Platform technology
• Technology that enables the creation of products and processes that support present,
future or past developments.
• Consists of hardware, an operating system and coordinating programs that use the
instruction set for a particular processor or microprocessor.
A Platform technology can be defined as a structure or technology from which various products
can emerge without the expense of a new process introduction.
During the past few decades with the rise of the internet platform technologies had become the
new cool. Platforms like the app store or eBay have proven to be some of the most dynamic,
innovative, and fastest growing services but of course the platform model, the system's
architecture has always been there since the invention of farms and factories to the making of
Lego building blocks.
When many people see new technologies at work they go usually consider all the pieces that
went into its creation. They simply see the amazing capabilities and never give it much thought
but within advance and industrial economies many products and services are enabled by the
power of abstraction they are remixes built out services from platform the enables the endless
bundling and re-bundling of different components.
According to Wikipedia "A Platform technology can be defined as a structure or technology from
which various products can emerge without the expense of a new process introduction." in order
to achieve this, our system needs to be architected to have two fundamentally different levels. It
must have the platform providing the basic services that can be combined into different
configuration on the application layer to deliver various instances of the technology to the end
user.
The same can be set of a car; it is an instance of a technology. The end user gets and uses the
whole thing. To make the comparison clear, we could compare the instance of
6 Module 1 | Basic organization of a computer system
a car with an automobile platform that allows a motor company to release several motor
vehicles build upon a common jazzy which is a platform with different engines, interiors and
form factors for the same or different vehicles and brands within a company.
Probably the clearest and best example of platform technology is our personal computers. Our
platform in this case is the computer's operating system, a set of enabling technologies. In this
case, our foundation layer is our computer hardware and all our low level firmware that
interfaces between it and the operating system.
But within a business our foundation layer might be the economic system that is part of the
public services such as security, rule of law and maintenance of natural resources that will
enable our business to function.
The same would be through of a city, it rest upon and does enabled by a national infrastructure
system.
The next layer up for the foundation or hardware is the platform itself. The computer operating
system in this case, it is essentially manages the computer's resources and services that would
be required by applications. The platform takes the resources available to it from the
infrastructure and creates the Lego bricks that we will be using to build things with. These
resources are presented to producers on the application level through what are called "API's" or
Application Program Interfaces.
In our automotive factory, the platform would be the physical technologies and the production
line for creating the car's parts. Our employees can rearrange this production line to create
different vehicles or in our example the city, this platform level might be urban utilities that
contractors will interface with to build offices and residential places and there will be a standard
set of procedures for them to do this.
On top of the operating system lies the application layer, developers draw on services provided
by the operating system and bundle them in various different combinations the deliver a finished
application to the end user. Apps in the App Store, the cars coming off our production line, the
building in the city or the financial products offered by a bank are examples of the application
layer. Endless configuration and reconfiguration in response to the proceed needs and feedback
of the end users.
Lastly the User Interface Layer, when the end user switches on their computer, they don't want
to see zeroes and ones or lines of code they want to see things they understand; pictures of
files and nice drop down menus. The majority of people who interface with systems we are
architecting will do so, so as to get maximum functionality out with minimum input effort. In order
for them to do this, we need a layer that translates the internal logic of the system into a
language they understand.
7 Module 1 | Basic organization of a computer system
variety of printers. Although unsophisticated, this type of hardware helped the business community
become accustomed to the idea of machine-assisted inventory, payroll, and
8 Module 1 | Basic organization of a computer system
shipping. Additionally, the hardware developed by IBM was modified for use in its early
computers. Thus, it could be said that the era of electro-mechanical tabulating machines in
some ways prepared society for the advent of digital computers.
In the 1960s, transistors were integrated first on small circuit boards, and then etched on wafers
called integrated circuits. These were much smaller than the second-generation computer
circuits, and predictably consumed less power, took
up less space, and were easier to repair (or
replace). In the 1960s, many electronics companies
were in business that are no longer building digital
computers today - General Electric, RCA,
Honeywell, and Burroughs, to name but a few.
IBM's System/360 was the first general-purpose
9 Module 1 | Basic organization of a computer system
computer to support both business and scientific calculations, and had a number of operating
system features that were novel for its day, including upward compatibility of software,
programmability of the operating system through a (dreadful) language called OS/JCL, as well as
support for numerous programming languages.
The 1970s saw the advent of much faster and more capable integrated circuits, which made
computers smaller and faster. IBM's System/370 was the workhorse mainframe series of the
era, but was challenged by similar architectures, such as those produced by the Ahmdahl
Corporation. In the 1970s, two
important trends developed in addition
to mainframe computing. First, the
supercomputer was developed largely
due to the efforts of Seymour Cray, who
pioneered high-performance computing
in the 1960s with the CDC6600 that he
developed for Control Data Corporation. Second, the minicomputer was developed by Digital
Equipment Corporation (DEC), whose PDP series of machines was the first general-purpose
computer that small universities or research laboratories could afford. A third trend that went
almost unnoticed, was the gradual emergence of personal computers, which were initially the
domain of hobbyists. From these early beginnings came the Apple-II, the world's first affordable,
workable personal computer that could be operated in some ways like its larger ancestors
(mainframe or the minicomputer).
In the 1980s, integrated circuits gave way to very large scale integrated (VLSI) circuit technology,
which eventually packed millions of transistors onto a single chip. This comprised the fourth
generation of computing machine technology. As a
result, personal computers became smaller and faster,
posing a challenge to the minicomputer. The use of VLSI
technology enabled companies like DEC to compete
with the mainframe market by developing
superminicomputers. On the personal computer side of
the market, IBM introduced the IBM/PC in 1980, which revolutionized the desktop by providing
a common, open architecture. A young fellow, who combined ideas from DEC's VMS operating
system and the emerging UNIX operating system, headed a company that was chosen to write
the first extensible PC operating system - MS-DOS. The rest, as they say, is history - Bill Gates
and Microsoft rose with IBM and its processor developer Intel to become the dominant players
in a multi-billion-dollar industry, which eventually eclipsed the mainframe market and consigned
minicomputers, superminicomputers, and microcomputers to the dustbin of history (for all but
the most highly customized applications).
10 Module 1 | Basic organization of a computer system
Computer systems span many levels of detail, which in computer science we call levels of
abstraction.
▪ Operating System - Provides a convenient interface between (a) the user and his/her
application software, and (b) the hardware (sometimes called the bare machine).
▪ Instruction Set Architecture (ISA) - Interfaces the software (listed above) to the
hardware (listed below), and provides support for programming.
▪ Processor, Memory, and I/O System - These components support the execution of
machine code instructions expressed in terms of the ISA.
▪ Datapath and Control - Provide a convenient abstraction for connecting the processor,
memory, and I/O system and controlling their function efficiently.
11 Module 1 | Basic organization of a computer system
3. CPU Registers
4. Cache Memory
• It is used to hold those parts of data and program which are most frequently required
to execute program.
• It consumes less access time as compared to main memory, so it is faster than main
memory.
• It is the portion of memory made of high speed RAM (SRAM).
• Cache memory has limited capacity to store data.
• Widely used for Memory Caching.
• Works on the “Principle of Locality of Reference”.
5. It acts as a buffer between the CPU and the main memory.
12 Module 1 | Basic organization of a computer system
6. Primary Memory
• Primary memory is computer memory that is accessed directly by the CPU.
• RAM is used to hold the program and data during computation i.e. stores temporary
data.
• Volatile memory: data retains as long as continuous power supply is provided.
• Any cell can be accessed in any order at same speed if address is known.
• Communicates indirectly with CPU via main memory. So, It is slower than the main
memory.
• Non- volatile in nature. So, store data permanently.
1. Magnetic Storage Devices: it is sequential access memory.
2. Hard Disk
3. Floppy Disk
4. Magnetic Tape
• CD-ROM
• CD-Recordable
• CD-Rewritable
• DVD-ROM
1. USB Flash Drive
2. Memory Cards
3. Solid State Drive
• Processing devices are parts of the computer that are responsible for processing or
converting data into meaningful information.
1. Processor
2. Buses
3. System Clock
13. 1. Processor:
14. 2. Buses
• Electrical pathway that transfer data and instructions among different parts of
computer.
• Main memory is directly/indirectly connected to the processor via a bus.
1. Data Bus
2. Address Bus
3. Control Bus
16. 3. Clock
17. Software
• System software is "Background" software that helps the computer manage its own
internal resources.
• It enables the application software to interact with the computer hardware. Eg.
Operating System, Device Drivers, Utility Software, Translators etc.
• Process Management
• Memory Management
• File Management
• Device Management
• Security and user Interface
• Servicing the request by user etc…
21. Types of OS
• Batch Processing OS
• Multiuser OS
• Multi-tasking OS
• Multithreading OS
• Time Sharing OS
A. Machine Language
B. Assembly Language
• Machine language instructions are replaced with simple pneumonic abbreviations (e.g.
ADD, MUL, DIV etc…).
27. Assembler
16 Module 1 | Basic organization of a computer system
• Types of Assembler
1. Single-pass Assembler
2. Two-pass Assembler
• Consist of set of English like statements, it makes programming easier and less error-
prone.
• Two Categories:
29. Files used in c programming Source File (file with .c extension) Object File (file with
.o extension) Executable File (file with .exe extension) Compiler Header File (file with .h
extension) Linker
30. Compiler
• The name compiler is primarily used for programs that translate source code from a
high- level programming language to a lower level language (e.g., assembly language, object
code, or machine code) to create an executable program.
31. Interpreter
• In high-level language built-in library functions need to be linked to the library. This is
done by Linker.
• Sometimes, programs are divided into modules. These modules are combined and
assembled and object module is generated.
• Linker has the responsibility to combine / Link all modules and generate a single
executable file of the source program.
33. Loader
Representing Numbers
• Digital devices represent numeric data using the binary number system, also called base 2.
• No numeral like 2 exists in the system, so the number “two” is represented in binary as 10
(pronounced “one zero”).
18 Module 1 | Basic organization of a computer system
Representing Text
• Character data is composed of letters, symbols, and numerals that are not used in
calculations.
• Examples of character data include your name, address, and hair color.
• Character data is commonly referred to as “text.”
• Digital devices employ several types of codes to represent character data, including
ASCII, Unicode, and their variants.
• ASCII (American Standard Code for Information Interchange, pronounced “ASK ee”)
requires seven bits for each character.
• The ASCII code for an uppercase A is 1000001.
• Extended ASCII is a superset of ASCII that uses eight bits for each character.
• For example, Extended ASCII represents the uppercase letter A as 01000001.
• Using eight bits instead of seven bits allows Extended ASCII to provide codes for 256
characters.
• Unicode (pronounced “YOU ni code”) uses sixteen bits and provides codes or 65,000
characters.
• This is a bonus for representing the alphabets of multiple languages.
• UTF-8 is a variable-length coding scheme that uses seven bits for common ASCII
characters but uses sixteen-bit Unicode as necessary.
19 Module 1 | Basic organization of a computer system
ASCII codes are used for numerals, such as Social Security numbers and phone numbers.
Plain, unformatted text is sometimes called ASCII text and is stored in a so-called text file with a
name ending in .txt.
On Apple devices these files are labeled “Plain Text.” In Windows, these files are labeled “Text
Document”.
To create documents with styles and formats, formatting codes have to be embedded in the
text.
Microsoft Word produces formatted text and creates documents in DOCX format.
HTML markup language used for Web pages produces documents in HTML format.
• All of the data stored and transmitted by digital devices is encoded as bits.
• Terminology related to bits and bytes is extensively used to describe storage capacity
and network access speed.
• The word bit, an abbreviation for binary digit, can be further abbreviated as a lowercase
b.
• A group of eight bits is called a byte and is usually abbreviated as an uppercase B.
• When reading about digital devices, you’ll frequently encounter references such as 90
kilobits per second, 1.44 megabytes, 2.8 gigahertz, and 2 terabytes.
• Kilo, mega, giga, tera, and similar terms are used to quantify digital data.
20 Module 1 | Basic organization of a computer system
Use bits for data rates, such as Internet connection speeds, and movie download
speeds.
104 KB: Kilobyte (KB or Kbyte) is often used when referring to the size of small computer files.
56 Kbps: Kilobit (Kb or Kbit) can be used for slow data rates, such as a 56 Kbps (kilobits per
second) dial-up connection.
50 Mbps: Megabit (Mb or Mbit) is used for faster data rates, such as a 50 Mbps (megabits per
second) Internet connection.
3.2 MB: Megabyte (MB or MByte) is typically used when referring to the size of files containing
photos and videos.
100 Gbit: Gigabit (Gb or Gbit) is used for really fast network speeds.
•16 GB: Gigabyte (GB or GByte) is commonly used to refer to storage capacity
Explain:
• In this historical epoch, computers were first developed by the Egyptians, who had the abacus
and shadow clocks. In the preindustrial era, mechanical calculators were developed by Pascal
and Leibniz. During the Industrial Revolution, mechanical computers were envisioned, and parts
of such machines were prototyped, by Charles Babbage.
• Representing Numbers
Numeric data consists of numbers that can be used in arithmetic operations.
• Digital devices represent numeric data using the binary number system, also
called base 2.
• The binary number system only has two digits: 0 and 1.
I. Reference