Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
1 Chapter 1 Computer Overview 1.1 1.2 1.3 1.4 History of Computing Machines Invention of Computer Computer Generations of Computer Types of Computer 2 1.1 History of Computing Machines 3000 B.C. the Sumerians used a box of stones as a device for representing numbers 2500 years ago The abacus, invented by the Chinese 1642 The first mechanical calculator was invented by Blaise Pascal, a French mathematician In early 1700s The first general-purpose calculating machine was Leibniz Wheel introduced 1822 A British mathematician, Charles Babbage, designed a machine that he called the difference engine, for calculating certain types of mathematical tables A machine based on Babbage's ideas was completed in 1855 and used in the United States and Great Britain. 3 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 (1943) 4 1.3 Computer Generations of Computer 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 5 that of a person. 1.4 Types of Computer They can be divided into several categories on the basis of cost and performance: * microcomputer They are relatively inexpensive machine that can fit on a desktop, or can be carried around * workstation They are expensive and powerful desktop computers used mainly by engineers, scientists, and special-effects creators for sophisticated purposes. * minicomputer Their capabilities are suited to a business, school, or laboratory. * mainframe A mainframe, which also has many processors, can support hundreds, or even thousands, of users simultaneously. * supercomputer. They may occupy special air-conditioned rooms and are often used for 6 Chapter 2 Computer Hardware 2.1 2.2 2.3 2.4 Processing Hardware Input Device Output Device Storage Unit 7 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 those operations There are some registers in the CPU that are used for storing data temporarily during execution of instructions 8 Chip design 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 microprocessors 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 9 2.2 Input Device 2.2.1 2.2.2 2.2.3 2.2.4 Keyboards Mice and Pens Scanners Voice Recognition 10 2.2.1 Keyboards 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 the top. 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. 11 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. 12 2.2.3 Scanners Optical scanners use visible light to read characters, numbers, or patterns. * Optical mark reader * Optical character reader * Bar-code reader * Graphics * 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 color graphics. FAX , short for facsimile transmission machines, allow text to art to be electronically sent from one location to another. 13 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. 14 2.3 Output Device 2.3.1 Monitors 2.3.2 Printers 2.3.3 Other Output Devices 15 2.3.1 Monitors 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 portable microcomputers. 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. 16 2.3.2 Printers 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. 17 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. 18 2.4 Storage Unit 2.4.1 Magnetic Storage Media 2.4.2 Optical Storage Devices 2.4.3 Flash Memory 19 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. 20 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 * DVD/DVD-ROM. 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. 21 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 22 Chapter 3 Operating System 3.1 3.2 3.3 3.4 3.5 Opening Remarks How an Operating System works Generations of Operating Systems Common Operating Systems Future Trends 23 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 24 3.2 How an Operating System works <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 operating system <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. 25 3.3 Generations of Operating Systems 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 26 terminals. 3.4 Common Operating Systems 3.4.1 DOS 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 27 Corporation. 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 micro-code. (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 will increase. (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 Programming 4.1 4.2 4.3 4.4 Computer Programming Language Program Development Language Structure and Components Object-Oriented and Visual Programming 29 4.1 Computer Programming Language 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 states 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. 30 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 object codes (3) linking the object file with library routines to produce execution file (4) running execution file and debugging. 31 4.3 Language Structure and Components Statements, or instructions, are used to provide functional structure to the program. Any program is organized with combination of three basic control structures: 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. 32 4.4 Object-Oriented and Visual Programming 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 must have 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. 33 Chapter 5 Data Structure 5.1 Basic Concepts 5.2 Fundamental Data Structures 5.3 Data Sorting 34 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. 35 5.2 Fundamental Data Structures 5.2.1 Lists 5.2.2 Stack 5.2.3 Queues 36 5.2.1 Lists 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. 5.2.2 Stack 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. 5.2.3 Queues 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. 37 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. 5.3.2 Selection This method is known as selection sorting at each step, the record with the highest key is selected from among those records remaining. 5.3.3 Bubble 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. 38 Chapter 6 Communication and Networking 6.1 6.2 6.3 6.4 6.5 Data Communication Distributed Processing Network Topologies Network Protocol LAN 39 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 communications. Data communications provides rules that allow computers with different operating systems, languages, cabling and locations to share resources. Many applications are served by data communications networks. Data communications networks can help support time-sharing, real time processing, batch processing, or a combination of the three. 40 6.2 Distributed Processing The reason why distributed processing computers appear. Distributed processing seeks a middle path between the centralized and decentralized approaches. Distributed processing spreads information-processing capabilities throughout an organization. In most corporations, distributed processing had led to a three-tier division of computing responsibilities 41 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 42 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 functions, including: (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. 43 6.5 LAN 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 Detection). 44 Chapter 7 Developing Information Systems 7.1 7.2 7.3 7.4 7.5 7.6 System Planning System Analysis System Design System Implementation System Maintenance Information System Development Tools 45 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 feasibility analysis. * After completing the feasibility analysis, the analyst should prepare written documentation of the results. 46 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 must do Systems analysts create data flow diagrams, data dictionaries, and process specifications to document the way in which a system works. 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. 47 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。 48 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 operates correctly. 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. 49 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 involved. 50 7.6 Information System Development Tools 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 system. 51 Chapter 8 Database Management Systems 8.1 8.2 8.3 8.4 8.5 The Need for DBMS Database Models Query Languages Distributing Database New Techniques in Database 52 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 their competitors. 53 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 54 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 models. 55 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 database. 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 56 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 stored Distributed databases require software that resides partially in the personal computer and partially in the larger computer. 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. 57 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 of data. 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. 58 Chapter 9 Internet 9.1 9.2 9.3 9.4 A Brief History of the Internet Connecting to the Internet Internet Addressing The Internet Services 59 9.1 A Brief History of the Internet 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 development 60 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 connection * 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. 61 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 202.109.83.1. An IP address is separated into four sections by periods for convenience of human readers. 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. 62 9.4 The Internet Services 9.4.1 E-mail 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. 9.4.3 FTP 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 and Chapter 10 Computer Virus and Security 10.1 Computer Virus 10.2 Other Threats to Computer Security 10.3 Safeguarding Computer System 64 Computer 10.1.1 What10.1 is a Computer Virus Virus 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. 65 10.2 Other Threats to Computer Security * In 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. 66 10.3 Safeguarding Computer System * Data Encryption In order to protect all data from unauthorized access, encryption makes data unreadable to everyone except authorized eyes * Access Control Security experts are constantly devising ways to protect computer systems from access by unauthorized persons * Data Backup and Disaster Recovery Data backup are necessary for minimizing the risk of data loss. 67 Chapter 11 Electronic Commerce 11.1 11.2 11.3 11.4 Concept of Electronic Commerce Service of E-commerce Security of E-commerce Develop Your Online Business 68 11.1 Concept of Electronic Commerce 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. 69 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. 70 11.3 Security of E-commerce Electronic Wallet The electronic wallet is a software version of the wallet shoppers use to carry credit cards Payment Server The payment server handles and stores payment information. Merchant Server This server allows merchants to display and sell products to a global market over the Internet. Certificate Authority Certificates exchanged among merchants, customers, and payment gateways validate the authenticity of the parties to each other. Payment Gateway Payment gateways represent the financial institution on the Internet. 71 11.4 Develop Your Online Business 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 employees. 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. 72 Chapter 12 Advanced Computing Technology 12.1 Artificial Intelligence (AI) 12.2 Agent Technology 12.3 Distributed Computing 73 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 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. Expert Systems 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. Neural Network 74 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 compiling data. The job of AI is to design the agent program: a function that implements the agent mapping from percepts to actions. 75 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. 76 77