1. Computer: A computer is an electronic device that converts data into useful information. It can perform a sequence of operations on a given set of data(Input) and provide you output in a required format. There are two main aspects of the computer:
Input: The data we enter into the computer is called input. Input, are the raw facts and figures that we want to process to get the desired outcome.
Output: After processing the input the data gets converted into information. This information is provided to the user as output.
2. Block Diagram of Computer:
The data enters the system through input devices such as the keyboard, mouse, etc. Data is processed by the CPU after getting the input from the user, and then the computer system produces the output. The computer can show the output with the help of output devices to the user, such as monitor, printer, etc. parts of a computer system are described below:
Input Unit: Input devices are the devices that are used to feed programs and data to the computer. The functions of the input unit are :
accept data from the users.
convert that data into a form acceptable to the computer.
provide this converted data to the computer for further processing.
Central Processing Unit (CPU): It is also known as the brain of a computer. The CPU is an electronic hardware device that can perform different types of operations such as arithmetic and logical operation. It controls the operations of all parts of the computer. The CPU consists of two parts: the arithmetic logic unit and the control unit.
Arithmetic and Logic Unit: The Arithmetic Logic Unit (ALU) executes several instructions and performs all the calculations and decisions. The ALU uses operands and performs arithmetic and logical operations on the operands to get the output. After the information is processed by the ALU, it's sent to the computer's memory.
Control Unit: The Control Unit controls the operations of the entire computer system. The control unit gets the instructions from the programs stored in the primary storage unit interprets these instructions and subsequently directs the other units to execute the instructions. Thus it manages and coordinates the entire computer system.
Storage Unit: This is also called Main Memory. Before the start of the actual processing of data, the data and the instructions are stored in this primary storage unit. Similarly, the data which is in the intermediate stage is also temporarily stored in the primary memory. The main memory also holds the computer programs during execution.
Output Unit: The output devices give the computed results to the outside world. The output units accept the results produced by the computer, convert them into a human-readable form and supply them to the users. The more common output devices are printers, plotters, display screens, magnetic tape drives, etc.
3. Characteristics of Computer:
Computers are very fast and accurate as compared to humans.
It provides accurate results.
It can perform millions of instructions per second.
It is never lazy, always performs its functions with proper efficiency.
Computers are very versatile.
It can perform repetitive tasks without any errors.
It can store information for further processing.
Computers can communicate with each other with the help of a network.
Computers are versatile as they perform different kinds of work with the same accuracy and efficiency.
4. Applications of Computer: Computers play a very important role in every field of life. They are used in homes, educational institutions, research organizations, business, medical fields, government offices, entertainment, etc.
Home: Computers are used at homes for several purposes like online tutors, social media access, online bill payment, surfing the internet, watching movies, work from home facilities for employees and help the students to search the content related to their studies.
Medical Field: Computers are used in hospitals to maintain a database of patients’ history, diagnosis, X-rays, live monitoring of patients, etc. Surgeons nowadays use robotic surgical devices to perform delicate operations and conduct surgeries remotely. To run various kinds of test machines computers are also used.
Entertainment: Computers are used to watch movies online, play games online; Youtube is the best source to watch movies and other videos that can be easily run on computers. Photos can be easily edited with the help of various kinds of photo editing software. Audios can also be recorded with the help of computers.
Industry: Computers are used to perform several tasks in industries like managing inventory, designing purposes, creating virtual sample products, interior designing, video conferencing, etc. E.Commerce and Online marketing is now in a trend. Everybody wants to buy or sell things online, so computers also act as a marketplace for customers and the industry.
Education: Computers are used in the education sector through online classes, online examinations, referring e-books, online tutoring, etc. They help in the increased use of audio-visual aids in the education field.
Government: In government sectors, computers are used in data processing, maintaining a database of citizens, and supporting a paperless environment. The country’s defense organizations have greatly benefitted from computers in their use for missile development, satellites, rocket launches, etc.
Banking: Computers are used in the banking sector, to store the details of customers and transactions they have done, their deposits, withdrawals, fund transfers, and all other details related to money. Now, customers can use the Net Banking facility to keep an eye on their accounts without going to the bank. Banks have reduced manual errors and expenses to a great extent through the extensive use of computers.
Business: Nowadays, computers are integrated into the business. The main objective of business is transaction processing, which involves transactions with suppliers, employees, or customers. Computers can make these transactions easy and accurate. People can analyze investments, sales, expenses, markets, and other aspects of business using computers.
Arts: Computers are extensively used in dance, photography, arts, and culture. The fluid movement of the dance can be shown live via animation. Photos can be digitized using computers.
Science and Engineering: Computers with high performance are used in Science and Engineering. Supercomputers are used in the area of Research and Development (R&D). Computers are used in weather forecasting, Television broadcasting, robotics, and various fields of science and technology.
5. Generations of Computer:
a) First Generation Computers: The period of the first generation: 1946-1959.
The first generation computers were made up of Vacuum tube technology.
Punched cards used for data input.
Punched cards and paper tape can be used for output.
Machine Language for writing programs.
Magnetic tapes and drums for external storage.
Example: ENIAC (Electronic Numeric Integrator and Calculator)
EDVAC (Electronic Discrete Variable Automatic Computer)
UNIVAC (Universal Automatic Computer)
b) Second Generation Computers: The period of the second generation: 1959-1965.
Vacuum tube technology was replaced by transistorized technology.
The size of the computers started reducing.
Assembly language started being used in place of machine language.
The concept of a stored program emerged.
High-level languages were invented.
Example: IBM 1400 and 7000 series
Honeywell 200 and General Electric.
c) Third Generation Computers: The period of the third generation: 1965-1971.
Use of Integrated circuits.
A phenomenal increase in computation speed.
Substantial reduction in size and power consumption of the machines.
Use magnetic tapes and drums for external storage.
Design of Operating systems and new higher-level languages.
Commercial production of computers.
Example: IBM-360 series
Honeywell 6000 series.
PDP-1,PDP-6,PDP-7 and PDP-8.
Languages like FORTRAN, COBOL, and PL/1 were developed.
d) Fourth Generation Computers: The period of fourth-generation: 1971-1980.
Use of Very Large Scale Integration (VLSI).
The invention of microcomputers.
Introduction of Personal Computers.
Fourth Generation Languages.
For example, IBM introduced its personal computer for use in offices, homes, and schools.
Macintosh was introduced by Apple.
e) Fifth Generation Computers: The period of fifth-generation: 1980 onwards.
Use of Ultra Large Scale Integration (ULSI).
Computers are characterized by Artificial Intelligence like Expert Systems.
Computers can recognize spoken words (Speech Recognition)
Example: Intel P 4, i 3 – i10, AMD Athlon, etc.
6. Types of Computer: Computers can be classified based on their size and capability to execute instructions within a second. Following are the types of computers based on these factors:
a) SuperComputers: The father of Supercomputers was Seymour Cray. These are extremely fast computers, they can perform quadrillion instructions within a second. They are mostly used in scientific and engineering operations where the processing is complex. They are used in weather forecasting, molecular modeling, gas and oil exploration, etc. Supercomputers have multiple processors which process multiple instructions at the same time. This is known as parallel processing. Examples, Summit, Sierra, Tianhe-2A, PARAM, etc.
b) Mainframe Computers: Mainframe computers are multi-user, multiprogramming, and high-performance computers. Mainframe computers are used to process millions of instructions per second. They are big centralized computers with several processors, great memory, and large storage capability. Mainframes are used in big organizations where data processing tasks are huge in number. They are used in large-scale industries, banks, research organizations, government agencies, etc. Today, the most eminent vendors of mainframe computers are IBM, Hitachi, Amdahl, and Unisys.
c) Mini Computers: Minicomputers are computers with one or more processors and can perform multitasking with high speed and storage capability. A minicomputer is a computer that owns most of the features of a large computer but is smaller in physical size. Minicomputers are mainly used as small or mid-range servers operating business and scientific applications. However, the use of the term minicomputer has diminished and has merged with servers.
d) Micro Computers: Microcomputers are also called Personal Computers. It is an electronic device that consists of Input-Output Devices, Microprocessor, CPU with some specified amount of memory. CPU can perform a large number of Arithmetic and Logical operations. These are standalone systems but you can connect your computer with the internet by taking services from any Internet Service Provider(ISP). Micro Computers include:
PC (Personal Computer)
PDA (Personal Digital Assistant)
7) Parts of Computer:
7.1) Hardware: It is the physical structure of the computer that is visible. It consists of Integrated Circuits (ICs), magnetic storage media, and other mechanical devices like input devices, output devices, etc.
a) Input Devices: The physical components of a computer that helps the user to enter data into the computer are called input devices. E.g Keyboard, mouse, etc. Input devices are explained below:
Keyboard: A computer keyboard is an input device that allows a person to enter letters, numbers, and other symbols into a computer. A keyboard consists of five types of keys: typing keys, function keys, control keys, numeric keypad, and navigation keys. A Keyboard consists of three layers: upper conducting layer, insulating layer and last are lower conducting layer. When you press any key, it will complete the circuit and send the signal to the computer processor and the rest of the work will be handled by the processor. It supports these Layouts
Mouse: A device that controls the movement of the cursor or pointer on a display screen. It provides a GUI environment on Personal Computers. It is named a mouse because of its shape. Traditional mice are attached to the computer through cable and cord but now wireless mice are also available in the market. Following are the types of mouse used latest:
Mechanical Mouse: It consists of a ball on the backside surface. This ball can move in all directions.
Optical Mouse: In the optical mouse advanced technology is used like LED (light-emitting diode), DSP (Digital Signal Processing), an optical sensor. It uses laser light to control the movement of the cursor on the screen. An optical mouse also has a tiny low-resolution camera that takes a thousand or more pictures every second. In the camera, the CMOS (complementary metal-oxide-semiconductor) sensor sends a signal to a DSP (digital signal processor). The DSP can then analyze each picture for pattern and light changes, and then moves the mouse cursor on your screen.
Joystick: A joystick is a pointing device with a vertical lever mounted on a base. The lever usually includes buttons called triggers, which activate certain events when pressed. Joysticks are mainly used for computer games and ultrasound scanners in hospitals.
Touch Screen: A touch screen is an input touch-sensitive display. It is used in Laptops and smartphones. Touch screens are sensitive to pressure, when a user presses anywhere on the screen the controller takes the information from the touch sensors and transfers it to the processor for further processing.
Scanner: A scanner is a light-sensing input device that converts printed text and graphics into a digital form that can be further processed by the computer. Two popular types of scanners are:
A flatbed scanner: It works like a copy machine except that it creates a file of the document rather than a paper copy.
A handheld scanner: It can be manually passed over the image to be scanned. A portable device you can use to copy an image from paper to your computer. Hand-held scanners are ideal for capturing small images, such as signatures and logos. A handheld scanner is smaller, less expensive, and more portable than a flatbed scanner.
OMR (Optical mark recognition): Sometimes in exams, we have to fill out the circles to give the answers to multiple-choice questions. Every time there is an instruction to fill these circles with a blue/black ball pen. These details can be recognized with the help of OMR. The OMR reader first reads the answer key sheet to record the correct answers based on the patterns of light, and then reads the remaining documents and matches their patterns of light against the answer key sheet.
Barcode Reader: A barcode reader or scanner is a hardware device capable of reading a barcode and printing out the details of the product or logging that product into a database.
Magnetic Ink Character Reader(MICR): A magnetic ink character recognition (MICR) reader can read text printed with magnetized ink. Magnetic ink character recognition is used almost exclusively by the banking industry for processing cheques. The characters represent the check number, the bank number, and the account number of customers.
b) Output Devices: output devices are computer hardware devices that receive data from a computer and then translate that data into a human-readable form. That data may be in any form like audio, visual, textual, or hard copy such as a printed document. The key distinction between an input device and an output device is that an input device sends data to the computer, whereas an output device receives data from the computer. Output devices are explained below:
CRT Monitors: CRT stands for Cathode Ray Tube. It uses a beam of electrons to create an image on the screen. It comprises the guns that fire a beam of electrons inside the screen. The electron beams repeatedly hit the surface of the screen. These guns are responsible for generating RGB (Red, Green, Blue) colors, and more other colors can be generated with the help of combining these three colors. Today's Flat Panel Monitors replace the CRT monitors.
LCD Monitors: LCD (Liquid crystal display) screen contains a substance known as liquid crystal. The particles of this substance are aligned in a way that the light is located backside on the screens, which allows them to generate an image or block. Liquid crystal display offers a clear picture as compared to CRT display and emits less radiation. Furthermore, it consumes less power and takes less space than a CRT display.
Touch Screen Monitors: It enables users to interact with the computer by using a finger or stylus instead of using a mouse or keyboard. When users touch the screen with their fingers, an event occurs. This event is forwarded to the controller for further processing. It takes input from the users by touching menus or icons presented on the screen.
LED Monitors: It is a flat-screen computer monitor, which stands for a light-emitting diode display. It is lightweight in terms of weight and has a short depth. As the source of light, it uses a panel of LEDs.
Printer: Printers are used to create a hard copy of the document. Printers take electronic data sent from a computer and generate a hard copy. Print resolution is measured in terms of the number of dots per inch (dpi). Print speed is measured in terms of the number of characters printed in a unit of time and is represented as characters-per-second (cps), lines-per-minute (lpm), or pages-per-minute (ppm). Based on the technology used, they can be classified as Impact or Non-impact printers.
Impact printers: These printers use the typewriting printing mechanism wherein a hammer strikes the paper through a ribbon to produce output. Dot-matrix and Character printers fall under this category.
Non-impact printers: They do not touch the paper while printing. They use chemical, heat, or electrical signals to etch the symbols on paper. Inkjet, Deskjet, Laser, Thermal printers fall under this category of printers.
Plotter: Plotters are used to print graphical output on paper. It interprets computer commands and makes line drawings on paper using multicolored automated pens. It is capable of producing graphs, drawings, charts, maps, etc. Computer-Aided Engineering (CAE) applications like CAD (Computer-Aided Design) and CAM (Computer-Aided Manufacturing) are typical usage areas for plotters.
7.2) Software: The computer hardware is itself not sufficient to do anything. Software is the program that runs on the hardware to perform the operations of the computer. The software tells the hardware what to do. Following are the types of software:
System Software: A system software acts as an interface between the user and the hardware to function and interact with each other. It is software to manage computer hardware behavior to provide basic functionalities that are required by the user. System software is essential for your system to run because whenever we start our computer the first software it runs is the system software i.e Operating System.
Operating System: is essentially a collection of software that handles resources as well as offers general services for various other applications which run over them. E.g MS Windows, macOS, Linux, iOS Android, CentOS, Ubuntu, Unix.
Device Drivers: This type of software controls particular hardware which is essentially attached to the system. Different hardware devices which require a driver to connect to a system easily consist of displays, printers, sound cards, hard disks, a keyboard, and mice. E.g BIOS Driver, Motherboard Drivers, Display Drivers, Printer Drivers, USB Drivers, Sound Card Driver, VGA Drivers, etc.
Firmware: This is the software that is permanently stored on the system's Read-Only Memory. It provides information regarding how a particular device interacts with different other hardware. E.g Computer Peripherals, Embedded Systems, BIOS, etc.
Application Software: These are also known as end-user programs which serve the user while completing the tasks based on a particular application like creating documents, mathematical calculations, keeping data in the form of tables, designing graphics, playing games, etc. This software is used by the end-users to perform some specific functionality. This software is often developed through custom software development, based on the requirements of the users. E.g
Word Processors: These applications are required to create documentation. It also assists in storing as well as formatting and even printing documents. E.g: MS Word, Corel, WordPerfect, Google Docs
Database Software: It is used to create as well as manage a database and is also known as Database Management System(DBMS). Such software assists in data organization. E.g: MS Access, MySQL FoxPro, etc.
Multimedia Software: This is software that can play, create as well as record images, audio or even video files. This software is utilized for animation, video editing, graphics as well as image editing. Due to the high demand for such software, every software product development company has vast avenues in developing them. E.g: Adobe Photoshop, Picasa, VLC Media Player, Windows Media Player, Windows Movie Maker
Web Browsers: This software is utilized to browse the internet. Web browsers assist the users in locating as well as retrieving data well across the web. E.g: Google Chrome, Mozilla Firefox, Internet Explorer, Opera, UC Browser, Safari.
Utility Software: This kind of software is designed to assist in analyzing, as well as optimizing, along configuring and maintaining a given computer system. It provides support to the computer infrastructure. Software like disk cleanup and management tools, anti-viruses, defragmenters, compression tools, etc. are all utility software. Some of its examples are Norton Antivirus, McAfee Antivirus, WinRAR, WinZip, etc.
8. Memory: Memory is an essential part of a computer system because without it a computer system is not able to perform even simple tasks. When we input some data into a computer it needs storage and when the CPU performs calculations then sometimes intermediate results need to be stored at some location in the memory, again memory is required. After getting the final results again it needs storage. That is why it is said that memory is essentially required for a computer system to perform its tasks. Following are the types of memory:
Computer memory is of two basic types – Primary memory(RAM and ROM) and Secondary memory(hard drive, CD, etc.).
Primary Memory: Primary memory is computer memory that is accessed directly by the CPU. The operating system and applications are loaded into primary memory(RAM), By loading data into RAM, programs can run significantly faster and are much more responsive than if-then constantly accessed data from secondary memory.RAM and ROM are the two types of Primary Memory used in the Computer.
RAM (Random Access Memory):
It is also called the read and write memory or the main memory.
All the instructions and data required by the CPU get stored in this memory.
It is a volatile memory means the data gets lost when the power is turned off.
RAM is further classified into two types- SRAM (Static Random Access Memory) and DRAM (Dynamic Random Access Memory).
SRAM(Static Random Access Memory)
|DRAM (Dynamic Random Access Memory)|
|It uses transistors to store a bit of data.||It uses capacitors to store a bit of data.|
|Information is stored in the form of bits.||Information is stored in the form of a charge.|
|Lower access time||Faster access time.|
|SRAM needs a constant power supply, which means it consumes more power.||DRAM requires reduced power consumption as the information stored in the capacitor.|
|The SRAM is widely used on the processor or lodged between the main memory and processor of your computer.||The DRAM is placed on the motherboard.|
|SRAM is of a smaller size.||DRAM is available in a larger storage capacity.|
|The storage capacity of SRAM is 1MB to 16MB.||The storage capacity of DRAM is 1 GB to 16GB.|
ROM (Read-only Memory):
Stores crucial information essential to operate the system, like the program essential to boot the computer.
It is not volatile.
Always retains its data.
Used in calculators and peripheral devices.
ROM is further classified into 4 types- ROM, PROM, EPROM, and EEPROM.
PROM (Programmable read-only memory): It can be programmed by the user. Once programmed, the data and instructions in it cannot be changed.
EPROM (Erasable Programmable read-only memory): It can be reprogrammed. To erase data from it, expose it to ultraviolet light. To reprogram it, erase all the previous data.
EEPROM (Electrically erasable programmable read-only memory): The data can be erased by applying an electric field, with no need for ultraviolet light. We can erase only portions of the chip.
9. Operating System: An operating system is the most important software that runs on a computer. It manages the computer's memory and processes, as well as all of its software and hardware. It acts as an interface between the computer and its user. Without an operating system, a computer is useless.
a) History of Operating System:
During the first generation when computers were introduced, they were intended to perform only mathematical calculations. At that time there was no need for operating systems.
The first operating system was introduced in the early 1950s, it was called GMOS and was created by General Motors for IBM's machine the 701. It was a single-stream batch processing system.
By the late 1960s operating systems designers were able to develop the system of multiprogramming. In the late 1960s, the first version of the Unix OS was developed.
The fourth generation of operating systems saw the creation of personal computing. The Windows Operating System was created in 1975 by Paul Allen and Bill Gates. MS-DOS was introduced in 1981. Windows went on to become the largest operating system used in technology today with releases of Windows 95, Windows 98, Windows XP, and other versions. Apple is the other major operating system created in the 1980s. Steve Jobs, the co-founder of Apple, created the Apple Macintosh.
Following are some operating systems to be created till now:
Windows Phone OS
b) Types of Operating System: Following are the types of the operating system:
Batch Operating System
Batch processing OS: This type of operating system does not interact with the computer directly. There is an operator which takes similar jobs having the same requirement and groups them into batches. It is the responsibility of the operator to sort jobs with similar needs.
Multitasking/Time-Sharing OS: Each task is given some time to execute so that all the tasks work smoothly. Each user gets the CPU time when its turn comes. The task can be from a single user or different users also. The time that each task gets to execute is called quantum. After the time interval is over, the OS switches over to the next task.
Multiprocessing OS: A multiprocessing operating system (OS) is one in which two or more central processing units (CPUs) control the functions of the computer. Each CPU contains a copy of the OS, and these copies communicate with one another to coordinate operations.
Real-Time OS: A real-time operating system’s time interval to process and respond to inputs is very small. This time interval is called response time. For Example Military Software Systems, Space Software Systems are the Real-time OS example. It is of two types:
Hard Real-Time OS: In these operating systems time constraint is very strict, a delay is not acceptable in these operating systems. E.g Automobile control systems like Anti Lock & Airbags, Airline Control systems, Diagnosis Control systems.
Soft Real-Time OS: These OSs are for applications where time-constraint is less strict. E.g personal computer, audio, and video systems, etc.
Distributed OS: Various independent interconnected computers communicate with each other using a shared communication network. Independent systems have their memory unit and CPU. These are referred to as loosely coupled systems or distributed systems. These system’s processors differ in size and function. The major benefit of working with these types of the operating system is that it is always possible that one user can access the files or software which are not present on his system but some other system connected within this network i.e., remote access is enabled within the devices connected in that network.
Network OS: Network Operating System runs on a server. These systems allow shared access to devices on a small private network. All computers are connected with the help of the Internet. They are called tightly coupled networks.
Mobile OS: Mobile operating systems are those OS that is specially designed to power smartphones, tablets, and wearables devices. Some most famous mobile operating systems are Android and iOS, but others include BlackBerry, Web, and watchOS.
c) Functions of Operating System:
Process management:- Process management helps OS to create and delete processes. It also provides mechanisms for synchronization and communication among processes. Process operations can be easily controlled with the help of PCB(Process Control Block). PCB is considered to be the brain of the process as it holds all the information related to the process like its process id, priority, state, CPU registers, etc.
Memory Management: The memory management module performs the task of allocation and deallocation of memory space to programs in need of these resources. The operating system manages the primary memory. It is the responsibility of an operating system to manage the back and forth movement of data between the primary memory and the execution disk. It keeps track of every bit of memory either assigned or free.
File Management: A file is a collection of specific information stored in the memory of a computer system. File management is defined as the process of manipulating files in a computer system, its management includes the process of creating, modifying, and deleting the files.
Device Management: Device management means managing the I/O devices. It acts as a controller of I/O devices. It is the responsibility of an operating system to manage all the devices like keyboards, mouse, printers, scanners, etc. Every device needs a driver to be installed to run it properly. The operating system manages all the drivers of different devices attached to the system. It also performs the task of allocation and deallocation of the devices.
I/O system Management: The three major jobs of a computer are Input, Output, and Processing. The primary role of the operating system in computer Input / Output is to manage and organize I/O operations and all I/O devices.
Secondary-Storage Management: Systems have several levels of storage which include primary storage, secondary storage, and cache storage. Instructions and data must be stored in primary storage or cache so that a running program can reference them.
Security: OS security may be approached in many ways, including adherence to the following:
Performing regular OS patch updates.
Installing updated antivirus engines and software.
Scrutinizing all incoming and outgoing network traffic through a firewall.
Creating secure accounts with required privileges only.
Networking: A distributed system is a group of processors that do not share a memory, hardware devices, or a clock. The processors communicate with one another through the network.
Job Accounting: It keeps a record of the time and resources used by the device and for how much time these resources are occupied by that device. It also keeps track of various kinds of errors and other bugs detected in the system.
Coordination between software and users: It acts as an interface between the different software and users to run them.
10. Network: A network consists of two or more computers that are linked promptly, share resources (such as printers and CDs), exchange files, or allow electronic communications. The computers on a network may be linked through cables, telephone lines, radio waves, satellites, or infrared light beams.
a) Data Communication: Data communications are the exchange of data between two devices via some form of transmission medium such as a wire cable. For data communications to occur, the communication devices must be part of a communication system made up of a combination of hardware (physical equipment) and software (programs). The effectiveness of a data communications system depends on four fundamental characteristics:
Delivery: The system must deliver data to the correct destination. Data must be received by the intended device or user and only by that device or user.
Accuracy: The system must deliver the data accurately. Data that have been altered in transmission and left uncorrected are unusable.
Timeliness: The system must deliver data on time. Data delivered late are useless. In the case of video and audio, timely delivery means delivering data as they are produced, in the same order that they are produced, and without significant delay. This kind of delivery is called real-time transmission.
Jitter: Jitter refers to the variation in the packet arrival time. It is an uneven delay in the delivery of audio or video packets. For example, let us assume that video packets are sent every 3D ms. If Some of the packets arrive with a 3D-ms delay and others with a 4D-ms delay, an uneven quality in the video is the result.
b) Data Flow in a Network:
Simplex: In simplex mode, the communication is unidirectional, as on a one-way street. Only one of the two devices on a link can transmit; the other can only receive. Keyboards and traditional monitors are examples of simplex devices. The keyboard can only introduce input; the monitor can only accept output. The simplex mode can use the entire capacity of the channel to send data in one direction.
Half-Duplex: In half-duplex mode, each station can both transmit and receive, but not at the same time. When one device is sending, the other can only receive, and vice versa. Walkie-talkies and CB (citizens’ band) radios are both half-duplex systems.
Full-Duplex: In full-duplex mode, both stations can transmit and receive simultaneously. One common example of full-duplex communication is the telephone network. When two people are communicating by telephone line, both can talk and listen at the same time.
c) Categories of network: Based on the size of the network, a network can be broadly classified as the following:
LAN (Local Area Network): A local area network (LAN) is usually privately owned and links the devices in a single office, building, or campus. Depending on the needs of an organization and the type of technology used, a LAN can be as simple as two PCs and a printer in someone's home office; or it can extend throughout a company and include audio and video peripherals. Currently, LAN size is limited to a few kilometers.
WAN (Wide Area Network): A wide area network (WAN) provides long-distance transmission of data, image, audio, and video information over large geographic areas that may comprise a country, a continent, or even the whole world.
MAN (Metropolitan Area Network): A metropolitan area network (MAN) is a network with a size between a LAN and a WAN. It normally covers the area inside a town or a city. It is designed for customers who need high-speed connectivity, normally to the Internet, and have endpoints spread over a city or part of the city. A good example of a MAN is the part of the telephone company network that can provide a high-speed DSL line to the customer, a cable TV network.
d) OSI Model: The OSI Model (Open Systems Interconnection Model) is a conceptual framework used to describe the functions of a networking system. In the OSI reference model, the communications between a computing system are split into seven different abstraction layers: Physical, Data Link, Network, Transport, Session, Presentation, and Application. The OSI model was published in 1984 by the International Organization for Standardization (ISO). Though it is not implemented yet but is used as a means to describe Network Architecture.
Physical Layer: The physical layer coordinates the functions required to carry a bit stream over a physical medium. It deals with the mechanical and electrical specifications of the interface and transmission medium. It also defines the procedures and functions that physical devices and interfaces have to perform for transmission to occur. Functions of Physical Layer are:
Bit synchronization: The physical layer provides the synchronization of the bits by providing a clock. This clock controls both sender and receiver thus providing synchronization at bit level.
Bit rate control: The Physical layer also defines the transmission rate i.e. the number of bits sent per second.
Physical topologies: Physical layer specifies how the different devices/nodes are arranged in a network i.e. bus, star, or mesh topology.
Transmission mode: Physical layer also defines how promptly, data flows between the two connected devices. The various transmission modes possible are Simplex, half-duplex and full-duplex.
Data Link Layer: Data link layer is responsible for node to node delivery of data. Its main function is to make the data error-free at the time of transferring it from one layer to another. The Packet in the Data Link layer is referred to as Frame. The Data Link layer is handled by the NIC (Network Interface Card) and device drivers of host machines. Switch & Bridge are Data Link Layer devices. Data Link Layer is divided into two sub-layers :
Logical Link Control (LLC)
Media Access Control (MAC)
The functions of the data link layer are:
Framing: The data link layer divides the stream of bits received from the network layer into manageable data units called frames.
Physical addressing: If frames are to be distributed to different systems on the network, the data link layer adds a header to the frame to define the sender and/or receiver of the frame. If the frame is intended for a system outside the sender's network, the receiver address is the address of the device that connects the network to the next one.
Flow control: If the rate at which the data are absorbed by the receiver is less than the rate at which data are produced in the sender, the data link layer imposes a flow control mechanism to avoid overwhelming the receiver.
Error control: The data link layer adds reliability to the physical layer by adding mechanisms to detect and retransmit damaged or lost frames. It also uses a mechanism to recognize duplicate frames. Error control is normally achieved through a trailer added to the end of the frame.
Access control: When two or more devices are connected to the same link, data link layer protocols are necessary to determine which device has control over the link at any given time.
Network Layer: The network layer is responsible for the source-to-destination delivery of a packet, possibly across multiple networks (links). Whereas the data link layer oversees the delivery of the packet between two systems on the same network (links), the network layer ensures that each packet gets from its point of origin to its final destination. If two systems are connected to the same link, there is usually no need for a network layer. However, if the two systems are attached to different networks (links) with connecting devices between the networks (links), there is often a need for the network layer to accomplish source-to-destination delivery. The functions of the network layer are:
Logical addressing: The physical addressing implemented by the data link layer handles the addressing problem locally. If a packet passes the network boundary, we need another addressing system to help distinguish the source and destination systems. The network layer adds a header to the packet coming from the upper layer that, among other things, includes the logical addresses of the sender and receiver.
Routing: When independent networks or links are connected to create internetworks (network of networks) or a large network, the connecting devices (called routers or switches) route or switch the packets to their final destination. One of the functions of the network layer is to provide this mechanism.
Transport Layer: The transport layer is responsible for the process-to-process delivery of the entire message. A process is an application program running on a host. Whereas the network layer oversees the source-to-destination delivery of individual packets, it does not recognize any relationship between those packets. It treats each one independently, as though each piece belonged to a separate message, whether or not it does. The transport layer, on the other hand, ensures that the whole message arrives intact and in order, overseeing both error control and flow control at the source-to-destination level.
Service-point addressing: Computers often run several programs at the same time. For this reason, source-to-destination delivery means delivery not only from one computer to the next but also from a specific process (running program) on one computer to a specific process (running program) on the other. The transport layer header must therefore include a type of address called a service-point address (or port address). The network layer gets each packet to the correct computer; the transport layer gets the entire message to the correct process on that computer.
Segmentation and reassembly: A message is divided into transmittable segments, with each segment containing a sequence number. These numbers enable the transport layer to reassemble the message correctly upon arriving at the destination and to identify and replace packets that were lost in transmission.
Connection control: The transport layer can be either connectionless or connection-oriented. A connectionless transport layer treats each segment as an independent packet and delivers it to the transport layer at the destination machine. A connection-oriented transport layer makes a connection with the transport layer at the destination machine first before delivering the packets. After all the data are transferred, the connection is terminated.
Flow control: As the data link layer, the transport layer is responsible for flow control. However, flow control at this layer is performed end to end rather than across a single link.
Error control: As the data link layer, the transport layer is responsible for error control. However, error control at this layer is performed process-to-process rather than across a single link. The sending transport layer makes sure that the entire message arrives at the receiving transport layer without error (damage, loss, or duplication). Error correction is usually achieved through retransmission.
Session Layer: The session layer is the network dialog controller. It establishes, maintains, and synchronizes the interaction among communicating systems. Functions of Session Layer are:
Dialog control: The session layer allows two systems to enter into a dialog. It allows the communication between two processes to take place in either half-duplex (one way at a time) or full-duplex (two ways at a time) mode.
Synchronization: The session layer allows a process to add checkpoints, or synchronization points, to a stream of data. For example, if a system is sending a file of 2000 pages, it is advisable to insert checkpoints after every 100 pages to ensure that each 100-page unit is received and acknowledged independently. In this case, if a crash happens during the transmission of page 523, the only pages that need to be resent after system recovery are pages 501 to 523. Pages previous to 501 need not be resent.
Presentation Layer: The presentation layer is concerned with the syntax and semantics of the information exchanged between two systems. Functions of Presentation Layer are:
Translation: The processes (running programs) in two systems are usually exchanging information in the form of character strings, numbers, and so on. The information must be changed to bitstreams before being transmitted. Because different computers use different encoding systems, the presentation layer is responsible for interoperability between these different encoding methods. The presentation layer at the sender changes the information from its sender-dependent format into a common format. The presentation layer at the receiving machine changes the common format into its receiver-dependent format.
Encryption: To carry sensitive information, a system must be able to ensure privacy. Encryption means that the sender transforms the original information to another form and sends the resulting message out over the network.
Decryption: reverses the original process to transform the message back to its original form.
Compression: Data compression reduces the number of bits contained in the information. Data compression becomes particularly important in the transmission of multimedia such as text, audio, and video.
Application Layer: The application layer enables the user, whether human or software, to access the network. It provides user interfaces and support for services such as electronic mail, remote file access, and transfer, shared database management, and other types of distributed information services. Functions of Presentation Layer are:
Network virtual terminal: A network virtual terminal is a software version of a physical terminal, and it allows a user to log on to a remote host. To do so, the application creates a software emulation of a terminal at the remote host. The user's computer talks to the software terminal which, in turn, talks to the host, and vice versa. The remote host believes it is communicating with one of its terminals and allows the user to log on.
File transfer, access, and management: This application allows a user to access files in a remote host (to make changes or read data), to retrieve files from a remote computer for use in the local computer, and to manage or control files in a remote computer locally.
Mail services: This application provides the basis for e-mail forwarding and storage.
Directory services: This application provides distributed database sources and access to global information about various objects and services.
e) Types of devices used in the Network: In a network, several devices are used to connect computers and networks. Some of these devices are explained below:
The hub connects the networking devices in a network.
The Hub works on the Physical Layer of an OSI model.
Like in a star topology, the hub is used to connect different stations.
Hub acts as a repeater in long-distance cables as it amplifies the declined signal.
Hub cannot filter data, meaning a message reaches all stations in the network rather than the intended recipient.
Hub is not capable enough to find the best path for data packets.
A switch is a multiport device that improves network efficiency.
It can work on either the Data Link Layer or Network Layer of an OSI model.
A switch performs error checking, it does not forward the corrupted messages but the broadcast remains the same.
The switch is more efficient than routers and hubs because it is having a virtual circuit capability which is difficult to examine with network monitors.
A router works on the Network Layer of an OSI Model.
It connects different networks and sends data packets from one network to another.
A router can be used both in LANs (Local Area Networks) and WANs (Wide Area Networks).
It transfers data in the form of IP packets. To transmit data, it uses the IP address mentioned in the destination field of the IP packet.
The router has a routing table that is refreshed periodically according to the changes in the network.
To transmit data packets, it consults the table and uses a routing protocol.
To prepare or refresh the routing table, routers share information.
Routers protect against broadcast storms.
Routers are more expensive than other networking devices like hubs, bridges, and switches.
Routers are manufactured by some popular companies like −
Bridges are used to divide larger networks into smaller sections by sitting between two physical network segments and managing the flow of data between the two.
Bridges work at the Data Link Layer of an OSI model.
The main function of this is to examine the incoming traffic and examine whether to filter it or forward it.
Bridges connect two or more different LANs that have a similar protocol and provide communication between the devices (nodes) in them.
It connects two networks working on dissimilar networking models.
Gateways work on the Network Layer of an OSI Model.
The gateway performs all the functionalities of the Router. In simple words, we can say that it is an improved form of the router.
A gateway operates as a protocol converter, providing compatibility between the different protocols used in the two different networks.
It also stores information about the routing paths of the communicating networks.
It uses a packet-switching technique to transmit data across networks.
The modem is an abbreviation for Modulator – Demodulator. Modems are used for data transfer from one computer network to another computer network through telephone lines. The computer network works in digital mode, while analog technology is used for carrying massages across phone lines.
The modulator converts information from digital mode to analog mode at the transmitting end and the demodulator converts the same from analog to digital at receiving end. The process of converting analog signals of one computer network into digital signals of another computer network so they can be processed by a receiving computer is referred to as digitizing.
When an analog facility is used for data communication between two digital devices called Data Terminal Equipment (DTE), modems are used at each end. DTE can be a terminal or a computer.
A repeater works on the Physical Layer of an OSI Model.
It regenerates the signal over the same network before the signal becomes too weak or corrupted to maintain the length of the signal on which it is transmitted.
They do not amplify the signal when it becomes weak rather they copy the signal bit by bit and regenerate it.
f) Abbreviations in Computer Networks:
|ANSI||American National Standards Institute|
|API||Application Programming Interface|
|ATM||Asynchronous Transfer Mode|
|CSMA||Carrier Sense Multiple Access|
|DNS||Domain Name System|
|DSL||Digital Subscriber Line|
|DDL||Data Link Layer|
|FTP||File Transfer Protocol|
|HTTP||Hypertext Transfer Protocol|
|IEEE||Institute of Electrical and Electronics Engineers|
|IPv4||Internet Protocol version 4|
|IPv6||Internet Protocol version 6|
|IPsec||Internet Protocol security|
|ISDN||Integrated Services Digital Network|
|ISA||International Organization for Standardization|
|ISP||Internet Service Provider|
|MAC||Medium Access Control|
|MANET||Mobile Ad hoc Network|
|RIP||Routing Information Protocol|
|RFC||Request for Comments|
|W3C||World Wide Web Consortium|
|VPN||Virtual Private Network|
|DHCP||Dynamic Host Configuration Protocol|
|ARP||Address Resolution Protocol|
|RARP||Reverse Address Resolution Protocol|
|ICMP||Internet Control Message Protocol|
|IGMP||Internet Group Management Protocol|
|UDP||User Datagram Protocol|
|TCP||Transmission Control Protocol|
|SFTP||Secure File Transfer Protocol|
|TFTP||Trivial File Transfer Protocol|
|SMTP||Simple Mail Transfer Protocol|
|HTTPS||Hypertext Transfer Protocol Secure|
|POP3||Post Office Protocol Version 3|
|SNMP||Simple Network Management Protocol|
|RTP||Real-Time Transport Protocol|
11. System Analysis and Design: Systems Analysis and Design (SAD) is a term that describes methodologies to develop high-quality Information Systems which combine Information Technology, People, and Data to support business requirements. It is a basic roadmap to understand and fulfill the requirements of the user.
a) System: The term system is derived from the Greek word ‘Systema’ which means an organized relationship among functioning units or components. A system is an orderly grouping of interdependent components linked together to accomplish some goals.
b) Characteristics of a System:
Organization: It is the arrangement of all the components that are required to achieve the objectives of a system. E.g in a business a hierarchy is followed from top to bottom i.e the organization of people at different levels their roles and responsibilities.
Interactions: Interaction means how the different components of a system interact with each other. E.g in a business there may be an interaction between the sales department and finance department related to the selling of products, i.e an interaction between two components of a system.
Interdependence: Interdependence means the components of an organization or a computer system depend on one another. Each component or part should depend on other components of an organization. E.g The output of one subsystem is required by another subsystem as input.
Integration: Integration means how different components of a system work together even though each performs its function to provide an efficient result.
Central Objective: The objective of the system must be central. It may be real or stated. It is not uncommon for an organization to state an objective and operate to achieve another. The users must know the main objective of a computer application early in the analysis for a successful design and conversion.
c) Elements of a System: A system has three basic elements input, processing, and output. The other elements include control, feedback, boundaries, environment, and interfaces.
Inputs and outputs: Input is the data we enter into the system for processing. After processing data, it converts into information and that will be the output. The main objective of the system is to provide an output desired by the user.
Processor: It is the element that involves the actual transformation of input into output. Processors process the data based on the specifications given by the user.
Control: The control element guides the system. It is the decision-making subsystem that controls the pattern of activities governing input, processing, and output. In an organization, management as a decision-making body controls the inflow, handling, and outflow of activities that affect the welfare of the business.
Feedback: Feedback measures output against a standard procedure. Feedback provides the rate at which your system is meeting requirements. Positive feedback encourages the team, and negative feedback indicates taking action to upgrade the system.
Environment: The environment is the “super system” within which an organization operates. It determines how a system must function. For example, vendors and competitors of an organization's environment may provide constraints that affect the actual performance of the business.
Boundaries and Interface: The line that marks the inside and outside of a system and that sets off the system from its environment. Boundaries are the limits that identify its components, processes, and interrelationship when it interfaces with another system.
d) Types of System: The system can be divided into the following categories:
Physical or Abstract System: Physical systems are tangible or material entities. E.g in a library, the physical entities are the chairs, tables, books, shelves, desks, etc. They can be visible and countable. Abstract systems are intangible and non-physical entities that cannot be seen and touched. E.g A model is a visual system. It helps the team to visually understand the system, but it is not the actual implementation of the system.
Open or Closed System: An open system must interact with its environment. It receives inputs from and delivers outputs to the outside of the system. E.g The library system falls into this category since it must adapt to the changing demands of the user. A closed system does not interact with its environment. It is isolated from environmental influences. A completely closed system is rare in reality.
Adaptive or Non Adaptive Systems: Adaptive systems respond to changes in the environment. It improves the efficiency of the system. E.g Human beings and animals, but non-adaptive systems do not respond to the changes happening in the environment. E.g Machines.
Deterministic or Probabilistic System: Deterministic system operates predictably and the interaction between system components is known with certainty. For example, two molecules of hydrogen and one molecule of oxygen make water. The Probabilistic System shows uncertain behavior. The exact output is not known. For example, Weather forecasting, mail delivery.
Natural and Man-made System: Natural systems are created by nature. For example, the solar system, seasonal system. Man-made systems are created by humans by using their intelligence. For example, Rockets, dams, trains.
e) System Development Life Cycle: SDLC stands for Software Development Life Cycle. It is a systematic process to build correct and good-quality software to meet the needs of users. It aims to produce high-quality and cost-effective software in a predefined time. SDLC consists of a detailed plan which explains how to plan, build, and maintain specific software. Every phase in SDLC has its inputs and results produced in one phase will be the input for the next phase.SDLC is used by analysts to develop an information system. SDLC includes the following activities:
Define the problem and scope of the existing system.
Outline the new system and shape its objectives.
During this phase, threats, constraints, integration, and security of the system are also considered.
At the end of this phase, prepare a project feasibility report to schedule its tasks.
Gather, analyze, and validate the information.
Define the requirements and prototypes for the new system.
Evaluate the alternatives and prioritize the requirements.
Examine the information needs of the end-user and enhance the system’s goal.
A Software Requirement Specification (SRS) document, which specifies the software, hardware, functional, and network requirements of the system, is to be prepared at the end of this phase.
Includes the design of applications, networks, databases, user interfaces, and system interfaces.
Transform the SRS document into a logical structure, which contains a detailed and complete set of specifications that can be implemented in a programming language.
Create a contingency, training, maintenance, and operation plan.
Review the proposed design. Ensure that the final design must meet the requirements stated in the SRS document.
Finally, prepare a design document that will be used during the next phases.
Implement the design into the source code through coding.
Combine all the modules into a training environment that detects errors and defects.
A test report which contains errors is prepared through a test plan that includes test-related tasks such as test case generation, testing criteria, and resource allocation for testing.
Integrate the information system into its environment and install the new system.
Include all the activities such as phone support or physical on-site support for users that are required once the system is installing.
Implement the changes that software might undergo over a while or implement any new requirements after the software is deployed at the customer location.
It also includes handling the residual errors and resolves any issues that may exist in the system even after the testing phase.
Maintenance and support may be needed for a longer time for large systems and for a short time for smaller systems.
12. Database Management System: A database management system is a collection of related data and a set of programs for defining, creating, maintaining, and manipulating a database. It is a collection of data + management, i.e., to collect data from various sources and then manage that data in the form of a table for easy access of users.
a) Functions of DBMS:
Defining database schema: it must give facility for defining the database structure and also specifies access rights to authorized users.
Manipulation of the database: The DBMS must-have functions like insertion, deletion, sorting, updating, and retrieval of records into the database.
Sharing of the database: The DBMS must share data items for multiple users by maintaining the consistency of data.
Protection of database: It must protect the database against unauthorized users.
Database recovery: If for any reason the system fails, DBMS must be capable enough to recover the data from the database.
b) Applications of Database Management System:
Banking: for storing customer information, account activities, deposits, payment details, loans, etc.
Manufacturing: for supply chain management, production tracking, and inventory management.
Finance: for storing information about stocks, sales, and purchases of financial instruments like stocks and bonds.
Universities: for student information, course registrations, payroll, and grades.
Airlines: for reservations, ticket booking, and schedule information.
c) Advantages: Data isolation, Data Security/Protection, Integrity, Consistency, Less redundancy.
d) Disadvantages: Higher cost of hardware/software & training, Complex system, Data loss, can’t perform sophisticated calculations.
e) Database Basics:
Data item: The smallest unit in data but has some meaning for its users is called a ta item. Eg: “e110”,” Harish”.
Entities and attributes: An entity is a thing or object in the real world that is distinguishable from all other objects Eg: Bank, employee, student Attributes are properties of an entity. Eg: Empcode,ename,rollno,name.
Logical data and physical data: Logical data are the data for the table created by the user in primary memory. Physical data refers to the data stored in the secondary memory.
Schema and sub-schema: A schema is a logical database description and is drawn as a chart of the types of data that are used. It gives the names of the entities and attributes and specifies the relationships between them. A database schema includes information such as characteristics of data items such as entities and attributes. Logical structures and relationships among these data items. Format for storage representation. Integrity parameters such as physical authorization and backup policies. A subschema is a schema derived from an existing schema as per the user’s requirement. There may be more than one subschema created for a single conceptual schema.
f) Database Architecture: A Database lets the users quickly and securely access critical information. The Database allows the components to be divided into components to perform all the operations easily. It also helps to understand the components of a database. There are mainly three types of DBMS architecture:
One Tier Architecture
Two Tier Architecture
Three Tier Architecture
One Tier Architecture:
In this architecture, all the client, server, and database all reside on the same machine
It is the simplest architecture and is rarely used in production.
It is used to develop local applications where users can directly access the database.
Two Tier Architecture:
The 2-Tier architecture is the same as the basic client-server. In this architecture, applications run on the client-side can directly communicate with the database at the server-side. For this interaction, APIs like ODBC, JDBC are used.
The user interfaces and application programs run on the client side.
The server side is responsible to provide the functionalities like query processing and transaction management.
To communicate with the DBMS, the client-side application establishes a connection with the server-side.
Three Tier Architecture:
The 3-Tier architecture contains another layer between the client and server. In this architecture, clients can't directly communicate with the server.
The application on the client-end interacts with an application server which further communicates with the database system.
End-user has no idea about the existence of the database beyond the application server. The database also has no idea about any other user beyond the application.
The 3-Tier architecture is used in the case of large web applications.
Super Key: A super key is a group of single or multiple keys which identifies rows in a table.
Primary Key: is a column or group of columns in a table that uniquely identifies every row in that table.
Candidate Key: is a set of attributes that uniquely identify tuples in a table. Candidate Key is a super key with no repeated attributes.
Alternate Key: is a column or group of columns in a table that uniquely identifies every row in that table.
Foreign Key: is a column that creates a relationship between two tables. The purpose of Foreign keys is to maintain data integrity and allow navigation between two different instances of an entity.
Compound Key: has two or more attributes that allow you to uniquely recognize a specific record. It is possible that each column may not be unique within the database.
Composite Key: a composite key is a candidate key that consists of two or more attributes (table columns) that together uniquely identify an entity occurrence (table row)
Surrogate Key: An artificial key which aims to uniquely identify each record is called a surrogate key. These kinds of keys are unique because they are created when you don't have any natural primary keys.