Fundamentals of Computer (Gmu)
Fundamentals of Computer (Gmu)
Introduction to Computers
Computer Definition
Introduction
• Being a modern-day kid, you must have used, seen, or read about computers.
• This is because they are an integral part of our everyday existence.
• Be it school, banks, shops, railway stations, hospital or your own home, computers are
present everywhere, making our work easier and faster for us.
• As they are such integral parts of our lives, we must know what they are and how they
function. Let us start with defining the term computer formally.
• Charles Babbage is considered as father of computer.
Note:
The literal meaning of computer is a device that can calculate.
However, modern computers can do a lot more than calculate.
Definition
Computer is an electronic device that receives input, stores, or processes the input as per
user instructions and provides output in desired format.
Input-Process-Output Model
• Computer input is called data and the output obtained after processing it, based on
user’s instructions is called information.
• Raw facts and figures which can be processed using arithmetic and logical operations to
obtain information are called data.
Characteristics of Computers
• Speed of Computer
• Accuracy of Computer
• Diligence of Computer
• Reliability of Computer
• Versatility of Computer
• Storage Capacity of Computer
• Automatic
• Quick Decision
• Multitasking
• No Feeling
• Power of Remembering
• No IQ
• Speed of Computer
• Accuracy of Computer
• A computer is very accurate. It does not make any kind of mistake in calculating.
Sometimes we get some error but these are because of the mistake performed by
us.
• The Accuracy of the computer is constantly high and it can perform hundred of
operation with the carry-out calculation and analysis accurately and speedily.
• It is also a feature of the computer that the computer completes any work with
absolute accuracy, this means that any instruction received from the user is done by
the computer with full accuracy and speed.
• A computer never gives us wrong results under any circumstances. You can
absolutely trust the output of the computer.
• To know more about Computer Accuracy, you can read the post given below.
• Diligence of Computer
• Diligence means that the computer can do any work for a long time without getting
tired and getting stops.
• This is also one of the special features of the computer. Let us understand it in detail.
• A person gets tired of doing some work in a few hours and a computer can do any
work continuously for many hours, days, months.
• Even after the computer has worked for such a long time, there is no decrease in its
ability to work and the accuracy of the result.
• The computer does work without any discrimination. A computer is free from
monetary and tiredness.
• Even if the computer does any work for weeks in a row, then the computer will do
that work with the same speed and accuracy.
• No matter how long the computer works, but it never gets boring.
• Reliability of Computer
• Reliability is a very big characteristics of computer. Today almost all the big
industries or big e-Commerce companies like Amazon and Flipkart, and big search
engine companies like - Google and Bing, all these companies are dependent on
computers.
• Today every major industry and companies in the world have full confidence in their
computers, and their entire business is running from computers.
• Today the work of all companies is being done through computers. These companies
store all their data in the computer, the data of these companies are many types of
data such as the amount to be paid, the date of payment and many other types of
data, which will be used in future when the time comes for that data use.
• Data place to another place is transported through a computer in a very short time.
• The computer does all its work very honestly. Night or day, the computer continues
its work without being tired. Today this is the reason why big e-commerce companies
and industries blindly trust computers.
• Versatility of Computer
• Versatility means that the computer is capable of doing any kind of work. Let us
understand computer Versatility in detail.
• It means The computer is capable of performing any type of instruction given by the
user, such as playing videos, downloading, running the Internet, the computer is
capable of doing all these instructions.
• Versatility is the Characteristics of a computer. Its means is that the computer is
capable of working in almost every field.
• Today computers are being used almost everywhere like schools, colleges, hospitals,
offices, railway stations, hotels etc.
• A computer system is multitasking so that you can do two tasks very easily at the
same time.
• Computer systems have a very large capacity to store any type of data. Acomputer
can store and resell any information due to its storage capacity.
• Computers have the ability to store all types of data such as data, pictures, files,
programs, games, and sound for many years and later we can get any data in a few
seconds at any time for taking that information and for future retrieval.
• Computer storage is also called permanent storage because once in this store any
data means - file, folder, text data, video, image is stored, then that data is stored for
life, and when As long as you do not delete any data, the data is saved in your
computer's storage.
• This storage unit is present in every computer system. The storage device is also
called the main part of the computer.
• Automation
• Quick Decision
• The computer takes the decision very quickly, given by the user which is the
instruction arithmetic data or logic data.
• All Mathematical data is called arithmetic data.
• Copy Document, Delete file, open camera etc this type of data is called Logical data.
• Multitasking
• Multitasking is also a very special feature of computers. A user can do different types
of tasks on the computer at the same time.
• Like we are using MS Word in computer as well as listening to songs and also getting
printouts.
• We can do a lot of work at the same time.
• No Feeling
• In computers, like humans, there is no feeling and emotion, nor does the computer
have any knowledge and experience, because a computer is a machine which works
continuously on the instruction of humans without any selfishness and without
tiredness.
• Power of remembering
• No IQ
Computer generation include five different phases they are explained as below.
• The second generation (from 1956 to 1963) of computers managed to do away with
vacuum tubes in lieu of transistors.
• This allowed them to use less electricity and generate less heat.
• Second generation computers were also significantly faster than their predecessors.
• Another significant change was in the size of the computers, which were smaller.
• Transistor computers also developed core memory which they used alongside magnetic
storage.
• From 1964 to 1971 computers went through a significant change in terms of speed,
courtesy of integrated circuits.
• Integrated circuits, or semiconductor chips, were large numbers of miniature transistors
packed on silicon chips.
• This not only increased the speed of computers but also made them smaller, more
powerful, and less expensive.
• In addition, instead of the punch cards and the printouts of previous systems, keyboards
and monitors were now allowing people to interact with computing machines.
• The changes with the greatest impact occurred in the years from 1971 to 2010.
• During this time technology developed to a point where manufacturers could place
millions of transistors on a single circuit chip.
• This was called monolithic integrated circuit technology. It also heralded the invention of
the Intel 4004 chip which was the first microprocessor to become commercially available
in 1971.
• This invention led to the dawn of the personal computer industry. By the mid-70s,
personal computers such as the Altair 8800 became available to the public in the form of
kits and required assembly.
• By the late 70s and early 80s assembled personal computers for home use, such as the
Commodore Pet, Apple II and the first IBM computer, were making their way onto the
market.
• Personal computers and their ability to create networks eventually would lead tothe
Internet in the early 1990s.
• The fourth generation of computers also saw the creation of even smaller computers
including laptops and hand-held devices.
• Graphical user interface, or GUI, was also invented during this time. Computer memory
and storage also went through major improvements, with an increase in storage capacity
and speed.
• In the future, computer users can expect even faster and more advanced computer
technology.
• Computers continue to develop into advanced forms of technology. Fifth generation
computing has yet to be truly defined, as there are numerous paths that technology is
taking toward the future of computer development.
• For instance, research is on-going in the fields of nanotechnology, artificial intelligence,
as well as quantum computation.
• Input unit
• Storage unit
• Primary memory
• Secondary memory
• Central processing unit
• Control unit
• Arithmetic and Logic unit
• Output unit
Input Unit
• The data and instructions are inputted into the computer using keyboard which is one of
the most commonly used input devices.
• Other commonly used input devices are mouse, floppy disk drive, magnetic tape etc.
• Thus, we can conclude that, all the inputdevices accepts the data and instruction from
outside world, convert it to a form that the computer can understand, supply the
converted data to the computer system for further processing.
Storage Unit
• The storage unit of a computer holds data and instructions that are entered through the
input unit, before they are processed.
• It stores programs, data as well as intermediate results and results for output. Its main
function is to store information
The various storage devices can be divided into two main categories
• This memory is generally used to hold the program being currently executed in
the computer, the data being received from input device, the intermediate and
final results of a program.
• The primary memory is temporary in nature. The data is lost when the computer
is switched off.
• The data is electronically represented in the main memory chip’s circuitry and
while it remains in the main memory, central processing unit (CPU) can access it
directly at a very fast speed.
• Primary storage has limited storage capacity because it is very expensive and
generally made up of semiconductor devices.
• The control unit and arithmetic logic unit of computer are together known as central
processing unit (CPU).
• The CPU is like brain and performs following functions: It performs all calculations, it
takes all decisions, and it controls all units of a computer.
• A personal computer may have CPU-IC such as Intel 8088, 80386, 80486, Celeron,
Pentium, Pentium Pro, Pentium II, III, IV, Dual Core, AMD etc.
• Control Unit
• It controls all other units in a computer.
• The control unit instructs the input unit where to store the data after receiving it
from user. It controls the flow of data and instructions from the storage unit to
Arithmetic logic unit (ALU), it does not perform any actual processing of data.
• It manages and coordinates the entire computer system and synchronizes its
working, thus referred to as “Central Nervous System” or “Brain of the Computer”
• Arithmetic and Logic Unit
• The function of an Arithmetic logic unit (ALU) is to perform arithmetic and logical
operations such as addition, subtraction, multiplication, division, AND, OR, NOT,
Exclusive OR etc. It also performs increment, decrements, shift and clear operations.
• It is the place where the actual execution of instructions takes place during
processing operation.
• To be precise, all calculations and comparisons are made in the Arithmetic and
Logical Unit (ALU).
Output Unit
• An output unit performs the reverse operation of that of an input unit. As computers, work
with binary code the results produced is also in binary form.
• So before applying results to the outside world it must be converted to human acceptable
(readable) form. So, it supplies information obtained from processing to outside world.
Units called output interfaces accomplish this task.
Input Devices
• An input device can send data to another device, but it cannot receive data from another
device. Examples of input devices include the following.
• Following are some of the important input devices which are used in a computer
• Keyboard
• Mouse
• Joy Stick
• Light pen
• Track Ball
• Scanner
• Graphic Tablet
• Microphone
• Web Camera
• Digital Camera
• Magnetic Ink Card Reader(MICR)
• Optical Character Reader(OCR)
• Bar Code Reader
• Optical Mark Reader(OMR)
Keyboard
• Keyboard is the most common and very popular input device which helps to input datato
the computer.
• The layout of the keyboard is like that of traditional typewriter, although there are some
additional keys provided for performing additional functions.
• Keyboards are of two sizes 84 keys or 101/102 keys, but now keyboards with 104 keys
or 108 keys are also available for Windows and Internet.
Mouse
• Mouse is the most popular pointing device.
• It is a very famous cursor-control device having a small palm size box with a round ball
at its base, which senses the movement of the mouse and sends corresponding signals
to the CPU when the mouse buttons are pressed.
• Generally, it has two buttons called the left and the right button and a wheel is present
between the buttons.
• A mouse can be used to control the position of the cursor on the screen, but it cannot be
used to enter text into the computer.
Joystick
• Joystick is also a pointing device, which is used to move the cursor position on a monitor
screen.
• It is a stick having a spherical ball at its both lower and upper ends. The lower spherical
ball moves in a socket. The joystick can be moved in all four directions.
• The function of the joystick is similar to that of a mouse. It is mainly used in Computer
Aided Designing (CAD) and playing computer games.
Light Pen
• Light pen is a pointing device similar to a pen. It is used to select a displayed menuitem
or draw pictures on the monitor screen.
• It consists of a photocell and an optical system placed in a small tube.
• When the tip of a light pen is moved over the monitor screen and the pen button is
pressed, its photocell sensing element detects the screen location and sends the
corresponding signal to the CPU.
Track Ball
• Track ball is an input device that is mostly used in notebook or laptop computer, instead
of a mouse.
• This is a ball which is half inserted and by moving fingers on the ball, the pointer can be
moved.
• Since the whole device is not moved, a track ball requires less space than a mouse. A
track ball comes in various shapes like a ball, a button, or a square.
Scanner
Microphone
• Microphone is an input device to input sound that is then stored in a digital form.
• The microphone is used for various applications such as adding sound to amultimedia
presentation or for mixing music.
Web camera
• A webcam is a hardware camera and input device that connects to a computer and the
Internet and captures either still pictures or motion video of a user or another object.
• The picture of the Logitech Webcam C270 is an example of what a webcam may look.
• Today, most webcams are either embedded into the display with laptop computers or
connected to the USB or FireWire port on the computer.
Digital Camera
• MICR input device is generally used in banks as there are large number of cheques to
be processed every day.
• The bank's code number and cheque number are printed on the cheques with a special
type of ink that contains particles of magnetic material that are machine readable.
• This reading process is called Magnetic Ink Character Recognition (MICR).
• The main advantages of MICR is that it is fast and less error prone.
• Bar Code Reader is a device used for reading bar coded data (data in the form of light
and dark lines).
• Bar coded data is generally used in labelling goods, numbering the books, etc. It may be
a handheld scanner or may be embedded in a stationary scanner.
• Bar Code Reader scans a bar code image, converts it into an alphanumeric value, which
is then fed to the computer that the bar code reader is connected to.
• OMR is a special type of optical scanner used to recognize the type of mark made by
pen or pencil.
• It is used where one out of a few alternatives is to be selected and marked.
• It is specially used for checking the answer sheets of examinations having multiple
choice questions.
Output devices
• An output device can receive data from another device and generate output withthat
data, but it cannot send data to another device.
• Following are some of the important output devices used in a computer.
• Monitors
• Graphic Plotter
• Printer
Monitors
• Monitors, commonly called as Visual Display Unit (VDU), are the main output device ofa
computer.
• It forms images from tiny dots, called pixels that are arranged in a rectangular form. The
sharpness of the image depends upon the number of pixels.
Printers
Impact Printers
• Impact printers print the characters by striking them on the ribbon, which is then pressed
on the paper.
• Characteristics of Impact Printers are the following
• Character printers
• Line printers
Character Printers
• Character printers are the printers which print one character at a time.
• These are further divided into two types
• In the market, one of the most popular printers is Dot Matrix Printer.
• These printers are popular because of their ease of printing and economical price.
• Each character printed is in the form of pattern of dots and head consists of a Matrix of
Pins of size (5*7, 7*9, 9*7 or 9*9) which come out to form a character which is why it is
called Dot Matrix Printer.
Daisy Wheel
• Head is lying on a wheel and pins corresponding to characters are like petals of Daisy
(flower) which is why it is called Daisy Wheel Printer.
• These printers are generally used for word-processing in offices that require a few letters
to be sent here and there with very nice quality.
Line Printers
• Line printers are the printers which print one line at a time.
• These are of two types
• Drum Printer
• Chain Printer
Drum Printer
• This printer is like a drum in shape hence it is called drum printer. The surface of the
drum is divided into a number of tracks.
• Total tracks are equal to the size of the paper, i.e. for a paper width of 132 characters,
drum will have 132 tracks.
• A character set is embossed on the track.
• Different character sets available in the market are 48 character set, 64 and 96
characters set. One rotation of drum prints one line.
• Drum printers are fast in speed and can print 300 to 2000 lines per minute.
Chain Printer
• In this printer, a chain of character sets is used, hence it is called Chain Printer.
• A standard character set may have 48, 64, or 96 characters.
Non-impact Printers
Laser Printers
Inkjet Printers
• Inkjet printers are non-impact character printers based on a relatively new technology.
• They print characters by spraying small drops of ink onto paper. Inkjet printers produce
high quality output with presentable features.
• They make less noise because no hammering is done and these have many styles of
printing modes available.
• Color printing is also possible. Some models of Inkjet printers can produce multiple
copies of printing also.
Plotter
• A plotter is a computer hardware device much like a printer that is used for printing
vector graphics.
• Instead of toner, plotters use a pen, pencil, marker, or another writing tool to draw
multiple, continuous lines onto paper rather than a series of dots like a traditional printer.
• Though once widely used for computer-aided design, these devices have more or less
been phased out by wide-format printers.
• Plotters are used to produce a hard copy of schematics and other similar applications.
• Advantages of plotters
• Plotters can work on very large sheets of paper while maintaining high resolution.
• They can print on a wide variety of flat materials including plywood, aluminium, sheet
steel, cardboard, and plastic.
• Plotters allow the same pattern to be drawn thousands of times without any image
degradation.
• Disadvantages of plotters
• Plotters are quite large when compared to a traditional printer.
• Plotters are also much more expensive than a traditional printer.
• Monitors, commonly called as Visual Display Unit (VDU), are the main output device ofa
computer.
• It forms images from tiny dots, called pixels that are arranged in a rectangular form. The
sharpness of the image depends upon the number of pixels.
• The flat-panel display refers to a class of video devices that have reduced volume,
weight and power requirement in comparison to the CRT.
• You can hang them on walls or wear them on your wrists.
• Current uses of flat-panel displays include calculators, video games, monitors, laptop
computer, and graphics display.
• Emissive Displays
• Emissive displays are devices that convert electrical energy into light.
• For example, plasma panel and LED (Light-Emitting Diodes).
• Non-Emissive Displays
• Non-emissive displays use optical effects to convert sunlight or light from some other
source into graphics patterns.
• For example, LCD (Liquid-Crystal Device).
Projector
• A projector or image projector is an optical device that projects an image (or moving
images) onto a surface, commonly a projection screen.
• Most projectors create an image by shining a light through a small transparent lens,but
some newer types of projectors can project the image directly, by using lasers.
• A virtual retinal display, or retinal projector, is a projector that projects an image directly
on the retina instead of using an external projection screen.
Computer Memory
• Cache Memory
• Primary Memory/Main Memory
• Secondary Memory
Cache Memory
• Cache memory is a very high speed semiconductor memory which can speed up the
CPU.
• It acts as a buffer between the CPU and the main memory.
• It is used to hold those parts of data and program which are most frequently used by the
CPU.
• The parts of data and programs are transferred from the disk to cache memory by the
operating system, from where the CPU can access them.
• The advantages of cache memory are as follows
• Cache memory is faster than main memory.
• It consumes less access time as compared to main memory.
• It stores the program that can be executed within a short period of time.
• It stores data for temporary use.
• The disadvantages of cache memory are as follows
• Cache memory has limited capacity.
• It is very expensive.
• Primary memory holds only those data and instructions on which the computer is
currently working.
• It has a limited capacity and data is lost when power is switched off. It is generally made
up of semiconductor device.
• These memories are not as fast as registers. The data and instruction required to be
processed resides in the main memory.
• It is divided into two subcategories RAM and ROM.
• Characteristics of Main Memory
• These are semiconductor memories.
• It is known as the main memory.
• Usually volatile memory.
• Data is lost in case power is switched off.
• It is the working memory of the computer.
• Faster than secondary memories.
• A computer cannot run without the primary memory.
Secondary Memory
• This type of memory is also known as external memory or non-volatile. It is slower than
the main memory.
• These are used for storing data/information permanently. CPU directly does not access
these memories; instead they are accessed via input-output routines.
• The contents of secondary memories are first transferred to the main memory, and then
the CPU can access it. For example, disk, CD-ROM, DVD, etc.
• Characteristics of Secondary Memory
• These are magnetic and optical memories.
• It is known as the backup memory.
• It is a non-volatile memory.
• Data is permanently stored even if power is switched off.
• It is used for storage of data in a computer.
• Computer may run without the secondary memory.
• Slower than primary memories.
Access Speed Accessing data from primary Accessing data from secondary
memory is faster. memory is slower.
Size The computer has a small The computer has a larger primary
primary memory. memory.
• RAM (Random Access Memory) is a part of computer’s Main Memory which is directly
accessible by CPU.
• RAM is used to Read and Write data into it which is accessed by CPU randomly.
• RAM is volatile in nature; it means if the power goes off, the stored information is lost.
• RAM is used to store the data that is currently processed by the CPU.
• Most of the programs and data that are modifiable are stored in RAM.
• SRAM(Static RAM)
• DRAM(Dynamic RAM)
• The SRAM memories consist of circuits capable of retaining the stored information as
long as the power is applied.
• That means this type of memory requires constant power. SRAM memories are used to
build Cache Memory.
• SRAM is used primarily to create CPU’s speed sensitive cache.
• Each memory cell of SRAM consists of multiple transistors for each memory cell and it
does not have a capacitor in each cell.
• SRAM is not required to be refreshed which makes it significantly fast.
ROM
Types of ROM
• The very first ROMs were hard-wired devices that contained a pre-programmed set of
data or instructions.
• These kind of ROMs are known as masked ROMs, which are inexpensive.
Advantages of ROM
• Non-volatile in nature
• Cannot be accidentally changed
• Cheaper than RAMs
• Easy to test
• More reliable than RAMs
• Static and do not require refreshing
• Contents are always known and can be verified
Use Used to store the data that has It stores the instructions required
to be currently processed by during bootstrap of the computer
CPU temporarily.
Volatility It is a volatile memory. It is a non-volatile memory.
Modification Data in ROM can be modified. Data in ROM can not be modified.
Type Types of RAM are static RAM Types of ROM are PROM,
and dynamic RAM. EPROM, EEPROM.
Secondary memory
• Hard disk drive is made up of a series of circular disks called platters arranged one over
the other almost ½ inches apart around a spindle.
• Disks are made of non-magnetic material like aluminum alloy and coated with 10-20 nm
of magnetic material.
• Standard diameter of these disks is 14 inches and they rotate with speeds varying from
4200 rpm (rotations per minute) for personal computers to 15000 rpm for servers.
• Data is stored by magnetizing or demagnetizing the magnetic coating.
• A magnetic reader arm is used to read data from and write data to the disks. A typical
modern HDD has capacity in terabytes (TB).
CD Drive
• CD stands for Compact Disk. CDs are circular disks that use optical rays, usually lasers,
to read and write data.
• They are very cheap as you can get 700 MB of storage space for less than a dollar.
• CDs are inserted in CD drives built into CPU cabinet.
• They are portable as you can eject the drive, remove the CD and carry it with you.
• There are three types of CDs
DVD Drive
• DVDs also come in three varieties – read only, recordable and rewritable.
Pen Drive
• Pen drive is a portable memory device that uses solid state memory rather than
magnetic fields or lasers to record data.
• It uses a technology similar to RAM, except that it is non-volatile. It is also called USB
drive, key drive or flash memory.
Floppy Disk
Classification of Computers
Analog Computers
Digital Computers
• A computer that performs calculations and logical operations with quantities represented
as digits.
• Digits include binary number system of “0” and “1”.
• Computer capable of solving problems by processing information expressed in discrete
form.
• From manipulation of the combinations of the binary digits.
• Digital computers perform mathematical calculations, organize and analyse data, control
industrial and other processes, and simulate dynamic systems such as global weather
patterns.
Hybrid Computers
• Hybrid computers are computers that exhibit features of analog computers and digital
computers.
• The digital component normally serves as the controller and provides logical and
numerical operations, while the analog component often serves as a solver of differential
equations and other mathematically complex equations.
• A hybrid computer system for use in cardiology.
• Although the digital computer has traditionally been used to perform these tasks, a
hybrid computer (combined analog and digital) has been found to provide many
advantages over the digital computer, especially where on-line data processing is
concerned.
• The digital computers that are available now days vary in their sizes and types.
• These digital computers are broadly classified into four categories based on their size
and type.
• Micro Computer
• Mini Computer
• Mainframe Computer
• Super Computer
Micro Computer
• Micro Computer are small low cast and single user digital computers.
• It is a device with microprocessor, Input unit, storage unit and CPU(Central Processing
Unit).
• Microcomputer Computer formerly a commonly used term for Personal Computers
particularly any of class of any small digital computers. Its CPU contained on a single
integrated semiconductor chip.
• IBM PC based on Pentium microprocessor and Apple Macintosh are some Examples of
microcomputers. Microcomputers include desktop computers, notebook computers or
laptop, tablet compute, handheld computer, smartphones and notebook.
• A laptop is a small, portable computer and has all the features of a desktop
computer.
• The advantage of the laptop is that it is small in size, so it can be carried anywhere.
Notebook computers use a variety of techniques, known as flat-panel technologies,
to produce a lightweight and non-bulky display screen. Laptops Computers are
costlier than the desktop computers.
• Tablet
• Smart Phones
Mainframe Computers
• Mainframes are computers used by organizations like banks, airlines and railways to
handle millions and trillions of online transactions per second.
• Important features of mainframes are
• Big in size
• Hundreds times Faster than servers, typically hundred megabytes per second
• Very expensive
• Use proprietary OS provided by the manufacturers
• In-built hardware, software and firmware security features
Supercomputer
• Supercomputers are the fastest computers on Earth. They are used for carrying out
complex, fast and time intensive calculations for scientific and engineering
applications.
• Supercomputer speed or performance is measured in teraflops, i.e. 1012 floating
point operations per second.
• Chinese supercomputer Sunway TaihuLight is the world’s fastest supercomputer with
a rating of 93 petaflops per second, i.e. 93 quadrillion floating point operations per
second.
• Most common uses of supercomputers include −
• Molecular mapping and research
• Weather forecasting
• Environmental research
• Oil and gas exploration
Mini computer
Personal computer
Palm Computer
• A palmtop computer is a personal computer or other electronic device that has many of
the same features as a computer and fits in the palm of your hand.
• A good example of an early palmtop computer is the PalmPilot.
• Because of their size, early palmtop computers did not have a keyboard or a mouse and
often relied on a pen that used Graffiti or something similar.
• The term "palmtop computer" was an early term used when computers were big and
cumbersome and small cell phones and even smartphones were not yet invented.
Today, this term is rarely used to describe a computer that fits in your hand because of
the invention of the smartphone.
Computer Languages
Instruction
Program
Programming language
Conclusion:
• Programming languages are the languages which are used to communicate with
computers by the programmers.
• Even computers use programming languages to communicate each other
Machine Language
• Machine level language instructions are in binary form, which can be directly understood
by the computer (CPU) without translating them, is called a machine language or
machine code.
• Machine language is also known as first generation of programming language.
• Machine language is the fundamental language of the computer and the program
instructions in this language are in the binary form (that is 0's and 1's).
• This language is different for different computers.
• It is not easy to learn the machine language.
Note:
No language translators required, since machine level language directly understood by
machine that is computers
• The only advantage of machine language is that the program of machine language runs
very fast because no translation program is required for the CPU.
• Machine Dependent
• The internal design of every computer is different from every other type of computer,
machine language also differs from one computer to another.
• Hence, after becoming proficient in the machine language of one type of computer, if
a company decides to change to another type, then its programmer will have to learn
a new machine language and would have to rewrite all existing program.
• Difficult to Modify
• It is difficult to correct or modify this language. Checking machine instructions to
locate errors is very difficult and time consuming.
• Difficult to Program
• A computer executes machine language program directly and efficiently, it is difficult
to program in machine language.
• A machine language programming must be knowledgeable about the hardware
structure of the computer.
Note:
• Language translators are required, since assembly level language not directly
understood by machine that is computers
• Assembler is the translator which used to convert assembly code into machine code.
• Machine dependent
• Each instructions of assembly language program is translated into exactly one
machine language instruction, an assembly language programs are dependent on
machine language.
• Knowledge of hardware required
• Assembly languages are machine dependent, an assembly language programmer
must have a good knowledge of characteristics and logical structure of his/her
computer to write a good assembly language computer code.
• Machine level coding
• Assembly language instruction is substituted for one machine language instruction.
Hence like machine language programs, write assembly language program is also
time consuming and difficult.
• The programming languages that are close to human languages (example like English
languages) are called the high-level languages.
• Fortran
• COBOL
• Basic
• Pascal
• C
• C++
• Java
• C#
• PHP
• Ruby
• Python
• Kotlin
• The high level languages are similar to English language. The program instructions are
written using English words, for example print, input etc.
• But each high level language has its own rule and grammar for writing program
instructions. These rules are called syntax of the language.
44 Teja H, Asst.Prof. Dept Of BCA GMU
Fundamentals of Computers
• The program written in high level language must be translated to machine code before to
run it. Each high level language has its own translator program.
Note:
• Language translators are required, since high level language not directly understood by
machine that is computers
• Complier and Interpreters are the translator which used to convert assembly code into
machine code.
• Easy to learn
• The high level languages are very easy to learn than low level languages. The
statements written for the program are similar to English-like statements.
• Easy to understand
• The program written in high level language by one programmer can easily be
understood by another because the program instructions are similar to the English
language.
• Easy to write program
• In high level language, a new program can easily be written in a very short time. The
larger and complicated software can be developed in few days or months.
• Easy to detect and remove errors
• The errors in a program can be easily detected and removed. mostly the errors are
occurred during the compilation of new program.
• Built-in library functions
• Each high level language provides a large number of built-in functions or procedures
that can be used to perform specific task during designing of new programs. In this
way, a large amount of time of programmer is saved.
• Machine Independence
• Program written in high level language is machine independent. It means that a
program written in one type of computer can be executed on another type of
computer.
• Low efficiency
• A program written in high level languages has lower efficiency than one written in a
machine/assembly language to do the same job. That is, program written in high
level languages result in multiple machine language instruction that may not be
optimize, taking more time to execute and requiring more memory space.
• Less flexibility
• High level languages are less flexible than assembly languages because they do not
normally have instructions or mechanism to control a computer's CPU, memory and
register.
Translators
Purpose of Translator
It translates high-level language program into a machine language program that the central
processing unit (CPU) can understand. It also detects errors in the program.
• Compiler
• A compiler is a translator used to convert high-level programming language to low-
level programming language. It converts the whole program in one session and
reports errors detected after the conversion. Compiler takes time to do its work as it
translates high-level code to lower-level code all at once and then saves it to
memory.
• A compiler is processor-dependent and platform-dependent. But it has been
addressed by a special compiler, a cross-compiler and a source-to-source compiler.
Before choosing a compiler, user has to identify first the Instruction Set Architecture
(ISA), the operating system (OS) and the programming language that will be used to
ensure that it will be compatible.
Ex:
Microsoft Visual Studio
GNU Compiler Collection (GCC)
Common Business Oriented Language (COBOL)
Ex:
OCaml
List Processing (LISP)
Python
• Assembler
Algorithm
• Before writing an algorithm for a problem, one should find out what is/are the inputs to
the algorithm and what is/are expected output after running the algorithm.
• Now let us take some exercises to develop an algorithm for some simple problems:
While writing algorithms we will use following symbol for different operations
Example of Algorithm
Algorithm:
Step1: Read\input the Radius r of the Circle
Step2: Area PI*r*r // calculation of area
Step3: Print Area
Problem2: Write an algorithm to read two numbers and find their sum.
Algorithm:
Step1: Start
Step2: Read\input the first num1.
Step3: Read\input the second num2.
Step4: Sum num1+num2 // calculation of sum
Step5: Print Sum
Step6: End
Algorithm:
Step1: Start
Step 2: Read Temperature in Fahrenheit F
Step 3: C 5/9*(F32)
Step 4: Print Temperature in Celsius: C
Step5: End
Properties of Algorithm
Donald Ervin Knuth has given a list of five properties for algorithm, these properties are
• Finiteness
• An algorithm must always terminate after a finite number of steps.
• It means after every step one reach closer to solution of the problem and after a finite
number of steps algorithm reaches to an end point.
• Definiteness
• Each step of an algorithm must be precisely defined.
• It is done by well thought actions to be performed at each step of the algorithm.
• Also the actions are defined unambiguously for each activity in the algorithm.
• Input
• Any operation you perform need some beginning value/quantities associated with
different activities in the operation.
• So the value/quantities are given to the algorithm before it begins.
• Output
• One always expects output/result (expected value/quantities) in terms of outputfrom
an algorithm.
• The result may be obtained at different stages of the algorithm. If some result is from
the intermediate stage of the operation then it is known as intermediate result and
result obtained at the end of algorithm is known as end result.
• The output is expected value/quantities always have a specified relation to the inputs
• Effectiveness
• Algorithms to be developed/written using basic operations.
• Actually operations should be basic, so that even they can in principle be done
exactly and in a finite amount of time by a person, by using paper and pencil only.
Flowchart
• The flowchart is a diagram which visually presents the flow of data through processing
systems.
• This means by seeing a flow chart one can know the operations performed and the
sequence of these operations in a system.
• Algorithms are nothing but sequence of steps for solving problems.
• So a flow chart can be used for representing an algorithm.
• A flowchart, will describe the operations (and in what sequence) are required to solve a
given problem.
• We can see a flow chart as a blueprint of a design you have made for solving a problem.
• For example suppose you are going for a picnic with your friends then you plan for the
activities you will do there.
• If you have a plan of activities then you know clearly when you will do what activity.
• Similarly when you have a problem to solve using computer or in other word you need to
write a computer program for a problem then it will be good to draw a flowchart prior to
writing a computer program. Flowchart is drawn according to defined rules.
Flowchart Symbols
• Terminal
• Process
• Input / Output
• Decision
• Connector
• Predefined Process
1. All boxes of the flowchart are connected with Arrows. (Not lines)
2. Flowchart symbols have an entry point on the top of the symbol with no other entry
points. The exit point for all flowchart symbols is on the bottom except for the Decision
symbol.
3. The Decision symbol has two exit points; these can be on the sides or the bottom and
one side.
4. Generally a flowchart will flow from top to bottom. However, an upward flow can be
shown as long as it does not exceed 3 symbols.
5. Connectors are used to connect breaks in the flowchart. Examples are: • From one page
to another page. From the bottom of the page to the top of the same page. • An upward
flow of more than 3 symbols
6. Subroutines and Interrupt programs have their own and independent flowcharts.
7. All flow charts start with a Terminal or Predefined Process (for interrupt programs or
subroutines) symbol.
8. All flowcharts end with a terminal or a contentious loop. Flowcharting uses symbols that
have been in use for a number of years to represent the type of operations and/or
processes being performed. The standardised format provides a common method for
people to visualise problems together in the same manner. The use of standardised
symbols makes the flow charts easier to interpret; however, standardizing symbols is not
as important as the sequence of activities that make up the process.
Examples of Flowcharts
Problem3: Flowchart for an algorithm which gets two numbers and prints sum of their value
Problem4: Algorithm for find the greater number between two numbers.
Problem5: Flowchart for the problem of printing even numbers between 9 and 100
Operating System
• An operating system is a program that acts as an interface between the software and the
computer hardware.
• It is an integrated set of specialized programs used to manage overall resources and
operations of the computer.
• It is specialized software that controls andmonitors the execution of all other programs
that reside in the computer, including application programs and other system software.
Here is a list of some of the most prominent characteristic features of Operating Systems
• Memory Management
Keeps track of the primary memory, i.e. what part of it is in use by whom, what part is not
in use, etc. and allocates the memory when a process or program requests it.
• Processor Management
Allocates the processor (CPU) to a process and deallocates the processor when it is no
longer required.
• Device Management
Keeps track of all the devices.
This is also called I/O controller that decides which process gets the device, when, and
for how much time.
• File Management
Allocates and de-allocates the resources and decides who gets the resources.
• Security
Prevents unauthorized access to programs and data by means of passwords and other
similar techniques.
• Job Accounting
Keeps track of time and resources used by various jobs and/or users.
• Error-detecting Aids
Production of dumps, traces, error messages, and other debugging and error-detecting
methods.
The user of a batch operating system never directly interacts with the computer. In this
type of OS, every user prepares his or her job on an offline device like a punch card and
submit it to the computer operator.
• Real time OS
A real time operating system time interval to process and respond to inputs is very small.
Examples: Military Software Systems, Space Software Systems are the Real time OS
example.
• Mobile OS
Mobile operating systems are those OS which is especially that are 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.
Software
Software Characteristics
• Functionality
• Refers to the degree of performance of the software against its intended purpose.
• Reliability
• Refers to the ability of the software to provide desired functionality under the given
conditions.
• Usability
• Refers to the extent to which the software can be used with ease.
• Efficiency
• Refers to the ability of the software to use system resources in the most effective
and efficient manner.
• Maintainability
• Refers to the ease with which the modifications can be made in a software system to
extend its functionality, improve its performance, or correct errors.
• Portability
• Refers to the ease with which software developers can transfer software from one
platform to another, without (or with minimum) changes.
• In simple terms, it refers to the ability of software to function properly on different
hardware and software platforms without making any changes in it.
Classifications of Software
• Systems software includes the programs that are dedicated to managing the computer
itself, such as the operating system, file management utilities, and disk operating system
(or DOS), translators like assemblers, complier and interpreters.
• System software is software that provides platform to other software’s.
• Some examples can be operating systems, antivirus software’s, disk formatting
software’s, Computer language translators etc.
• These are commonly prepared by the computer manufacturers.
• This software’s consists of programs written in low-level languages, used to interact with
the hardware at a very basic level. System software serves as the interface between the
hardware and the end users.
Application Software
• An application is any program, or group of programs, that is designed for the end user.
• Application software is a term which is used for software created for a specific purpose.
• It is generally a program or collection of programs used by end users.
• It can be called an application or simply an app.
• Various examples of application software are as fallows
• Word processing software(MS WORD,ATOM)
• Database programs(MSSQL,MYSQL,COUCH BASE,MANGO DB)
• Entertainment software(TICK TALK,YOU TUBE)
• Business software(TALLY,SARAL TAX OFFICE)
• Educational software(BYJUS,GLOBAL SHIKSHA)
• Computer-aided design(CAD) software
• Spread sheet software(MS EXCEL)
• UNIX is an operating system which was first developed in the 1960s, and has been
under constant development ever since.
• By operating system, we mean the suite of programs which make the computer work. It
is a stable, multi-user, multi-tasking system for servers, desktops and laptops.
• UNIX systems alsohave a graphical user interface (GUI) similar to Microsoft Windows
which provides an easy to use environment.
• However, knowledge of UNIX is required for operations which aren't covered by a
graphical program, or for when there is no windows interface available, for example, in a
telnet session.
Types of UNIX
• The Linux PenguinThere are many different versions of UNIX, although they share
common similarities.
• The most popular varieties of UNIX are Sun Solaris, GNU/Linux, and MacOS X. Linux in
its turn is packaged in a form known as a Linux distribution. There are several Linux
distributions, both free and commercial.
• ISU has a campus site subscription to Red Hat Enterprise Linux (RHEL), providing
access for university-owned equipment as well as personal access to students, faculty,
and staff. All our clusters are running RHEL.
BASIC UNIX / LUNIX COMMANDS
cal
• cal command is a calendar command in Linux which is used to see the calendar of a
specific month or a whole year.
• cal : Shows current month calendar on the terminal with the current date highlighted.
• cal -y : Shows the calendar of the complete current year with the current date
highlighted.
Syntax:
cal [ [ month ] year]
date
Syntax:
• date [OPTION]... [+FORMAT]
• date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
bc
Syntax:
bc [ -hlwsqv ] [long-options] [ file ... ]
echo
• echo command in linux is used to display line of text/string that are passed as an
argument .
• This is a built in command that is mostly used in shell scripts and batch files to output
• status text to the screen or a file.
Syntax:
echo [option] [string]
Displaying a text/string :
Syntax :
• echo [string]
who
• The who command is used to get information about currently logged in user on to
system.
Syntax:
$who [options] [filename]
ls
• ls is a Linux shell command that lists directory contents of files and directories.
Syntax:
ls [options] [paths]
pwd
• pwd stands for Print Working Directory. It prints the path of the working directory, starting
from the root.
Synatx:
pwd [-options]
cd
Syntax:
$ cd [directory]
To move inside a subdirectory : to move inside a subdirectory in linux we use
$ cd [directory_name]
Mkdir
• The mkdir stands for 'make directory'. With the help of mkdir command, you can create
• a new directory wherever you want in your system.
Syntax:
mkdir [options...] [directories ...]
rmdir
• rmdir command is used remove empty directories from the filesystem in Linux.
Syntax:
rmdir [options...] [directories ...]
• Cat
Cat(concatenate) command is very frequently used in Linux. It reads data from the file and
gives their content as output. It helps us to create, view, concatenate files.
Syntax:
$cat filename
• cp
cp stands for copy. This command is used to copy files or group of files or directory. It
creates an exact image of a file on a disk with different file name. cp command require at
least two filenames in its arguments.
Syntax:
cp [OPTION] Source Destination
cp [OPTION] Source Directory
cp [OPTION] Source-1 Source-2 Source-3 Source-n Directory
rm
Syntax:
rm [OPTION]... FILE...
mv
• The mv command is one of the basic Linux commands that is used to move files and
directories from one location to another. It is also used to rename files and directories.
Syntax:
mv [Option] source destination
file
• The file command is used to determine the type of file i.e. ASCII or MIME type. It doesn’t
care about the extension used for the file.
• The command simply is used to identify the file type. There are various other options
used with the file command.
Syntax:
wc
• Linux wc command helps in counting the lines, words, and characters in a file. It displays
the number of lines, number of characters, and the number of words in a file.
Syntax:
wc [OPTION]... [FILE]...
head
• The head command, as the name implies, print the top N number of data of the given
input.
• By default, it prints the first 10 lines of the specified files. If more than one file name is
provided then data from each file is preceded by its file name.
Syntax:
head [OPTION]... [FILE]...
tail
• It is the complementary of head command.The tail command, as the name implies, print
the last N number of data of the given input.
• By default it prints the last 10 lines of the specified files. If more than one file name is
provided then data from each file is precedes by its file name.
Syntax:
tail [OPTION]... [FILE]...
Database
Collection of data is called database, where as DBMS is a system that manages the data in
efficient and convenient way.
Definition 1:
Definition 2:
Database is a collection of related data and data is a collection of facts and figures that can
be processed to produce information. Mostly data represents recordable facts. Data aids in
producing information, which is based on facts.
Ex:
If we have data about marks obtained by all students, we can then conclude about toppers
and average marks.
If we have data about blood donors with their blood group, we can then find donors at right
time.
Conclusion:
The primary goal of a DBMS is to provide a way to store and retrieve database information
that is both convenient and efficient.
Database-System Applications:
• Enterprise Information
• Sales: For customer, product, and purchase information.
• Accounting: For payments, receipts, account balances, assets and other
accounting information.
• Human resources: For information about employees, salaries, payroll taxes, and
benefits, and for generation of pay checks.
• Manufacturing: For management of the supply chain and for tracking production
of items in factories, inventories of items in warehouses and stores, and orders
for items.
• Online retailers: For sales data noted above plus online order tracking,
generation of recommendation lists, and maintenance of online product
evaluations.
•
• Banking and Finance
• Banking: For customer information, accounts, loans, and banking transactions.
• Credit card transactions: For purchases on credit cards and generation of
monthly statements.
• Finance: For storing information about holdings, sales, and purchases of financial
instruments such as stocks and bonds; also for storing real-time market data to
enable online trading by customers and automated trading by the firm.
• Universities: For student information, course registrations, and grades (in addition to
standard enterprise information such as human resources and accounting).
• Airlines: For reservations and schedule information. Airlines were among the first to use
databases in a geographically distributed manner.
File System
• Data are scattered in various files, and files may be in different formats, writing new
application programs to retrieve the appropriate data is difficult.
• There is need to maintain conditions while storing data, In file system maintaining
such conditions results in problem, due to scattered data among different files.
• Atomicity problems.
• A computer system, like any other device, is subject to failure. In many applications,
it is crucial that, if a failure occurs, the data be restored to the consistent state that
existed prior to the failure.
• Security problems.
• Security is the important for the vital data, since unauthorized accessing of data
results in leakage of information.
• DBMS loaded with good security mechanism with authorization and authentication.
View of Data:
A major purpose of a database system is to provide users with an abstract view of the data.
That is, the system hides certain details of how the data are stored and maintained.
Note: Abstraction is hiding the complexity of the system from the end user.
• Physical level.
• The lowest level of abstraction describes how the data are actually stored.
• The physical level describes complex low-level data structures in detail.
• Logical level.
• The next-higher level of abstraction describes what data are stored in the database,
and what relationships exist among those data.
• The logical level thus describes the entire database in terms of a small number of
relatively simple structures.
• The user of the logical level does not need to be aware of this complexity physical-
level structures, this is referred as physical data independence.
• View level.
• This is the highest level of abstraction describes only part of the entire database.
• The view level of abstraction exists to simplify their interaction with the system. The
system may provide many views for the same database.
• The physical schema describes the database design at the physical level.
• The logical schema describes the database design at the logical level.
• A database may also have several schemas at the view level, sometimes called
subschema’s, that describe different views of the database.
Database languages
• Database languages, also known as query languages or data query languages, are a
classification of programming languages that developers use to define and access
databases, which are collections of organized data that users can access electronically.
• Database languages allow users to complete tasks such as controlling access to data,
defining, and updating data and searching for information within the database
management system (DBMS).
• A DBMS is a piece of technology that interacts with users, applications and the database
to record and analyse data while also manipulating the database to offer a way to store,
access and retrieve data.
• A DBMS provides necessary database languages that allow users to express database
updates and queries, which are requests for data.
• There are different examples of database languages available, including SQL, which is
the standard programming language for many databases.
• Database languages comprise four sublanguages that serve different functions to
execute tasks.
Database languages are classified into four types, they are discussed in below section
• Data definition language (DDL) creates the framework of the database by specifying
the database schema, which is the structure that represents the organization of data.
Its common uses include the creation and alteration of tables, files, indexes and
columns within the database.
• This language also allows users to rename or drop the existing database or its
components.
• Below list consists of DDL statements
• Data manipulation language (DML) provides operations that handle user requests,
offering a way to access and manipulate the data that users store within a database.
Its common functions include inserting, updating and retrieving data from the
database.
• Here's a list of DML statements
• INSERT: Adds new data to the existing database table
• UPDATE: Changes or updates values in the table
• DELETE: Removes records or rows from the table
• SELECT: Retrieves data from the table or multiple tables
• Data control language (DCL) controls access to the data that users store within a
database. Essentially, this language controls the rights and permissions of the
database system.
• It allows users to grant or revoke privileges to the database.
• Below list consists of DCL statements
• GRANT: Gives a user access to the database
• REVOKE: Removes a user's access to the database
Internet Basics
Introduction
• Internet Architecture
Internet is called the network of networks. It is a global communication system that links
together thousands of individual networks. Internet architecture is a meta-network, which
refers to a congregation of thousands of distinct networks interacting with a common
protocol
• Services on Internet
Internet acts as a carrier for numerous diverse services, each with its own distinctive
features and purposes.
• Communication on Internet
Communication can happens through the the Internet by using Email, Internet Relay
Chat, Video Conference etc.
• Search Engines
Search Engine is an application that allows you to search for content on the web. It
displays multiple web pages based on the content or a word you have typed.
Features of Internet
• Accessibility
An Internet is a global service and accessible to all. Today, people located in a remote
part of an island or interior of Africa can also use Internet.
• Easy to Use
The software, which is used to access the Internet (web browser), is designed very
simple; therefore, it can be easily learned and used. It is easy to develop.
• Low Cost
The development and maintenance cost of Internet service are comparatively low.
• Flexibility of Communication
Communication through Internet is flexible enough. It facilitates communication through
text, voice, and video too. These services can be availed at both organizational and
individual levels.
• Security
Internet facility has to a certain extent helped the security system both at the individual
and national level with components such as CCTV camera, etc.
Internet Applications
Though other latest collaboration tools provide many rich features, they are not able to
de-popularize Email, and it still rules official and personal communication. There are
many free Email websites offering mail services, and practically every individual has an
Email address and connected by Email. Email concepts paved the way for developing
many innovative tools for improved collaboration.
• Search Engines
These engines locate the information one seeks, available in whichever server across
the globe (world wide web). Google, Yahoo, and MSN are the renowned search engines
in use today. One can search on anything on this site, and the search question can be in
any format. In fact, People have started using the word Google as a generic verb
synonymous to search.
• E-Commerce
The Internet enables the selling of goods and services in online mode. There are many
e-commerce platform vendors like Amazon, Ola who aggregate several
products/services available in the market and sell them through their portal to customers.
Products are procured by platform vendors, stored in their warehouses, packed and
distributed by them in their own brand. Customers get a good discount, and they don’t
have to visit physical stores.
• Online Banking
Called as Net banking, it allows doing banking transactions at ease sitting at home or
while on mobile. Footfalls in the bank branches have come down appreciably with almost
all the services are available in net banking 24×7. Any amount of money can be
transferred instantaneously through this facility. E-Banking supports Electricity bills,
Telephone bills, and other services payment.
• Cashless Transactions
Bill Payment at merchandise outlets through debit cards, credit cards, UPI gateway are
on the increase. Cash circulation gets reduced in the system to the extent of the growth
of these transactions. It’s growing by more than 50% every year, and it is expected to
grow by 10 times over the next 5 years.
• Education
The Internet offers a wealth of educational material on any subject with structured
navigation and search facilities. One can seek any reading material, and the internet will
get it for them from any server in any part of the world, and people need not have to go
to libraries to go through books. Those who cannot attend physical (face to face) class
can take an online course where they get connected to the teacher, in the other part of
the world, in video mode and get taught on the subject backed up other audiovisual
tools
• Collaboration
Online chat tools like messenger, Skype, and other video conferencing tools help people
to get connected 24 x7 and have a hassle-free business and personal discussion. This
avoids unwanted travel by people and saves their time for productive use. The Internet
has also facilitated work from home with seamless connectivity to the office and avoid
daily commuting.
• Social Networking
Internet connects people online and enables them to form social groups. Information,
Ideas, views, and opinions on any social/political issues are exchanged. The political and
social organization makes use of this platform in promoting their interest among the
public.
• Applications of Internet
With the evolution of IOT, Artificial Intelligence technologies, supported by computing
resources in the cloud, more and more new applications are being developed over the
internet layer, and a few of them are:
Internet Services allows us to access huge amount of information such as text, graphics,
sound and software over the internet. Following diagram shows the four different categories
of Internet Services.
• Communication Services
• There exist several Information retrieval services offering easy access toinformation
present on the internet.
• The following table gives a brief introduction to these services
• Web Services
• Web services allow exchange of information between applications on the web. Using
web services, applications can easily interact with each other.
• The web services are offered using concept of Utility Computing.
• In computer networking IP address called a “logical” address, and the MAC address is
called a “physical” address.
• An IP address is also known as a logical address and it can change over time as well as
from one network to another. The Internet Service Provider will be in charge of assigning
it. When a device connects to a different network, it receives a different IP address as a
result of a change in Internet Service Provider.
• With the help of Dynamic Host Configuration Protocol (DHCP), even in the same
network, when a device wants to connect to the internet, it will acquire different
addresses from the pool. There is no assurance that the device always has the same IP
address. The IP address is not directly linked to any devices. As a result, it is referred to
as a logical address.
Physical Address (MAC Address)
• MAC address provided by the hardware interface vendor. It never changes when a
device is attached to any network. As a result, it is referred to as a physical address.
• IP address is, for example, like school register no, university register no and corporate
employee id. When a person transfers from school to college and then to the workplace,
he or she is assigned a new Identification Number, which is used to uniquely identify the
individual inside that organization. At different periods, the same individual was
recognized with a different identification number. Similarly, when one machine connects
to a different network, it receives a new IP address each time. Thus it is called a logical
address.
• However, that address is unique inside that network. But MAC address is like an Aadhar
number, it never changes to any business. It’s like an original identity.
• In the same way, the MAC address will be the same for the device’s (NIC), for any
network on which the device is associated. Thus it is called a physical address. A MAC
address is also a unique address. There won’t be the same address for two devices.
Conclusion
The Logical/IP Address identifies a device in a network. But to reach and deliver data to the
device, we need a MAC/Physical address.
• An ISP (Internet service provider) is a company that provides individuals and other
companies access to the Internet and other related services such as Web site building
The Domain Name System (DNS) is the Internet's system for mapping alphabetic names to
numeric Internet Protocol (IP) addresses like a phone book maps a person's name to a
phone number.
Ex: when a Web address (URL) is typed into a browser, a DNS query is made to learn an IP
address of a Web server associated with that name.
Using the www.example.com URL, example.com is the domain name, and www is the
hostname. DNS resolution maps www.example.com into an IP address (such as 192.0.2.1).
When a user needs to load a webpage, a conversion must occur between what a user types
into their web browser (www.example.com) into an IP address required to locate the
www.example.com site.
Below figure shows how fully qualified domain names requested by a browser are translated
into IPs before they are routed to the appropriate Web server.
Web Basics
Introduction to web
• The World Wide Web (WWW), commonly known as the Web, is an information system
where documents and other web resources are identified by Uniform Resource Locators
which may be interlinked by hyperlinks, and are accessible over the Internet.
• The resources of the Web are transferred via the Hypertext Transfer Protocol (HTTP),
may be accessed by users by a software application called a web browser, and are
published by a software application called a web server.
• The World Wide Web is not synonymous with the Internet, which pre-dated the Web in
some form by over two decades and upon the technologies of which the Web is built.
Note:
English scientist Tim Berners-Lee invented the World Wide Web in 1989.
• The Internet and the Web are not the same thing.
• The Internet is a collection of computers and other devices connected by equipment that
allows them to communicate with each other.
• The Web is a collection of software and protocols that has been installed on most, if not
all, of the computers on the Internet.
• Some of these computers run Web servers, which provide documents, but most run Web
clients, or browsers, which request documents from servers and display them to users.
• The Internet was quite useful before the Web was developed, and it is still useful without
it. Most users of the Internet now use it through the Web.
Web Browser
• The most popular web browsers are Chrome, Edge (preceded by Internet
Explorer),Safari, Opera and Firefox.
• The first web browser was invented in 1990 by Sir Tim Berners-Lee.
• Berners-Lee is the director of the World Wide Web Consortium (W3C), which oversees
the Web's continued development, and is also the founder of the World Wide Web
Foundation and his browser was called Worldwide Web and later renamed Nexus.
Web Servers
Introduction to Protocol
• A Protocol is a set of rules and conventions for communication. In the current scenario,
when we are talking about protocols, it is about communication- the way we talk to each
other. For instance, a newsreader speaks in English and because you understand
English, you are able to understand. English is the protocol.
• In web, in particular, multiple protocols are used to communicate. Primarily for endusers,
the most important and visible protocols are HTTP and HTTPS. Though there are many
other protocols as well, HTTP and HTTPS protocols cater to most of the population.
• HTTP URL in your browser's address bar is http:// and the HTTPS URL is https://.
• HTTP is unsecured while HTTPS is secured.
• HTTP sends data over port 80 while HTTPS uses port 443.
• HTTP operates at application layer, while HTTPS operates at transport layer.
• No SSL certificates are required for HTTP, with HTTPS it is required that you have an
SSL certificate and it is signed by a CA.
• HTTP doesn't require domain validation, where as HTTPS requires at least domain
validation and certain certificates even require legal document validation.
• No encryption in HTTP, with HTTPS the data is encrypted before sending.
URL (Uniform Resource Locator)
• A URL (Uniform Resource Locator) is a unique identifier used to locate a resource on the
Internet. It is also referred to as a web address.
• URLs consist of multiple parts -- including a protocol and domain name -- that tell a web
browser how and where to retrieve a resource.
• End users use URLs by typing them directly into the address bar of a browser or by
clicking a hyperlink found on a webpage, bookmark list, in an email or from another
application.
• The URL contains the name of the protocol needed to access a resource, as well as a
resource name. The first part of a URL identifies what protocol to use as the primary
access medium. The second part identifies the IP address or domain name -- and
possibly subdomain -- where the resource is located.