0% found this document useful (0 votes)
34 views102 pages

01 - Unit 01 - Part 1 - v1

Uploaded by

verdah.inam2005
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views102 pages

01 - Unit 01 - Part 1 - v1

Uploaded by

verdah.inam2005
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 102

Applications of Information and

Communication Technologies
CSC 101

Dr. Syed Abdul Mannan Kirmani

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Textbooks
1. Computer Science Illuminated (7th Edition)
Nell Dale & John Lewis
Jones & Bartlett Learning, 2020
2. Understanding Computers: Today and Tomorrow, Comprehensive (16th Edition)
Deborah Morley & Charles S. Parker
Cengage Learning, 2017
3. Python Basics: A Practical Introduction to Python 3 (4th Edition)
Fletcher Heisler, David Amos, Dan Bader and Joanna Jablonski
Real Python, 2021
4. Python Programming: An Introduction to Computer Science (3rd Edition)
John M. Zelle
Franklin, Beedle & Associates Inc., 2016

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Reference Books
1. Foundations of Computer Science (4th Edition)
Behrouz Forouzan
Cengage Learning, 2017
2. Problem Solving & Programming Concepts (9th Edition)
Maureen Sprankle, Jim Hubbard
Prentice Hall, 2012.

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Computing System

Overview and Introduction

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Goals
• Describe a computer and a computing system
• Describe the historical evolution of computing hardware and software.
• Describe computing models
• Describe computing devices

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Computing Systems
• Computing system
• A computing system is composed of hardware, software, and the data that they manage
Note that we use the term computing system, not just computer.
A computer is a device.
A computing system, by contrast, is a dynamic entity, used to solve problems and interact with its
environment.

• Computer hardware
• The physical elements of a computing system
• Computer software
• The programs that provide the instructions that a computer executes
At the very heart of a computing system is the data that it manages. Without data, the hardware and
software are essentially useless.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
What Is a Computer and What Does It Do?
• Computer
• A programmable, electronic device that accepts data, performs operations on that data, and stores the data
• It follows instructions, called programs, which determine the tasks the computer will perform
• Basic operations
• Input: Entering data into the computer
• Processing: Performing operations on the data
• Output: Presenting the results
• Storage: Saving data, programs, or output for future use
• Communications: Sending or receiving data

CSC101 Applications of Information and Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Data vs Information
Data Information
• Raw, unorganized facts • Data that has been processed into a meaningful form
• Can be in the form of text, graphics, audio, or video

Information processing: Converting data into information

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Hardware
• Hardware: The physical parts of a computer
• Internal hardware
• Located inside the main box (system unit) of the computer
• External hardware
• Located outside the system unit
• Connect to the computer via a wired or wireless connection
• There is hardware associated with all five computer operations

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
CSC101 Applications of Information and
Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Software
• Software
• The programs or instructions used to tell the computer hardware what to do
• System Software
• The operating system and utility programs that control a computer system and allow you to use your
computer
• Enables the boot process, launches applications, transfers files, controls hardware configuration, manages
files on the hard drive, and protects from unauthorized use
• Application Software
• Programs that allow a user to perform specific tasks on a computer
• Word processing, playing games, browsing the Web, listening to music, etc.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
The History of Computing

Historical Evolution of Computing Systems

CSC101 Applications of Information and


Spring 2024
Communication Technologies
A Brief History of Computing Hardware

• The computers have their roots in the ancient past and have continued to evolve until the present
day. Some of the major stages are as below:
• Early History

• First Generation (1951–1959)

• Second Generation (1959–1965)

• Third Generation (1965–1971)

• Fourth Generation (1971–?)

• Parallel Computing

• Networking

• Cloud Computing
CSC101 Applications of Information and
Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 16th century BC - Abacus
• An instrument to record numeric values and on which a human can perform basic arithmetic

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1642 - Pascal’s Calculator or Pascaline
• Invented by French mathematician, Blaise Pascal
• A gear-driven mechanical device that can perform whole number addition and subtraction

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1694 – Leibniz’s Calculator or Stepped Reckoner
• Invented by German mathematician, Gottfried Wilhelm von Leibniz
• First mechanical device designed to do all four whole-number operations: addition, subtraction,
multiplication, and division

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1804 – Jacquard’s loom
• Invented by Joseph Jacquard and was used for weaving cloth.
• The loom used a series of cards with holes punched in them to specify the use of specific colored thread
and therefore dictate the design that was woven into the cloth.
• Although not a computing device, Jacquard’s loom was the first to make use of what later became an
important form of input: the punched card.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1830s – Analytical Engine
• Designed by British mathematician, Charles Babbage
• Design was too complex to be built with the technology of
his day
• He was first to include a memory so that intermediate values
did not have to be reentered.
• His design also included the input of both numbers and
mechanical steps, making use of punched cards similar to
those used in Jacquard’s loom

The completed portion of Charles


Babbage's Difference Engine, 1832
CSC101 Applications of Information and
Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1843 – Extension of Babbage’s work by Ada Lovelace
• Ada Augusta, Countess of Lovelace, a British mathematician extended Babbage’s work
• Ada is credited with being the first programmer.
• The concept of the loop — a series of instructions that repeat — is attributed to her.
• The programming language Ada, used largely by the U.S. Department of Defense for many years, is named
for her.

Blue plaque in honor of Ada Lovelace in St.


James's Square, London

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1885 –Adding Machine
• Invented by William Seaward Burroughs I
• Widely adopted by banking sector in US
• Founded American Arithmometer Company in 1886 that was
later renamed to Burroughs Adding Machine Company in 1904

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• Late 1880s – Tabulating Machine
• Invented by Dr. Herman Hollerith
• Electro-mechanical machine that could read punch cards
• Processed the 1890 US Census data in 2 1⁄2 years instead of the
decade it usually took to process the data manually.
• Hollerith’s company became International Business Machines
(IBM)

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• 1936 – Turing Machine
• A theoretical development (that had nothing to do with
hardware per se) but profoundly influenced the field of
computer science
• Alan M. Turing, another British mathematician, invented an
abstract mathematical model called a Turing machine, laying
the foundation for a major area of computing theory
• The most prestigious award given in computer science
(equivalent to the Fields Medal in mathematics or a Nobel
Prize in other sciences) is the Turing Award, named for Alan
Turing

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History

• In 1937, George Stibitz constructed a 1-bit binary


adder, a device that adds binary digits, using relays.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History

• In 1938, Claude E. Shannon published a paper


about implementing symbolic logic using relays.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• In 1938, Konrad Zuse built the first mechanical
binary programmable computer.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• In 1943, Thomas Flowers built the Colossus – considered by many to be the
first all-programmable electronic digital computer.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• In 1944, the IBM Automatic Sequence Controlled Calculator was given to
Harvard; it was subsequently known as the Harvard Mark I.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• In 1946, ENIAC – Electronic Numerical Integrator And Computer, was unveiled.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• John von Neumann, who had served as a consultant on the ENIAC project, started work on
another machine known as EDVAC, which was completed in 1950.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• In 1951, the first commercial computer, UNIVAC I, was delivered to the U.S. Bureau of the
Census.
• The UNIVAC I was the first computer used to predict the outcome of a presidential election.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• The early history that began with the abacus ended with the delivery of the UNIVAC I.
• With the building of that machine, the dream of a device that could rapidly manipulate
numbers was realized.
• Some experts predicted at that time that a small number of computers would be able to
handle the computational needs of mankind.
• What they didn’t realize was that the ability to perform fast calculations on large amounts
of data would radically change the very nature of fields such as mathematics, physics,
engineering, and economics.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Early History
• That is, computers made those experts’ assessments of what needed to be calculated entirely
invalid.
• After 1951, the story becomes one of the ever-expanding use of computers to solve
problems in all areas.
• From that point, the search has focused not only on building faster, bigger devices, but also
on developing tools that allow us to use these devices more productively.
• The history of computing hardware from this point on is categorized into several
“generations” based on the technology they employed.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – First Generation
First Generation (1951–1959)
• Building Blocks (Main Technology)
• Vacuum Tubes
• Commercial computers were built using vacuum tubes to store information.
• Drawbacks:
• A vacuum tube, generated a great deal of heat and was not very reliable.
• The machines that used them required heavy-duty air conditioning and frequent
maintenance.
• They also required large, specially built rooms.
• Memory
• The primary memory device of this first generation of computers was a magnetic drum
that rotated under a read/write head.
• When the memory cell being accessed rotated under the read/write head, the data was
written to or read from that place.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – First Generation
• Input & Output
• The input device used by these computers was a card reader that read the holes punched in an IBM card (a
descendant of the Hollerith card).
• The output device was either a punched card or a line printer.
• By the end of this generation, magnetic tape drives had been developed that were much faster than card
readers.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – First Generation
• Storage
• Magnetic tapes are sequential storage devices, meaning that the data on the tape must be accessed one after
another in a linear fashion.
• Storage devices external to the computer memory are called auxiliary storage devices.
• The magnetic tape was the first of these devices.

Collectively, input devices, output devices, and auxiliary


storage devices became known as Peripheral Devices.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Second Generation
Second Generation (1959–1965)
• Building Blocks (Main Technology)
• Transistor
• The advent of the transistor (for which John Bardeen, Walter H. Brattain, and William B. Shockley won a Nobel
Prize) ushered in the second generation of commercial computers.
• The transistor replaced the vacuum tube as the main component in the hardware.
• The transistor was smaller, faster, more durable, and cheaper.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Second Generation
• Memory
• The second generation also witnessed the advent of immediate access memory.
• When accessing information from a drum, the CPU had to wait for the proper place to rotate under the
read/write head.
• The second generation used memory made from magnetic cores, tiny doughnut-shaped devices, each
capable of storing one bit of information.
• These cores were strung together with wires to form cells, and cells were combined into a memory unit.
• Because the device was motionless and was accessed electronically, information was available instantly.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Second Generation
• Storage
• The magnetic disk, a new auxiliary storage device, was also developed during the second computer
hardware generation.
• The magnetic disk is faster than magnetic tape because each data item can be accessed directly by
referring to its location on the disk.
• Unlike a tape, which cannot access a piece of data without accessing everything on the tape that comes
before it, a disk is organized so that each piece of data has its own location identifier, called an address.
• The read/write heads of a magnetic disk can be sent directly to the specific location on the disk where the
desired information is stored.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Third Generation
Third Generation (1965–1971)
• Building Blocks (Main Technology)
• Integrated Circuits
• In the second generation, transistors and other components for the computer were assembled by hand on printed
circuit boards.
• The third generation was characterized by integrated circuits (ICs), solid pieces of silicon that contained the
transistors, other components, and their connections.
• Integrated circuits were much smaller, cheaper, faster, and more reliable than printed circuit boards.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Third Generation
• Gordon Moore, one of the co-founders of Intel, noted that from the time of the invention of
the IC, the number of circuits that could be placed on a single integrated circuit was
doubling each year.
• This observation became known as Moore’s law.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Third Generation
• Memory
• Transistors also were used for memory construction, where each transistor represented one bit of
information.
• Integrated-circuit technology allowed memory boards to be built using transistors.
• Storage
• Auxiliary storage devices were still needed because transistor memory was volatile; that is, the
information went away when the power was turned off.
• Input & Output
• The terminal, an input/output device with a keyboard and screen, was introduced during this generation.
• The keyboard gave the user direct access to the computer, and the screen provided an immediate response.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Fourth Generation
Fourth Generation (1971–?)
• Building Blocks (Main Technology)
• Microprocessors
• Large-scale integration characterizes the fourth generation.
• From several housand transistors on a silicon chip in the early 1970s, we had moved to a whole microcomputer
on a chip by the middle of this decade.
• Memory
• Main memory devices are still made almost exclusively out of chip technology.
• Over the previous 40 years, each generation of computer hardware had become more
powerful in a smaller package at lower cost.
• Moore’s law was modified to say that chip density was doubling every 18 months.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Fourth Generation
• By the late 1970s, the phrase personal computer (PC) had entered the vocabulary.
• Microcomputers had become so cheap that almost anyone could have one, and a generation
of kids grew up playing Pac-Man.
• The fourth generation found some new names entering the commercial market.
• Apple, Tandy/Radio Shack, Atari, Commodore, and Sun joined the big companies of earlier
generations—IBM, Remington Rand, NCR, DEC (Digital Equipment Corporation), Hewlett-
Packard, Control Data, and Burroughs.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Fourth Generation
• The best-known success story of the personal computer revolution is that of Apple. Steve
Wozniak, an engineer, and Steve Jobs, a high school student, created a personal computer kit
and marketed it out of a garage.
• This was the beginning of Apple Computer, a multibillion-dollar company.
• The IBM PC was introduced in 1981 and was soon followed by compatible machines
manufactured by many other companies.
• For example, Dell and Compaq were successful in making PCs that were compatible with
IBM PCs.
• Apple introduced its very popular Macintosh microcomputer line in 1984.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Fourth Generation
• In the mid-1980s, larger, more powerful machines were created; they were referred to as
workstations.
• Workstations were generally meant for business, not personal, use.
• The idea was for each employee to have his or her own workstation on the desktop.
• These workstations were connected by cables, or networked, so that they could interact with
one another.
• Workstations were made more powerful by the introduction of the RISC (reduced-
instruction-set computer) architecture.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Fourth Generation
• Each computer was designed to understand a set of instructions, called its machine language.
• Conventional machines such as the IBM 370/168 had an instruction set containing more than
200 instructions.
• Instructions were fast and memory access was slow, so specialized instructions made sense.
• As memory access got increasingly faster, using a reduced set of instructions became
attractive.
• Sun Microsystems introduced a workstation with a RISC chip in 1987.
• Its enduring popularity proved the feasibility of the RISC chip.
• These workstations were often called UNIX workstations because they used the UNIX
operating system.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Fourth Generation
• Because computers are still being made using circuit boards, we cannot mark the end of this
generation.
• However, several things have occurred that so dramatically affected how we use machines
that they certainly have ushered in a new era.
• Moore’s law was once again restated in the following form: “Computers will either double
in power at the same price or halve in cost for the same power every 18 months.”

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Parallel Computing
• Although computers that use a single primary processing unit continue to flourish, radically
new machine architectures began appearing in the late 1980s.
• Computers that use these parallel architectures rely on a set of interconnected central
processing units.
• One class of parallel machines is organized so that the processors all share the same memory
unit.
• In another class of machines, each central processor has its own local memory and
communicates with the others over a very fast internal network.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Parallel Computing
• Parallel architectures offer several ways to increase the speed of execution.
• For example, a given step in a program can be separated into multiple pieces, and those
pieces can be executed simultaneously on several individual processors.
• These machines are called SIMD (single-instruction, multiple-data-stream) computers.
• A second class of machines can work on different parts of a program simultaneously.
• These machines are called MIMD (multiple-instruction, multiple-data-stream) computers.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Parallel Computing
• The potential of hundreds or even thousands of processors combined in one machine is
enormous, and the challenge of programming for such machines is equally daunting.
• Software designed for parallel machines is different from software designed for sequential
machines.
• Programmers have to rethink the ways in which they approach problem solving and
programming to exploit parallelism.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Networking
• In the 1980s, the concept of a large machine with many users gave way to a network of
smaller machines connected so that they can share resources such as printers, software, and
data.
• Ethernet, invented by Robert Metcalfe and David Boggs in 1973, used a cheap coaxial cable
to connect the machines and a set of protocols to allow the machines to communicate with
one another.
• By 1979, DEC, Intel, and Xerox joined to establish Ethernet as a standard.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Networking
• Workstations were designed for networking, but networking personal computers didn’t
become practical until a more advanced Intel chip was introduced in 1985.
• By 1989, Novell’s Netware connected PCs together with a file server, a computer with
generous mass storage and good input/output capability.
• Placing data and office automation software on the server rather than each PC having its
own copy allowed for a measure of central control while giving each machine a measure of
autonomy.
• Workstations or personal computers networked together became known as LANs (local area
networks).

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Networking
• The Internet as we know it today is descended from the ARPANET, a government-sponsored
network begun in the late 1960s, which originally consisted of 11 nodes concentrated mainly
in the Los Angeles and Boston areas.
• Like ARPANET and LANs, the Internet uses packet switching, a way for messages to share
lines.
• The Internet, however, is made up of many different networks across the world that
communicate by using a common protocol, TCP/IP (Transmission Control Protocol/Internet
Protocol).

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Cloud Computing
• Some of the most recent changes in the overall management and use of computing hardware
are based on the increasing reliance on cloud computing, which is the use of computer
resources on the Internet instead of relying on devices at your physical location.
• The computing hardware is somewhere “in the cloud” instead of on your desktop or even in
your building.
• Hardware problems make computing difficult, especially for businesses and other large-
scale endeavors.
• People trying to solve problems don’t want to have additional problems related to the
maintenance of computers and the need to upgrade to more advanced technology as it
becomes available.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Cloud Computing
• As networking became more available, businesses would increasingly rely on data centers to
support their computing efforts.
• A data center is generally a third-party solution—a separate business providing computing
hardware that another business would use.
• The personnel at the data center set up and configure the machines needed by the business.
• The use of a data center offloaded a big part of the challenges of managing the necessary
computing infrastructure, but the process could still be painful because of the
communication necessary between the business and the data center.
• It would often take several days to set up a new computer (a server) needed by the business.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Hardware – Cloud Computing
• Eventually, the idea of a data center evolved into the concept of cloud computing, in which a
business could “spin up” a new server in a matter of minutes using some commands through
a web interface.
• The process is so much more streamlined now that many businesses don’t even consider
owning and managing their own computing hardware.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
A Brief History of Computing Software

• Some of the major stages in the historical evolution of software are as below:
• First Generation (1951 – 1959)

• Second Generation (1959 – 1965)

• Third Generation (1965 – 1971)

• Fourth Generation (1971 – 1989)

• Fifth Generation (1990 – Present)

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – First Generation
First-Generation Software (1951–1959)
• Machine Language
• The first programs were written using machine language, the instructions built into the electrical circuitry
of a particular computer.
• Even the small task of adding two numbers together used three instructions written in binary (1s and 0s),
and the programmer had to remember which combination of binary digits meant what.
• Programmers using machine language had to be very good with numbers and very detail oriented.
• Programming in machine language was both time-consuming and prone to errors.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – First Generation
• Assembly Language
• Because writing in machine code is so tedious, some programmers took the time to develop tools to help
with the programming process.
• Programmers began writing programs in assembly language, which used mnemonic codes to represent
each machine-language instruction.
• These mnemonics are abbreviated and sometimes difficult to read, but they are much easier to use than
long strings of binary digits.
• Assembly language was the first step toward the languages we use today to program computers.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – First Generation
• Assembler
• A program called an assembler reads each of the program’s instructions in mnemonic form and translates it
into the machine-language equivalent.
• Since every program that is executed on a computer eventually must be in the form of the computer’s
machine language, the developers of assembly language also created software translators to translate
programs written in assembly language into machine code.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – First Generation
• System Programmers VS Application Programmers
• The programmers who wrote these tools to make programming easier for others were the first systems
programmers.
• So, even in first-generation software, there was the division between those programmers who wrote tools
and those programmers who used the tools.
• The assembly language acted as a buffer between the programmer and the machine hardware.
• Sometimes, when efficient code is essential, programs today may be written in assembly language.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Second Generation
Second-Generation Software (1959–1965)
• High-Level Languages
• The second generation saw more powerful languages developed that allowed the programmer to write
instructions using more English-like statements.
• These languages include:
• FORTRAN (a language designed for numerical applications)
• COBOL (a language designed for business applications)
• LISP (a language designed for artificial intelligence applications and research)

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Second Generation
• Compiler
• As with assembly language, a program written in a high-level language has to be translated into machine
instructions to be executed.
• Such a translator is called a compiler, and it also checks to ensure that the syntax of the high-level
language is being followed correctly.
• Portability
• The introduction of high-level languages provided a vehicle for running the same program on more than
one computer.
• A program written in FORTRAN or COBOL wasn’t tied to a particular type of computer.
• It could run on any machine that had an appropriate compiler.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Second Generation
• System Programmers VS Application Programmers
• At the end of the second generation, the role of the systems programmer was becoming more well-defined.
• Systems programmers wrote tools like assemblers and compilers; those people who used the tools to write
programs were called applications programmers.
• The applications programmer was becoming even more insulated from the computer hardware as the
software surrounding the hardware became more sophisticated.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Third Generation
Third-Generation Software (1965–1971)
• Operating System & System Software
• During the third generation of commercial computers, it became apparent that the human was slowing
down the computing process.
• Computers were sitting idle while waiting for the computer operator to prepare the next job.
• The solution was to put the computer resources under the control of the computer—that is, to write a
program that would determine which programs were run when.
• This kind of program was the first operating system.
• During the first two computer software generations, utility programs had been written to handle often-
needed tasks.
• Loaders loaded programs into memory and linkers linked pieces of large programs together.
• In the third generation, these utility programs were refined and put under the direction of the operating
system.
• This group of utility programs, the operating system, and the language translators (assemblers and
compilers) became known as systems software.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Third Generation
• Time – shared Access to a Computer by Multiple Users
• The introduction of computer terminals as input/output devices gave users ready access to computers, and
advances in systems software gave machines the ability to work much faster.
• However, inputting and outputting data from keyboards and screens was a slow process, much slower than
carrying out instructions in memory.
• The problem was how to make better use of the machine’s greater capabilities and speed.
• The solution was time sharing—many different users, each at a terminal, communicating with a single
computer all at the same time.
• Controlling this process was an operating system that organized and scheduled the different jobs.
• For the user, time sharing is much like having his or her own machine.
• Each user is assigned a small slice of central processing time and then is put on hold while another user is
serviced.
• Users generally aren’t even aware that there are other users.
• However, if too many people try to use the system at the same time, there can be a noticeable wait for a
job to be completed.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Third Generation
• Application Softwares
• As part of the third generation, general-purpose application programs also were being written.
• One example was the Statistical Package for the Social Sciences (SPSS), which was written in FORTRAN.
• SPSS had a special language that allowed the user, who was often not a programmer, to describe some
data and the statistics to be computed on that data.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Third Generation
• Computer Users VS System Programmers VS Application Programmers
• At the beginning of the computer era, the computer user and the programmer were the same person.
• By the end of the first generation, programmers had emerged who wrote tools for other programmers to
use, giving rise to the distinction between systems programmers and applications programmers. However,
the programmer was still the user.
• In the third generation, systems programmers were writing software for nonprogrammers to use.
• For the first time, there were computer users who were not programmers in the traditional sense.
• The separation between the user and the hardware was growing wider.
• The hardware had become an even smaller part of the picture.
• A computer system—a combination of hardware, software, and the data managed by them—had emerged.
• Occasionally programmers still needed to access the computer at lower levels, but the tools available at
higher levels changed the situation greatly.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fourth Generation
Fourth Generation (1971–1989)
• Structured Programming
• The 1970s saw the introduction of better programming techniques called structured programming, a
logical, disciplined approach to programming.
• The languages Pascal and Modula-2 were built on the principles of structured programming.
• BASIC, a language introduced for third-generation machines, was refined and upgraded to more
structured versions.
• C, a language that allows the user to intersperse assembly-language statements in a high-level program,
was also introduced.
• C++, a structured language that allows the user access to low-level statements as well, became the
language of choice in the industry.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fourth Generation
• Operating Systems
• Better and more powerful operating systems were being developed, too.
• UNIX, developed at AT&T™ as a research tool, has become standard in many university settings.
• PC-DOS, developed for the IBM PC, and MS-DOS, developed for PC compatibles, became standards for
personal computers.
• Apple capitalized on research done at Xerox PARC by incorporating a mouse and point-and-click
graphical interface into the operating system for the Macintosh, which ushered in an important change to
computer–user interaction on personal computers.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fourth Generation
• Application Software
• These programs allow the user with no computer experience to perform a specific task.
• Three types of application software introduced during this period are still crucial to computer usetoday:
• Spreadsheets
• Word processors
• Database management systems.
• Lotus 1-2-3 was the first commercially successful spreadsheet that allowed a novice user to enter and
analyze all kinds of data.
• WordPerfect was one of the first word processors
• dBase IV was a system that let the user store, organize, and retrieve data

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fifth Generation
Fifth Generation (1990–Present)
• The rise of Microsoft®
• Microsoft’s Windows operating system emerged as a major force in the PC market during this period.
• Although WordPerfect continued to improve, Microsoft Word became the most used word processing
program.
• In the mid-1990s, word processors, spreadsheet programs, database programs, and other application
programs were bundled together into super packages called office suites.
• Object-oriented design and programming
• Object-oriented design became the design of choice for large programming projects.
• Whereas structured design is based on a hierarchy of tasks, object-oriented design is based on a hierarchy
of data objects.
• Java™, a language designed by Sun Microsystems for object-oriented programming, began to rival C++.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fifth Generation
• World Wide Web
• In 1990, Tim Berners-Lee, a British researcher at the CERN physics lab in Geneva, Switzerland, created a
set of technical rules for what he hoped would be a universal Internet document center called the World
Wide Web.
• Along with these rules, he created HTML, a language for formatting documents, and a rudimentary, text-
only browser, a program that allows a user to access information from websites worldwide.
• In 1993, Marc Andreesen and Eric Bina released Mosaic, the first graphics-capable browser.
• At this point, there were two giants in the browser market: Netscape Navigator (derived from Mosaic)
and Microsoft’s Internet Explorer (IE).
• Microsoft bundled IE with its Windows operating system, which made IE the winner in the browser wars.
• This bundling led to a monopoly lawsuit filed by the U.S. government, the 2001 settlement of which
required Microsoft to be more open with its competitors.
• Netscape’s future became uncertain after America Online purchased it in 1998, and it was eventually
discontinued.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fifth Generation
• World Wide Web
• Microsoft eventually replaced Internet Explorer with a browser called Edge.
• Firefox, a web browser that retained some of the flavor of Mosaic, was released in 2004.
• Around the same time, Apple released its Safari browser.
• In 2008, Google announced its browser called Chrome.
• All of these now claim their share of the browser market.
• Although the Internet had been around for decades, the World Wide Web made it easy to use the Internet
to share information around the world.
• User-generated and user-edited content became the norm.
• Online blogging allowed anyone to become an author or a critic.
• Social networking has revolutionized how we interact with other people.
• Websites such as the online encyclopedia Wikipedia provide rich content that anyone can add to and edit.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Software – Fifth Generation
• Computer Users VS System Programmers VS Application Programmers
• The fifth generation must be characterized most of all by the changing profile of the user.
• The first user was the programmer who wrote programs to solve specific problems—his or her own or
someone else’s.
• Then the systems programmer emerged, who wrote more and more complex tools for other programmers.
• By the early 1970s, applications programmers were using these complex tools to write applications
programs for nonprogrammers to use.
• With the advent of the personal computer, computer games, educational programs, and user-friendly
software packages, many people became computer users.
• With the birth and expansion of the World Wide Web, web surfing has become the recreation of choice, so
even more people have become computer users.
• The user is a first-grade child learning to read, a teenager downloading music, a college student
• writing a paper, a homemaker planning a budget, and a banker looking up a customer’s loan record.

CSC101 Applications of Information and


Computer Science Illuminated, 7th Edition Spring 2024
Communication Technologies
Computing Models

Turing & Von Neumann Models

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Universal Computational Device

• Computer as a Universal Computational Device


• Idea described by Alan Turing in 1936

• Presented mathematical description of a special


kind of a machine that can perform all
computation

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Turing Model: Programmable Data Processor

• A computer based on Turing Model is a device that accepts input data, processes the data
as per instructions of the program, and creates output data
• A program is a set of instructions that tells the computer what to do with data

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Turing Model: Programmable Data Processor

• In the Turing model, the output data depends on the combination of two factors:
• Input data
• Program

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Turing Model: Programmable Data Processor

Same Program with different Input Data

Although the program is the same, the outputs are different, because different input data is processed.
CSC101 Applications of Information and
Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Turing Model: Programmable Data Processor

Same Input Data with different Programs

• Each program makes the computer


perform different operations on
the input data.
• The first program sorts the data,
the second adds the data, and the
third finds the smallest number.
• Same input data and same
program always produce the same
output data

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Universal Turing Machine

• A universal Turing machine, a machine that can do any computation if the appropriate
program is provided, was the first description of a modern computer.
• In fact, a universal Turing machine is capable of computing anything that is computable.

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Programs

• Computers built on the Turing universal machine stored only data in their memory
• Programs were implemented by manipulating a set of switches or by changing the wiring
system

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Von Neumann Model

• Around 1944–1945, John von Neumann proposed that, since program and data are
logically the same, programs should also be stored in the memory of a computer
• The memory of modern computers hosts both a program and its corresponding data

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Von Neumann Model

Computers built on the von Neumann model


divide the computer hardware into four
subsystems:

• Memory
• It is the storage area where programs and data are stored during processing
• Arithmetic Logic Unit (ALU)
• It is where calculation and logical operations take place
• Control Unit
• It controls the operations of the memory, ALU, and the input/output subsystem
• Input / Output
• Input subsystem accepts input data and the program from outside the computer
• Output subsystem sends the result of processing to the outside world
CSC101 Applications of Information and
Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Von Neumann Model
Sequential Execution of Instructions
• A program in the von Neumann model is made of a finite number of instructions.
• In this model, the control unit fetches one instruction from memory, decodes it, then
executes it.
• In other words, the instructions are executed one after another.
• Of course, one instruction may request the control unit to jump to some previous or
following instruction, but this does not mean that the instructions are not executed
sequentially.
• Sequential execution of a program was the initial requirement of a computer based on the
von Neumann model.
• Today’s computers execute programs in the order that is the most efficient.

CSC101 Applications of Information and


Foundations of Computer Science (4 th Ed.) by Behrouz Forouzan Spring 2024
Communication Technologies
Computing Devices

Different Types

CSC101 Applications of Information and


Spring 2024
Communication Technologies
Computers to Fit Every Need
• Six basic categories of computers:
• Embedded computers
• Mobile devices
• Personal computers
• Servers
• Mainframe computers
• Supercomputers

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Embedded Computers
• Embedded Computer
• A tiny computer embedded in a product and designed to perform specific functions or tasks for that product
• Cannot be used as a general-purpose computer
• Often embedded into:
• Household appliances
• Thermostats
• Answering Machines
• Cars

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Mobile Devices
• Mobile Device
• A very small device that has built-in computing or Internet capability
• Smartphone
• Small Tablets
• Smart Watches

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Personal Computers (PCs)
• Personal Computer
• A type of computer based on a microprocessor and designed to be used by one person at a time.
• Also called a Microcomputer.
• Widely used by individuals and businesses today
• Available in a variety of shapes and sizes.
• Include:
• Desktop Computers
• Portable Computers

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Desktop computers
• Desktop computer
• A personal computer designed to fit on or next to a desk
• Can use tower case, desktop case, or all-in-one
• Can be PC-compatible or Macintosh (Apple)
• Not designed to be portable

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Portable Computers
• Portable Computer
• A small personal computer that is designed to be carried around easily.
• Notebook Computer:
• A fully functioning portable computer that opens to reveal a screen and keyboard
• Also called a Laptop Computer.
• Tablet computer:
• A portable computer about the size of a notebook computer that is designed to be used with a digital pen or touch
input.
• Hybrid Notebook-Tablet Computer:
• A portable computer designed to function as both a notebook and a tablet computer.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Portable Computers
• Netbook Computer
• A small notebook computer that is designed primarily to access Internet applications and resources.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Thin Clients and Internet Appliances
• Most personal computers are standalone, self-sufficient units that can perform input,
processing, output, and storage tasks without being connected to a network.
• In contrast, a device that must be connected to a network to function is referred to as a Dumb
Terminal.
• Two types of personal computers that may be able to perform a limited amount of
independent processing but are designed to be used with a network are Thin Clients and
Internet Appliances.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Thin Clients and Internet Appliances
• Thin Client
• A personal computer designed to access a network for processing and data storage, instead of performing
those tasks locally.
• Lower cost, increased security and easier maintenance
• Limited or no local storage
• Not able to function as a computer if network is down
• Thin clients are often used in businesses, school computer labs, retail stores, and medical offices.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Thin Clients and Internet Appliances
• Internet Appliances
• A device that can be used to access the Internet.
• Sometimes referred to as Internet-enabled Devices or Smart Appliances
• Some Internet appliances such as smart TVs and the smart refrigerator use apps to deliver news, sports
scores, weather, music, and other Web-based information.
• Gaming consoles (such as the Nintendo Wii, Xbox, and Sony PlayStation) that can be used to view Internet
content, in addition to their gaming abilities, can also be classified as Internet appliances.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Server
• Server
• A computer used to host programs and data for a small network.
• Also sometimes called a Midrange Server, Minicomputer, or
Midrange Computer
• Users connect to a server via a network using either a computer,
thin client, or dumb terminal
• Virtualization:
• Creating virtual (rather than actual) versions of a computing
resource
• Often used to share a server for increased efficiency

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Mainframe Computers
• Mainframe Computer
• A computer used in large organizations that need to manage large
amounts of centralized data and run multiple programs
simultaneously
• Standard choice for large organizations, hospitals, universities,
large businesses, banks, government offices
• Located in climate-controlled data centers and connected to the
rest of the company computers via a network
• Larger, more expensive, and more powerful than midrange servers
• Usually operate 24 hours a day
• Also called High-End Servers or Enterprise-Class Servers

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Supercomputers
• Supercomputer
• The fastest, most expensive, most powerful type of computer
• Generally, run one program at a time, as fast as possible
• Commonly built by connecting hundreds of smaller computers, supercomputing cluster
• Used for space exploration, missile guidance, satellites, weather forecast, oil exploration, scientific
research, hosting complex Web sites, decision support systems, 3D applications, etc.

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Supercomputers
• Titan supercomputer
• Located at U.S. Department of Energy, Oak Ridge National Laboratory
• With a peak speed of 27,000 trillion calculations per second
• The fastest in 2012

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies
Supercomputers
• Frontier supercomputer
• Located at U.S. Department of Energy, Oak Ridge National Laboratory
• Speed exceeding a quintillion (or 1018) calculations per second
• The fastest in 2022

CSC101 Applications of Information and


Understanding Computers: Today and Tomorrow, 16th Edition Spring 2024
Communication Technologies

You might also like