Data communications networks
Data communications networks
Chapter 1 Computer Overview
History of Computing Machines
Invention of Computer
Computer Generations of Computer
Types of Computer
1.1 History of Computing Machines
the Sumerians used a box of stones as a device for representing numbers
2500 years ago
The abacus, invented by the Chinese
The first mechanical calculator was invented by Blaise Pascal, a French
In early 1700s
The first general-purpose calculating machine was Leibniz Wheel introduced
A British mathematician, Charles Babbage, designed a machine that he
called the difference engine, for calculating certain types of mathematical
A machine based on Babbage's ideas was completed in 1855 and used in the
United States and Great Britain.
1.2 Invention of Computer
＊ Starting in the 1930s and through the 1940s, a number of
machines were developed that were like a computer.
＊ One of the first computer-like devices was developed in
Germany by Konrad Zuse in 1941. Called the Z3
＊ Another electromechanical computing machine was developed
by Howard Aiken, with financial assistance from IBM, at Harvard
University in 1943.
＊ During World War II, a team of scientists and mathematicians,
working at Bletchley Park, north of London, created one of the
first all-electronic digital computers—Colossus
＊ Perhaps the most influential of the early computer like devices
was the Electronic Numerical Integrator and Computer, or ENIAC
1.3 Computer Generations of
1.3.1 First-Generation Computer: 1951—1958
First-generation computers were characterized by the use of vacuum tubes as their
principal electronic component
1.3.2 Second-Generation Computer: 1959—1963
In the second generation of computers, transistors replaced vacuum tubes.
1.3.3 Third-Generation Computer: 1964—1970
The technical development that marks the third generation of computers is the use of
integrated circuits or ICs in computers.
1.3.4 Fourth-Generation Computer: 1971—Present
The microprocessor brought the fourth generation of computers. This generation is
characterized by more and more transistors being contained on a silicon chip.
1.3.5 Fifth-Generation Computer (Future Development)
The fifth-generation computers will be intelligent computers capable of reasoning similar to
that of a person.
1.4 Types of Computer
They can be divided into several categories on the
basis of cost and performance:
They are relatively inexpensive machine that can fit on a desktop, or can be
They are expensive and powerful desktop computers used mainly by
engineers, scientists, and special-effects creators for sophisticated purposes.
Their capabilities are suited to a business, school, or laboratory.
A mainframe, which also has many processors, can support hundreds, or
even thousands, of users simultaneously.
They may occupy special air-conditioned rooms and are often used for
Chapter 2 Computer
2.1 Processing Hardware
Computer's control center is made up of the processing and main memory devices
CPU: The control unit and the arithmetic/logic unit.
interprets the instructions given to it by software, and carries
out these instructions by processing data and controlling the
rest of the computer's components.
The control unit informs other components of the computer
system how to carry out a program's instructions
The arithmetic/logic unit, or ALU, performs arithmetic
operations and logical operations and controls the speed of
There are some registers in the CPU that are used for storing
data temporarily during execution of instructions
Three processor architectures are adapted in chip design: CISC, RISC, MPP.
CISC stands for complex instruction set computer, which is
found in most conventional mainframes and personal computers
RISC, for reduced instruction set computer, refers to a
processors that support fewer instructions than do CISC chips.
Massively parallel processing (MPP), which spreads
calculations over hundreds or even thousands of standard
Memory is temporary working storage, which is also named as
primary storage, main memory, and RAM. RAM is used for
holding data and programs needed for immediate processing
2.2 Input Device
Mice and Pens
A computer keyboard includes keys for letters, digits, and special symbols.
The standard keyboard, is divided into four sections:
＊ Standard typing keys,
＊ Function keys,
＊ Cursor-movement keys,
＊ Numeric keypad..
The typing keys usually locate in the left of a keyboard,
whose function is very alike that of typewriter.
All computer keyboards have a row of numbers across
Cursor-movement keys are in a separate keypad or may
be part of the numeric keypad.
Functional keys are labeled with F and a number.
2.2.2 Mice and Pens
Non-keyboard input devices
＊ Electronic mice
＊ Light pens
＊ Touch screens
＊ Graphics tablets
An electronic mouse is a palm-sized device that can be moved
across a flat surface to direct a pointer on a display screen.
Light pen—a pencil-like light sensitive rod that can be pointed at
a display screen, and then pressed, to activate various functions.
Display screens allow the touch a finger to activate a function.
Optical scanners use visible light to read characters, numbers, or patterns.
＊ Optical mark reader
＊ Optical character reader
＊ Bar-code reader
＊ Desktop scanners.
An optical mark reader (OMR) senses marks on special paper forms.
The optical character reader (OCR), can detect special OCR character sets
called OCR fonts
A bar-code reader is a scanner that reads data coded as vertical lines (bars)
of varying width.
Flatbed and drum scanners are used for scanning high-quality
FAX , short for facsimile transmission machines, allow text to art to be
electronically sent from one location to another.
2.2.4 Voice Recognition
A voice recognition device can translate the human
voice into signals for use as input media
A voice recognition system uses a
microphone (or a telephone) as an input
device to convert a person's speech into
digital code, by comparing the electrical
patterns produced by the speaker's voice
with a set of prerecorded patterns stored
in the computer.
2.3 Output Device
2.3.3 Other Output Devices
Two common monitors are:
(1) Cathode-ray tubes (CRTs), which are like television picture tubes;
(2) flat-panel displays made of LCD, which are much thinner, weight
less, and consume less power.
CRTs are used with both microcomputers and display
terminals and tend to be bulky. Flat-panel displays in
contrast, are very thin, making them ideal for lightweight
Flat-panel displays are not bulky as CRTs, the images
displayed on them are not always as good as CRT images.
You may view flat-panel images unclearly from an angle.
Print quality and speed are two factors for valuating a printer.
Impact printers have printing mechanisms that physically
contact the paper.
Dot-matrix printers, which offer considerable flexibility, were
once the most popular type of printer used with PCs.
Large computers use line printers that can complete hard
copy at a rate of 3000 lines per minute.
Nonimpact printers are so called because their printing
mechanism does not touch the paper.
Ink-jet Printers use electrically charged ink droplets to
form "near- letter-quality" images on the paper.
High-speed page printers primarily using laser-xero-graphic
technology, produce an entire output page at one time.
2.3.3 Other Output Devices
Many simpler printers also can produce graphics.
Plotters are specialized devices that output
high-quality graphics in various colors.
Audio output devices allow the user to
listen to the computer.
2.4 Storage Unit
2.4.1 Magnetic Storage Media
2.4.2 Optical Storage Devices
2.4.3 Flash Memory
2.4.1 Magnetic Storage Media
Magnetic media includes tapes, diskettes, and hard disks.
Magnetic tape was ever the main storage device in early
computers, and it is still used for back up and archiving
of data for large computer systems.
Diskettes and hard disks adopt random access method in
reading and writing information.
Hard disks are most important online storage medium.
They are rigid metal platters sealed inside the hard disk
drives, which are built in to the system unit, so they are
not fragile as diskettes.
2.4.2 Optical Storage Devices
The optical disk technology used with computers
can be categorized as four main types:
＊ CD-ROM disks
＊ CD-R disks
＊ CD-RW disks
CD-ROM is a read-only disk that the disk's content is recorded at the time of
manufacture and cannot be written on or erased by the user.
CD-R (Compact Disk-Recordable) is a CD format that allows users with CD-R
drives to write data, only once, onto a specially manufactured disk.
CD-RW (Compact Disk-Rewritable) format allows user to erase data so that this
disk can be used over and over again
DVD, which stands for digital video disc or digital versatile disk, is the newest
optical disc format.
2.4.3 Flash Memory
Flash memory is the result of revolution
in secondary storage technology, and is
frequently used in recent years . Flash
memory is derived from EEPROMs
(Electrically Erased Programmable ROM)
and used primarily in portable computers
Chapter 3 Operating System
How an Operating System works
Generations of Operating Systems
Common Operating Systems
3.1 Opening Remarks
Operating systems today are used on computers ranging in
size from giant mainframes to small personal computer.
We view an operating system as the programs,
implemented in either software or firmware, which make
the hardware usable
OS resides in RAM while the computer is turned on and
provides resource management services of many kinds.
The operating system allows you to concentrate on your
own tasks or applications rather than on the complexities
of managing the computer
3.2 How an Operating System
<1>The operating system is automatically loaded into main memory
soon after you boot the computer .
<2>Bootstrap loader performs an automatic power-on self-test (POST) that
usually tests RAM, the keyboard, and the disk drives.
<3>Once POST is successfully completed, BIOS initiates a search for the
<4>When it finds the operating system, it loads the operating system's kernel into
the computer system.
Operating system control different computer processes, such as running a word
processing application, accessing information from the computer's memory, and
dealing with data input and output of peripheral devices.
Operating systems are either single-tasking or multitasking
Single-tasking operating system can run only one application program at one time,
which user find very inconvenient.
All modern operating systems are multitasking, which enable a user to work with
two or more programs simultaneously.
3.3 Generations of Operating
The Zeroth Generation (1940s)
Early computing systems had no operating system.
The First Generation (1950s)
First generation of OS is single-tasking batch operating systems
The Second Generation (Early 1960s)
Second generation of operating systems was characterized by the development
of shared systems with multiprogramming
The Third Generation (Mid 1960s to mid 1970s)
Third generation of operating systems effectively began with the introduction
of the IBM System/360 family of computers in 1964
The Fourth Generation (Mid 1970s to Present)
Fourth generation systems are the current state of the art. With the widespread
use of computer networking and on-line processing, users gain access to
networks of geographically dispersed computers through various types of
3.4 Common Operating Systems
MS-DOS and PC-DOS are the most widely used single-tasking operating systems
3.4.2 UNIX Operating System
UNIX is one of the most well-known multitasking operating systems that were
originally developed for the minicomputer market.
3.4.3 Linux Operating System
Linux is clone of UNIX, which offers UNIX's power but was developed as
freeware by Linus Torvalds and a team of programmer over the Internet.
3.4.4 Windows Operating System
Windows is a personal computer operating system developed by Microsoft
3.5 Future Trends
(1) Computer hardware will continue to decline in price, while processor speeds increase,
storage capacities increase, and the physical size of processors and memories decreases.
(2) The "scale of integration" will continue to increase with VLSI (very large-scale
integration) moving to ULSI (ultra large-scale integration) over the next decade.
(3) Multiprocessing will become much more common.
(4) Many of the operating systems functions now performed by software will migrate into
(5) Hardware architecture of the future will distribute control into localized processors.
(6) Languages are being developed to exploit concurrence, while hardware and operating
systems are being designed to execute concurrent programs more efficiently.
(7) Massive parallelism will become common. It will become possible to execute parallel
programs with great speed because of the very high degree of concurrence.
(8) Developments in software engineering will result in operating systems that are more
maintainable, reliable, and understandable.
(9) The cost of data communications will continue to decrease, and data transmission speeds
(10) Computers will be tied increasingly into networks, and work performed for a user may
be done on a computer of which the user is unaware. This will continue to emphasize the
importance of the views of virtual machines.
(11) The concept of distributed processing will cause the development of dispersed
operating systems in which operating system functions are distributed among many 28
processors throughout large networks.
Chapter 4 Computer Language and
Computer Programming Language
Language Structure and Components
Object-Oriented and Visual Programming
4.1 Computer Programming
1. Machine Language
Machine language is a low-level language, which consists of binary
numbers 1s and 0s that directly correspond to the computer's electrical
2. Intermediate Language: Assembly Language
Assembly language allows a programmer to use brief abbreviations or
easily remembered words instead of numbers.
3. High-level Language
A high-level language is an English-like language, which eliminates the
need for programmers to understand the internal details of computer.
4.2 Program Development
A compute program is a set of instructions that
directs a computer to perform some processing
functions or combination of functions.
Generally, the program developing process
includes four steps:
(1) editing source program
(2) compiling source codes to generate
(3) linking the object file with library
routines to produce execution file
(4) running execution file and debugging.
4.3 Language Structure and
Statements, or instructions, are used to provide functional structure to the program.
Any program is organized with combination of three basic control
sequence control structure
In a sequence control structures, instructions are executed in the
order in which they appear.
repletion (loop or iteration) control structure
In a loop control structure, the program repeats the same
instructions over and over.
selection control structure.
In a selection control structure, computers perform different
instructions based on the values of data being processed.
The most common subroutines are functions, procedures,
library routines, system routines, and device drivers.
4.4 Object-Oriented and Visual
Object-oriented programming (OOP) is a programming language model
organized around "objects" rather than "actions" and data rather than logic.
OOP combines data and instructions for processing that data into a selfsufficient "object".
Objects are further grouped into classes, which define the attributes objects
One of the first object-oriented computer languages was called Smalltalk.
C++ and Java are the most popular object-oriented languages today.
Visual programming is a method of creating programs by using icons
that represent common programming routines. The programmer makes
connections between objects by drawing, pointing, and clicking on
diagrams and icons and by interacting with flowcharts.
Chapter 5 Data Structure
5.1 Basic Concepts
5.2 Fundamental Data Structures
5.3 Data Sorting
5.1 Basic Concepts
5.1.1 Data Type
A data type is a type together with a collection of
operations to manipulate the type. A distinction should
be made between the logical concept of a data type and
its physical implementation in a computer program
5.1.2 Abstract Data Type (ADT)
An abstract data type (ADT) is the realization of a data
type as a software component. A data structure is the
implementation for an ADT. The concept of an ADT can
help us to focus on key issues even in non-computing
applications .The ADT is implemented in one part of the
program by a particular data structure.
5.2 Fundamental Data
We define a list to be a finite, ordered sequence of data items known
as elements. Each list element has a data type. In the simple list
implementations, all elements of the list have the same data type,
although there are lists whose elements have differing data types if the
application requires it.
A stack is one of the most frequently used and most important data
structures. At a lower level, stacks are used to pass parameters to
functions and to make the actual function call to and return a function.
Like the stack, a queue is a list-like structure that provides restricted
access to its elements. Queue elements may only be inserted at the
back (called an enqueue operation) and removed form the front
(called a dequeue operation) queues operate like standing in line at a
movie theater ticket counter.
5.3 Data Sorting
5.3.1 Why Sorting
Ordering of data records gives a very convenient visual representation,
from which it is easy to find particular desired entries.
This method is known as selection sorting at each step, the record with
the highest key is selected from among those records remaining.
The bubble sort involves, at all stages, only comparisons of adjacent
records. Thus a worthy record initially located toward the end of a
vector cannot, as in selection sort, suddenly move up at the start; it
must proceed a single step at a time, slowly bubbling to the top.
Chapter 6 Communication and
6.1 Data Communication
Data communications is the transmission,
reception, and validation of data.
Networks are a combination of computers and
peripherals linked together for the purpose of data
Data communications provides rules that allow
computers with different operating systems,
languages, cabling and locations to share resources.
Many applications are served by data
Data communications networks can help
support time-sharing, real time processing, batch
processing, or a combination of the three.
6.2 Distributed Processing
The reason why distributed processing
Distributed processing seeks a middle path
between the centralized and decentralized
approaches. Distributed processing spreads
information-processing capabilities throughout
In most corporations, distributed processing
had led to a three-tier division of computing
6.3 Network Topologies
The four basic topologies are star, ring, bus, and hierarchical network.
Different topology varies in costs and network performance.
In a star network, a central connection point is
connected to remote peripherals or other computers,
which are not connected to each other.
A ring network links computers into a loop, without
central computer; instead, all of the computers are equal
and communicated with one another.
A bus network uses a common cable called bus to link
computers and peripherals.
The hierarchical network has a main computer at its top,
the most important level in terms of control.
Communication links spread downward and outward
much like the roots of a tree
6.4 Network Protocol
A protocol, or communication protocol, is a set of conventions
governing the exchange of data between hardware and/or
software components in a communications network.
Protocol perform several important network
(1) dividing messages into packets;
(2) affixing addresses to packets;
(3) initiating transmission;
(4) regulating the flow of data;
(5) acknowledging receipt of transmitted data.
The best-known protocol is probably TCP/IP.
TCP/IP refers to two network protocols used
on the Internet. They are Transmission Control
Protocol and Internet Protocol, respectively.
Local Area Network (LANs)—sometimes simply
called local networks—provide offices with the
capability of data communications in a smaller setting.
Microcomputers linked together in a LAN can share
peripheral devices such as sophisticated printers and
secondary storage systems or expensive software,
making it possible to justify devices that a single
microcomputer user might not be able to afford.
The two prevalent types of LANs in organizational
structures are client/server and peer-to-peer (p2p).
The most widely used LAN, Ethernet, uses CSMA/CD
protocol (Carrier Sense Multiple Access with Collision
Chapter 7 Developing Information
Information System Development Tools
7.1 System Planning
System planning is the first phase of the system development process, in
which the systems analyst plans what information system will be developed.
＊ Information systems grow and change to reflect the
evolving needs of an organization.
＊ Next, a systems analyst must carefully define the
problem, distinguishing it from its symptoms.
＊ After the need for an information system has been
recognized, the systems analyst must determine if it is
feasible to develop the system, a process called
＊ After completing the feasibility analysis, the analyst
should prepare written documentation of the results.
7.2 System Analysis
After the systems analyst has decided that a new system is
feasible, he or she must analyze the system to determine what it
Systems analysts create data flow diagrams, data dictionaries,
and process specifications to document the way in which a
An analyst determines requirements by interviewing users and
studying successful information systems that solve problems
similar to those found in the current systems.
One of the biggest problems in system analysis is to understand
the user's requirements.
7.3 System Design
The analyst specifies the details of the design
(1) Layouts of all screens, reports, and forms.
(2) Organization of all records, files, and databases.
(3) Descriptions of all programs.
(4) Descriptions of all manual procedures.
(5) Specifications for all hardware.
(6) Descriptions of all personnel.
In order to produce applications more quickly than traditional
programming language, application development tool is often
used. An application development tool is essentially a type of
software construction kit that contains building block。
7.4 System Implementation
1. Acquiring the components of the new systems
If new hardware is to be purchased, however, then alternative
equipment that meets the hardware specifications is evaluated and a
selection is made.
2. Testing the system
New hardware can either replace old equipment or be connected to
existing equipment. In either case, it must be tested to ensure that it
3. Installing the new system, converting from
the old system to the new system
The final activity of this step is to convert from the old system to the
new system. The change is usually made gradually by phasing in a part
of the new system at a time.
7.5 System Maintenance
After a system has been operating for a while, it may have
to be modified, which is the process of system maintenance.
Maintenance is required for three reasons.
＊ The first is that errors are found that were not detected when the
system was tested. Even though the system was thoroughly tested, errors
often appear after the system has been in use for a while.
＊ The second reason is that a new function is to be added to the system.
For example, the preparation of a new report may be needed.
＊ The final reason for system maintenance is that requirements change.
Systems analysts and programmers usually do most of
the work, but hardware specialists, managers, technical
writers, equipment operators, and trainers may also be
7.6 Information System
7.6.1 Data Flow Diagrams
A tool that many analysts use to show the flow of data in an information
system is the data flow diagram, or DFD. A DFD graphically illustrates
how data moves through an information system.
7.6.2 Data Dictionary
A tool that is used in conjunction with a data flow diagram is the data
dictionary. The data dictionary describes the data in each data flow and
in each set of stored data in the DFD.
7.6.3 System Flowcharts
Another tool that is used by systems analysts is a system flowchart,
which is a graphical representation of the functioning of an information
Chapter 8 Database Management
The Need for DBMS
New Techniques in Database
8.1 The Need for DBMS
Several major trends are emerging that enhance the value
and usefulness of database management:
(1) Managers who require more up-to-data information to
make effective decisions.
(2) Customers who demand increasingly sophisticated
information services and more current information about the
status of their orders, invoices, and account.
(3) End users who find that they can develop custom
applications with database programs in a fraction of the time it
takes to use traditional programming languages.
(4) Organizations that discover information have a strategic
value and utilize their database systems to gain an edge over
Using a DBMS to manage data has many advantages:
1. Data Independence and Efficient Access
The DBMS can provide an abstract view of the data to insulate
application code from such details.
2. Reduced Application Development Time
In conjunction with the high-level interface to the data, facilitates
quick development of applications
3. Data Integrity and Security
If data is accessed through the DBMS, the DBMS can enforce
integrity constraints on the data. Data validation procedures are
used to avoid data integrity errors.
4. Uniform Data Administration
Data redundancy is caused by repetition of data. It is very
undesirable because it makes inefficient use of storage space and
makes updating cumbersome.
5. Concurrent Access and Recovery from Crashes
8.2 Database Models
8.2.1 Flat File
The flat file is a single file consisting of rows (records) and columns (fields) of data that
resemble a two-dimensional spreadsheet.
8.2.2 Relational Data Model
A relational database is perceived by its users to be a collection of tables (also called
"relations"), which are roughly equivalent to a collection of record types.
8.2.3 Hierarchical Data Model
The hierarchical model is older than the relational model. It creates relationships among data
by structuring data into an inverted tree in which records contain
8.2.4 Network Database Models
The network model creates relationships among data through a linked-list structure in which
subordinate records can be linked to more than one parent record.
8.2.5 Object-oriented Database Models
The object-oriented model provides an alternative to the hierarchical, network, and relational
8.3 Query Languages
Query languages can perform quite complicated
searches. Standard matching conditions include
equal to, not equal to, greater than, greater than
or equal to, less than, less than or equal to, range
equal, and range not equal.
Structured query language or SQL, is a query
language for manipulating data in a relational
Like an operating system, much of SQL's work
is done behind the scenes
Another popular query language is query by
example (QBE), which is a fill in the blanks
approach to questioning a database
8.4 Distributing Database
A distributed database is one in which different parts of
the database reside on physically separate computers.
One goal of distributed databases is the access of
information without regard to where the data might be
Distributed databases require software that resides
partially in the personal computer and partially in the
The Clients/Server Model
The client/sever model DBMS takes advantage that data
processing is distributed between two parts—the client
and the server. A client is an end user or computer
program that requests resources across a network. A
server is a centralized host computer running software
that fulfills those requests across a network.
8.5 New Techniques in Database
Traditional database technology is not suitable for analysing
so tremendous amounts of data. It's also a tough work to
extract interesting patterns or knowledge from huge amount
The concept of the data warehouse embodies a new architectural
approach to structuring diverse sources of corporate data
Data mining (DM) is the computer-assisted process of filtering
through and analyzing vast amounts of data in order to extract
meaning and discover new knowledge.
Chapter 9 Internet
A Brief History of the Internet
Connecting to the Internet
The Internet Services
9.1 A Brief History of the
ARPANET, designed and developed in 1969 by Bolt, Beranet, and Newman
under contract to the Advance Research Projects Agency of the U.S.
Department of Defense (ARPA).
The ARPANET was a network connecting university and military;
it was established to aid researchers in the process of sharing
information, and not coincidentally to study how communications
could be maintained in the event of nuclear attack.
From beginnings—the ARPANET's founders originally contemplated
letting only researchers log on and run programs on remote
computers—the network grew.
They soon added file transfer capabilities, electronic mail, and mailing
lists to keep people interested in common subjects in communication.
But even as the ARPANET proceeded, other networks were under
9.2 Connecting to the Internet
＊ Dial-up Connection
A dial-up connection uses POTS (plain old telephone service) to transport data
between your computer and your ISP.
＊ High-speed Internet Access—DSL and ISDN Connection
DSL and ISDN are other options available for high-speed Internet access, by
using telephone network. DSL (digital subscriber line) is a high-speed, digital,
always-on, Internet access technology that runs over standard phone lines.
ISDN (Integrated Service Digital Network) connections move data at speeds of
65 Kbps or 128 Kbps, which is not as fast as DSL but faster than a dial-up
＊ LAN Internet Access
1.An operational wired or wireless LAN;
2.A router or a hub with router capabilities;
3.A high-speed Internet connection, such as DSL, ISDN;
4.A modem that corresponds to your Internet connection type.
9.3 Internet Addressing
TCP/IP provides a standard for Internet data communication.
To be part of the Internet, a computer must have a
unique IP network address for correctly routing to
and from the machine over Internet.
An IP address is a series of number, such as
126.96.36.199. An IP address is separated into four
sections by periods for convenience of human
Since the packets can only identify numeric IP
address, the Domain Name System (DNS) is
required to record every domain name that
corresponds to a unique IP address.
9.4 The Internet Services
Electronic mail, or emailallows people to write back and forth without having to spend
much time worrying about how the message actually gets delivered.
9.4.2 World Wide Web
The World Wide Web is a global hypertext system implemented on the Internet.
FTP refers to the File Transfer Protocol, one of the protocols within the TCP/IP protocol
suite used on the Internet.
9.4.4 Usenet Newsgroups
Usenet is a discussion system accessible through the Internet.
9.4.5 Instant Messaging
Instant messaging or IM is a form of real-time communication between two or more people
based on typed text.
9.4.6 New Technologies
The constantly evolving of Internet communication technology makes real-time voice 63
Chapter 10 Computer Virus and
10.1 Computer Virus
10.2 Other Threats to Computer Security
10.3 Safeguarding Computer System
is a Computer
A computer virus is a set of program instructions that attaches itself to a file, reproduces itself,
and spreads to other files.
10.1.2 How Virus Affect Computers
Typical payload of computer virus includes creating some annoyances (e.g. affects your
mouse/keyboard), removing files from your hard disk and formatting your hard disk.
10.1.3 Other Malware: Trojan Horse and Worm
Trojan Horse：A Trojan horse is a computer program that seems to perform on
function while actually doing something else.
Worm：A worm is a malicious program that is designed to spread over network, from
computer to computer.
10.1.4 How Harmful Are the Malware
10.1.5 Antivirus Measures
＊ Programs take longer time than usual to execute or there is a sudden reduction in the
available system memory or disk space.
＊ Use antivirus software on every computing device you own.
＊ Keep software patches and operating system service packs up to date.
10.2 Other Threats to Computer
general, errors and accidents in computer systems
may be classified as human errors, procedural errors,
software errors, and electromechanical problems.
＊ Some disasters do not merely lead to temporary
system downtime, but they can wreck the entire system.
＊ The third type of threat to our computer is computer
crime. A computer crime is the use of computers or
telecommunications to accomplish an illegal act.
＊ Disgruntled employees sometimes attempt to destroy
computers, programs, or files.
10.3 Safeguarding Computer
In order to protect all data from unauthorized access, encryption makes data
unreadable to everyone except authorized eyes
Security experts are constantly devising ways to protect computer systems
from access by unauthorized persons
Backup and Disaster Recovery
Data backup are necessary for minimizing the risk of data loss.
Chapter 11 Electronic Commerce
Concept of Electronic Commerce
Service of E-commerce
Security of E-commerce
Develop Your Online Business
11.1 Concept of Electronic
Electronic commerce (or e-commerce, EC) is a very versatile
phrase that describes a wide range of activities.
Electronic commerce has been described in many ways. The most
comprehensive definition is "Electronic commerce is the business
environment in which information for the buying, selling and
transportation of goods and services moves electronically".
EDI is a set way of transacting business between two or more
companies that have agreed to the electronic handling of invoices,
shipping notices and other business documentation.
EFT is the transfer of funds from one entity to another, such as the
transfer of an employee's salary from your company account into
his personal account.
11.2 Service of E-commerce
1. Information Storing and Searching Service
For storing and processing a large amount of data, a powerful storage
system is needed to provide efficient and effective access to this data.
2. Electronic Payments
The current electronic payments contain digital currencies (smart cards
and electronic money), credit card payments and electronic checks.
3. Security Service
Internet supports a speedy infrastructure for EC, and it also faces the
threats of fraudulent activities by internal or external sources, theft of
valuable information, and sabotage.
11.3 Security of E-commerce
The electronic wallet is a software version of the wallet shoppers use to
carry credit cards
The payment server handles and stores payment information.
This server allows merchants to display and sell products to a global
market over the Internet.
Certificates exchanged among merchants, customers, and payment
gateways validate the authenticity of the parties to each other.
Payment gateways represent the financial institution on the Internet.
11.4 Develop Your Online
The online business website is a good platform for you
selling and advertising products and services,
providing customer services, contacting new customers,
doing product and market analysis, opening the
international marketplace and even recruiting
Before you start any business, you must make sure two
things: the first is that there's a market for your
products or services, the second is that your business
differentiates other similar ones in some way for
getting competitive edges.
Chapter 12 Advanced Computing
12.1 Artificial Intelligence (AI)
12.2 Agent Technology
12.3 Distributed Computing
12.1 Artificial Intelligence (AI)
A famous scientist on AI, professor of Stanford University:
"It is the science and engineering of making intelligent
machines, especially intelligent computer programs. It is
related to the similar task of using computers to understand
human intelligence, but AI does not have to confine itself to
methods that are biologically observable. "
Robotics is a field devoted to developing machines that can perform work normally
done by people.
Natural Language Processing
Natural Language Processing is the study of ways for computers to recognize and
understand human language, whether in spoken or written form.
An expert system is a set of interactive computer programs that can apply rules and
data to input questions or problems in such a way as to generate conclusions.
12.2 Agent Technology
Developing agents that could perceive the world,
reason about what they perceive in relation to their
own goals and acts, has been the Holy Grail of AI.
In general, an agent can be viewed as anything
perceiving its environment through sensors and
acting upon that environment through effectors.
An intelligent agent can performs work tasks on
your behalf, including roaming networks and
The job of AI is to design the agent program: a
function that implements the agent mapping from
percepts to actions.
12.3 Distributed Computing
There are three main scenarios where distributing applications
across multiple machines can provide a real benefit.
The first is where a scientist needs to perform a large scale
computation, but the needed resources can not be provided by any
single machine. In order to perform the simulation, distributed
computing is considered whatever the cost or performance.
The second scenario is where the concern is the time to solution. For
example, if a scientist requires 128 CPUs for a calculation, he/she
may have to wait some days in scheduled queues. An alternative
could be to use 32 processors from each of 4 different machines,
which are immediately available.
The final motivation is provided when the driving force is the cost of
a simulation, here a scientist maybe willing to suffer poor
performance taking advantage instead of free or cheap simulations.
Distributed computing is a means to overcome the resource
limitations of single computing systems.