0% found this document useful (0 votes)
181 views

Basics of Computers - Quick Guide - Tutorialspoint

This document provides an overview of basics of computers. It defines a computer as an electronic device that receives input, processes it based on instructions, and provides output. The basic parts of a computer are the input unit, output unit, control unit, arithmetic logic unit, and memory. Computers are classified based on their size and use, including desktops, laptops, tablets, servers, mainframes, and supercomputers. The document discusses the characteristics and advantages of computers, as well as the processes of booting and rebooting a computer.

Uploaded by

James Mukhwana
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
181 views

Basics of Computers - Quick Guide - Tutorialspoint

This document provides an overview of basics of computers. It defines a computer as an electronic device that receives input, processes it based on instructions, and provides output. The basic parts of a computer are the input unit, output unit, control unit, arithmetic logic unit, and memory. Computers are classified based on their size and use, including desktops, laptops, tablets, servers, mainframes, and supercomputers. The document discusses the characteristics and advantages of computers, as well as the processes of booting and rebooting a computer.

Uploaded by

James Mukhwana
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 50

Basics of Computers - Quick Guide

Basics of Computers - 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.
The literal meaning of computer is a device that can calculate. However, modern computers can do
a lot more than calculate. 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.

The processes that can be applied to data are of two types −


Arithmetic operations − Examples include calculations like addition, subtraction,
differentials, square root, etc.
Logical operations − Examples include comparison operations like greater than, less than,
equal to, opposite, etc.
The corresponding figure for an actual computer looks something like this −
The basic parts of a computer are as follows −
Input Unit − Devices like keyboard and mouse that are used to input data and instructions
to the computer are called input unit.
Output Unit − Devices like printer and visual display unit that are used to provide
information to the user in desired format are called output unit.
Control Unit − As the name suggests, this unit controls all the functions of the computer.
All devices or parts of computer interact through the control unit.
Arithmetic Logic Unit − This is the brain of the computer where all arithmetic operations
and logical operations take place.
Memory − All input data, instructions and data interim to the processes are stored in the
memory. Memory is of two types – primary memory and secondary memory. Primary
memory resides within the CPU whereas secondary memory is external to it.
Control unit, arithmetic logic unit and memory are together called the central processing unit or
CPU. Computer devices like keyboard, mouse, printer, etc. that we can see and touch are the
hardware components of a computer. The set of instructions or programs that make the computer
function using these hardware parts are called software. We cannot see or touch software. Both
hardware and software are necessary for working of a computer.

Characteristics of Computer

To understand why computers are such an important part of our lives, let us look at some of its
characteristics −
Speed − Typically, a computer can carry out 3-4 million instructions per second.
Accuracy − Computers exhibit a very high degree of accuracy. Errors that may occur are
usually due to inaccurate data, wrong instructions or bug in chips – all human errors.
Reliability − Computers can carry out same type of work repeatedly without throwing up
errors due to tiredness or boredom, which are very common among humans.
Versatility − Computers can carry out a wide range of work from data entry and ticket
booking to complex mathematical calculations and continuous astronomical observations.
If you can input the necessary data with correct instructions, computer will do the
processing.
Storage Capacity − Computers can store a very large amount of data at a fraction of cost
of traditional storage of files. Also, data is safe from normal wear and tear associated with
paper.

Advantages of Using Computer

Now that we know the characteristics of computers, we can see the advantages that computers
offer−
Computers can do the same task repetitively with same accuracy.
Computers do not get tired or bored.
Computers can take up routine tasks while releasing human resource for more intelligent
functions.

Disadvantages of Using Computer

Despite so many advantages, computers have some disadvantages of their own −


Computers have no intelligence; they follow the instructions blindly without considering the
outcome.

Regular electric supply is necessary to make computers work, which could prove difficult
everywhere especially in developing nations.

Booting

Starting a computer or a computer-embedded device is called booting. Booting takes place in two
steps −
Switching on power supply
Loading operating system into computer’s main memory
Keeping all applications in a state of readiness in case needed by the user
The first program or set of instructions that run when the computer is switched on is called BIOS or
Basic Input Output System. BIOS is a firmware, i.e. a piece of software permanently programmed
into the hardware.
If a system is already running but needs to be restarted, it is called rebooting. Rebooting may be
required if a software or hardware has been installed or system is unusually slow.
There are two types of booting −
Cold Booting − When the system is started by switching on the power supply it is called
cold booting. The next step in cold booting is loading of BIOS.
Warm Booting − When the system is already running and needs to be restarted or
rebooted, it is called warm booting. Warm booting is faster than cold booting because
BIOS is not reloaded.

Basics of Computers - Classification

Historically computers were classified according to processor types because development in


processor and processing speeds were the developmental benchmarks. Earliest computers used
vacuum tubes for processing, were huge and broke down frequently. However, as vacuum tubes
were replaced by transistors and then chips, their size decreased and processing speeds increased
manifold.

All modern computers and computing devices use microprocessors whose speeds and storage
capacities are skyrocketing day by day. The developmental benchmark for computers is now their
size. Computers are now classified on the basis of their use or size −
Desktop
Laptop
Tablet
Server
Mainframe
Supercomputer
Let us look at all these types of computers in detail.

Desktop

Desktop computers are personal computers (PCs) designed for use by an individual at a fixed
location. IBM was the first computer to introduce and popularize use of desktops. A desktop unit
typically has a CPU (Central Processing Unit), monitor, keyboard and mouse. Introduction of
desktops popularized use of computers among common people as it was compact and affordable.
Riding on the wave of desktop’s popularity many software and hardware devices were developed
specially for the home or office user. The foremost design consideration here was user friendliness.

Laptop

Despite its huge popularity, desktops gave way to a more compact and portable personal computer
called laptop in 2000s. Laptops are also called notebook computers or simply notebooks. Laptops
run using batteries and connect to networks using Wi-Fi (Wireless Fidelity) chips. They also have
chips for energy efficiency so that they can conserve power whenever possible and have a longer
life.
Modern laptops have enough processing power and storage capacity to be used for all office work,
website designing, software development and even audio/video editing.

Tablet

After laptops computers were further miniaturized to develop machines that have processing
power of a desktop but are small enough to be held in one’s palm. Tablets have touch sensitive
screen of typically 5 to 10 inches where one finger is used to touch icons and invoke applications.

Keyboard is also displayed virtually whenever required and used with touch strokes. Applications
that run on tablets are called apps. They use operating systems by Microsoft (Windows 8 and later
versions) or Google (Android). Apple computers have developed their own tablet called iPad which
uses a proprietary OS called iOS.

Server

Servers are computers with high processing speeds that provide one or more services to other
systems on the network. They may or may not have screens attached to them. A group of
computers or digital devices connected together to share resources is called a network.
Servers have high processing powers and can handle multiple requests simultaneously. Most
commonly found servers on networks include −
File or storage server
Game server
Application server
Database server
Mail server
Print server

Mainframe

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

Basics of Computer - Software Concepts


As you know, the hardware devices need user instructions to function. A set of instructions that
achieve a single outcome are called program or procedure. Many programs functioning together to
do a task make a software.
For example, a word-processing software enables the user to create, edit and save documents. A
web browser enables the user to view and share web pages and multimedia files. There are two
categories of software −
System Software
Application Software
Utility Software
Let us discuss them in detail.

System Software

Software required to run the hardware parts of the computer and other application software are
called system software. System software acts as interface between hardware and user
applications. An interface is needed because hardware devices or machines and humans speak in
different languages.
Machines understand only binary language i.e. 0 (absence of electric signal) and 1 (presence of
electric signal) while humans speak in English, French, German, Tamil, Hindi and many other
languages. English is the pre-dominant language of interacting with computers. Software is
required to convert all human instructions into machine understandable instructions. And this is
exactly what system software does.
Based on its function, system software is of four types −
Operating System
Language Processor
Device Drivers

Operating System

System software that is responsible for functioning of all hardware parts and their interoperability
to carry out tasks successfully is called operating system (OS). OS is the first software to be
loaded into computer memory when the computer is switched on and this is called booting. OS
manages a computer’s basic functions like storing data in memory, retrieving files from storage
devices, scheduling tasks based on priority, etc.

Language Processor

As discussed earlier, an important function of system software is to convert all user instructions
into machine understandable language. When we talk of human machine interactions, languages
are of three types −
Machine-level language − This language is nothing but a string of 0s and 1s that the
machines can understand. It is completely machine dependent.
Assembly-level language − This language introduces a layer of abstraction by defining
mnemonics. Mnemonics are English like words or symbols used to denote a long string of
0s and 1s. For example, the word “READ” can be defined to mean that computer has to
retrieve data from the memory. The complete instruction will also tell the memory address.
Assembly level language is machine dependent.
High level language − This language uses English like statements and is completely
independent of machines. Programs written using high level languages are easy to create,
read and understand.
Program written in high level programming languages like Java, C++, etc. is called source code. Set
of instructions in machine readable form is called object code or machine code. System software
that converts source code to object code is called language processor. There are three types of
language interpreters−
Assembler − Converts assembly level program into machine level program.
Interpreter − Converts high level programs into machine level program line by line.
Compiler − Converts high level programs into machine level programs at one go rather
than line by line.

Device Drivers

System software that controls and monitors functioning of a specific device on computer is called
device driver. Each device like printer, scanner, microphone, speaker, etc. that needs to be attached
externally to the system has a specific driver associated with it. When you attach a new device, you
need to install its driver so that the OS knows how it needs to be managed.

Application Software

A software that performs a single task and nothing else is called application software. Application
software are very specialized in their function and approach to solving a problem. So a spreadsheet
software can only do operations with numbers and nothing else. A hospital management software
will manage hospital activities and nothing else. Here are some commonly used application
software −

Word processing
Spreadsheet
Presentation
Database management
Multimedia tools

Utility Software

Application software that assist system software in doing their work is called utility software. Thus
utility software is actually a cross between system software and application software. Examples of
utility software include −
Antivirus software
Disk management tools
File management tools
Compression tools
Backup tools

Basics of Computers - System S/W

As you know, system software acts as an interface for the underlying hardware system. Here we
will discuss some important system software in detail.
Operating System

Operating system (OS) is the lifeline of computer. You connect all the basic devices like CPU,
monitor, keyboard and mouse; plug in the power supply and switch it on thinking you have
everything in place. But the computer will not start or come to life unless it has an operating
system installed in it because OS −
Keeps all hardware parts in a state of readiness to follow user instructions
Co-ordinates between different devices
Schedules multiple tasks as per priority
Allocates resource to each task
Enables computer to access network
Enables users to access and use application software
Besides initial booting, these are some of the functions of an operating system −
Managing computer resources like hardware, software, shared resources, etc.
Allocating resources
Prevent error during software use
Control improper use of computer
One of the earliest operating systems was MS-DOS, developed by Microsoft for IBM PC. It was a
Command Line Interface (CLI) OS that revolutionized the PC market. DOS was difficult to use
because of its interface. The users needed to remember instructions to do their tasks. To make
computers more accessible and user-friendly, Microsoft developed Graphical User Interface (GUI)
based OS called Windows, which transformed the way people used computers.

Assembler

Assembler is a system software that converts assembly level programs to machine level code.

These are the advantages provided by assembly level programming −


Increases efficiency of the programmer as remembering mnemonics is easier
Productivity increases as number of errors decreases and hence debugging time
Programmer has access to hardware resources and hence has flexibility in writing
programs customized to the specific computer

Interpreter

The major advantage of assembly level language was its ability to optimize memory usage and
hardware utilization. However, with technological advancements computers had more memory and
better hardware components. So ease of writing programs became more important than optimizing
memory and other hardware resources.
In addition, a need was felt to take programming out of a handful of trained scientists and
computer programmers, so that computers could be used in more areas. This led to development
of high level languages that were easy to understand due to resemblance of commands to English
language.
The system software used to translate high level language source code into machine level
language object code line by line is called an interpreter. An interpreter takes each line of code and
converts it into machine code and stores it into the object file.

The advantage of using an interpreter is that they are very easy to write and they do not require a
large memory space. However, there is a major disadvantage in using interpreters, i.e., interpreted
programs take a long time in executing. To overcome this disadvantage, especially for large
programs, compilers were developed.

Compiler

System software that store the complete program, scan it, translate the complete program into
object code and then creates an executable code is called a compiler. On the face of it compilers
compare unfavorably with interpreters because they −
are more complex than interpreters
need more memory space
take more time in compiling source code
However, compiled programs execute very fast on computers. The following image shows the step-
by-step process of how a source code is transformed into an executable code −

These are the steps in compiling source code into executable code −
Pre-processing − In this stage pre-processor instructions, typically used by languages like
C and C++ are interpreted, i.e. converted to assembly level language.
Lexical analysis − Here all instructions are converted to lexical units like constants,
variables, arithmetic symbols, etc.
Parsing − Here all instructions are checked to see if they conform to grammar rules of the
language. If there are errors, compiler will ask you to fix them before you can proceed.

Compiling − At this stage the source code is converted into object code.
Linking − If there are any links to external files or libraries, addresses of their executable
will be added to the program. Also, if the code needs to be rearranged for actual execution,
they will be rearranged. The final output is the executable code that is ready to be
executed.

Basics of Computers - Functions of OS

As you know, operating system is responsible for functioning of the computer system. To do that it
carries out these three broad categories of activities −
Essential functions − Ensures optimum and effective utilization of resources

Monitoring functions − Monitors and collects information related to system performance


Service functions − Provides services to users
Let us look at some of the most important functions associated with these activities.

Processor management

Managing a computer’s CPU to ensure its optimum utilization is called processor management.
Managing processor basically involves allocating processor time to the tasks that need to be
completed. This is called job scheduling. Jobs must be scheduled in such a way that −
There is maximum utilization of CPU
Turnaround time, i.e. time required to complete each job, is minimum
Waiting time is minimum
Each job gets the fastest possible response time
Maximum throughput is achieved, where throughput is the average time taken to complete
each task
There are two methods of job scheduling done by operating systems −
Preemptive scheduling
Non-Preemptive scheduling
Preemptive Scheduling

In this type of scheduling, next job to be done by the processor can be scheduled before the current
job completes. If a job of higher priority comes up, the processor can be forced to release the
current job and take up the next job. There are two scheduling techniques that use pre-emptive
scheduling −
Round robin scheduling − A small unit of time called time slice is defined and each
program gets only one time slice at a time. If it is not completed during that time, it must
join the job queue at the end and wait till all programs have got one time slice. The
advantage here is that all programs get equal opportunity. The downside is that if a
program completes execution before the time slice is over, CPU is idle for the rest of the
duration.
Response ratio scheduling − Response ratio is defined as
$$\frac{Elapsed \: Time}{Execution \: time \: received}$$
A job with shorter response time gets higher priority. So a larger program may have to wait
even if it was requested earlier than the shorter program. This improves throughput of the
CPU.

Non-preemptive Scheduling

In this type of scheduling, job scheduling decisions are taken only after the current job completes.
A job is never interrupted to give precedence to higher priority jobs. Scheduling techniques that use
non-preemptive scheduling are −

First come first serve scheduling − This is the simplest technique where the first program
to throw up a request is completed first.
Shortest job next scheduling − Here the job that needs least amount of time for execution
is scheduled next.
Deadline scheduling − The job with the earliest deadline is scheduled for execution next.

Memory Management

Process of regulating computer memory and using optimization techniques to enhance overall
system performance is called memory management. Memory space is very important in modern
computing environment, so memory management is an important role of operating systems.
As you know, computers have two types of memory – primary and secondary. Primary memory is
fast but expensive and secondary memory is cheap but slower. OS has to strike a balance between
the two to ensure that system performance is not hurt due to very less primary memory or system
costs do not shoot up due to too much primary memory.
Input and output data, user instructions and data interim to program execution need to be stored,
accessed and retrieved efficiently for high system performance. Once a program request is
accepted, OS allocates it primary and secondary storage areas as per requirement. Once execution
is completed, the memory space allocated to it is freed. OS uses many storage management
techniques to keep a track of all storage spaces that are allocated or free.

Contiguous Storage Allocation

This is the simplest storage space allocation technique where contiguous memory locations are
assigned to each program. OS has to estimate the amount of memory required for the complete
process before allocation.

Non-contiguous Storage Allocation

As the name suggests, program and associated data need not be stored in contiguous locations.
The program is divided into smaller components and each component is stored in a separate
location. A table keeps a record of where each component of the program is stored. When the
processor needs to access any component, OS provides access using this allocation table.

In a real-life scenario primary memory space might not be sufficient to store the whole program. In
that case, OS takes the help of Virtual Storage technique, where program is physically stored in
secondary memory but appears to be stored in primary memory. This introduces a miniscule time
lag in accessing the program components. There are two approaches to virtual storages −
Program paging − A program is broken down into fixed size page and stored in the
secondary memory. The pages are given logical address or virtual address from 0 to n. A
page table maps the logical addresses to the physical addresses, which is used to retrieve
the pages when required.
Program segmentation − A program is broken down into logical units called segments,
assigned logical address from 0 to n and stored in secondary memory. A segment table is
used to load segments from secondary memory to primary memory.
Operating systems typically use a combination of page and program segmentation to optimize
memory usage. A large program segment may be broken into pages or more than one small
segments may be stored as a single page.

File Management

Data and information is stored on computers in form of files. Managing file system to enable users
to keep their data safely and correctly is an important function of operating systems. Managing file
systems by OS is called file management. File management is required to provide tools for these
file related activities −
Creating new files for storing data
Updating
Sharing
Securing data through passwords and encryption
Recovery in case of system failure

Device Management

The process of implementation, operation and maintenance of a device by operating system is


called device management. Operating system uses a utility software called device driver as
interface to the device.
When many processes access the devices or request access to the devices, the OS manages the
devices in a way that efficiently shares the devices among all processes. Processes access devices
through system call interface, a programming interface provided by the OS.

Basics of Computers - Types of OS

As computers and computing technologies have evolved over the years, so have their usage across
many fields. To meet growing requirements more and more customized software have flooded the
market. As every software needs operating system to function, operating systems have also
evolved over the years to meet growing demand on their techniques and capabilities. Here we
discuss some common types of OS based on their working techniques and some popularly used
OS as well.

GUI OS

GUI is the acronym for Graphical User Interface. An operating system that presents an interface
comprising graphics and icons is called a GUI OS. GUI OS is very easy to navigate and use as users
need not remember commands to be given to accomplish each task. Examples of GUI OS includes
Windows, macOS, Ubuntu, etc.

Time Sharing OS
Operating systems that schedule tasks for efficient processor use are called time sharing OS. Time
sharing, or multitasking, is used by operating systems when multiple users located at different
terminals need processor time to complete their tasks. Many scheduling techniques like round
robin scheduling and shortest job next scheduling are used by time sharing OS.

Real Time OS

An operating system that guarantees to process live events or data and deliver the results within a
stipulated span of time is called a real time OS. It may be single tasking or multitasking.

Distributed OS

An operating system that manages many computers but presents an interface of single computer
to the user is called distributed OS. Such type of OS is required when computational requirements
cannot be met by a single computer and more systems have to be used. User interaction is
restricted to a single system; it’s the OS that distributed work to multiple systems and then
presents the consolidated output as if one computer has worked on the problem at hand.

Popular Operating Systems

Initially computers had no operating systems. Every program needed full hardware specifications to
run correctly as processor, memory and device management had to be done by the programs
themselves. However, as sophisticated hardware and more complex application programs
developed, operating systems became essential. As personal computers became popular among
individuals and small businesses, demand for standard operating system grew. Let us look at some
of the currently popular operating systems −
Windows − Windows is a GUI operating system first developed by Microsoft in 1985. The
latest version of Windows is Windows 10. Windows is used by almost 88% of PCs and
laptops globally.
Linux − Linux is an open source operating system mostly used by mainframes an
supercomputers. Being open source means that its code is available for free and anyone
can develop a new OS based on it.
BOSS − Bharat Operating System Solutions is an Indian distribution of Linux based on
Debian, an OS. It is localized to enable use of local Indian languages. BOSS consists of −
Linux kernel
Office application suite BharteeyaOO
Web browser
Email service Thunderbird
Chat application Pidgim
File sharing applications
Multimedia applications
Mobile OS

An operating system for smartphones, tablets and other mobile devices is called mobile OS. Some
of the most popular OS for mobile devices includes−
Android − This Linux-based OS by Google is the most popular mobile OS currently. Almost
85% of mobile devices use it.
Windows Phone 7 − It is the latest mobile OS developed by Microsoft.

Apple iOS − This mobile OS is an OS developed by Apple exclusively for its own mobile
devices like iPhone, iPad, etc.
Blackberry OS − This is the OS used by all blackberry mobile devices like smartphones and
playbooks.

Basics of Computers - Utility Software

Application software that assist OS in carrying out certain specialized tasks are called utility
software. Let us look some of the most popular utility software.

Antivirus

A virus can be defined as a malicious program that attaches itself to a host program and makes
multiple copies of itself, slowing down, corrupting or destroying the system. A software that assists
the OS in providing virus free environment to the users is called antivirus. An anti-virus scans the
system for any virus and if detected, gets rid of it by deleting or isolating it. It can detect many
types of virus like boot virus, Trojan, worm, spyware, etc.

When any external storage device like USB drive is attached to the system, anti-virus software
scans it and gives an alert if a virus is detected. You can set up your system for periodic scans or
scan whenever you feel the need. A combination of both the techniques is advisable to keep your
system virus free.

File management tools

As you know, file management is an important function of operating systems as all data and
instructions are stored in the computer in form of files. Utility software providing regular file
management tasks like browse, search, update, preview, etc. are called file management tools.
Windows Explorer in Windows OS, Google desktop, Directory Opus, Double Commander, etc. are
examples of such tools.

Compression tools

Storage space is always at a premium in computer systems. So operating systems are always
looking at ways to minimize amount of storage space taken by files. Compression tools are utilities
that assist operating systems in shortening files so that they take less space. After compression
files are stored in a different format and cannot be read or edited directly. It needs to be
uncompressed before it can be accessed for further use. Some of the popular compression tools
are WinRAR, PeaZip, The Unarchiver, etc.

Disk Cleanup

Disk cleanup tools assist users in freeing up disk space. The software scans hard disks to find files
that are no longer used and frees up space by deleting them.

Disk Defragmenter

Disk defragmenter is a disk management utility that increases file access speeds by rearranging
fragmented files on contiguous locations. Large files are broken down into fragments and may be
stores in non-contiguous locations if contiguous ones are not available. When such files are
accessed by the user, access speed is slow due to fragmentation. Disk defragmenter utility scans
the hard disk and tries to assemble file fragments so that they may be stored in contiguous
locations.

Backup

Backup utility enables backing up of files, folders, databases or complete disks. Backups are taken
so that data may be restored in case of data loss. Backup is a service provided by all operating
systems. In stand-alone systems backup may be taken in the same or different drive. In case of
networked systems backup may be done on backup servers.

Basics of Computers - Open Source Software

A software whose source code is freely distributed with a license to study, change and further
distributed to anyone for any purpose is called open source software. Open source software is
generally a team effort where dedicated programmers improve upon the source code and share the
changes within the community. Open source software provides these advantages to the users due
to its thriving communities −
Security
Affordability
Transparent
Interoperable on multiple platforms
Flexible due to customizations
Localization is possible

Freeware
A software that is available free of cost for use and distribution but cannot be modified as its
source code is not available is called freeware. Examples of freeware are Google Chrome, Adobe
Acrobat PDF Reader, Skype, etc.

Shareware

A software that is initially free and can be distributed to others as well, but needs to be paid for
after a stipulated period of time is called shareware. Its source code is also not available and
hence cannot be modified.

Proprietary Software

Software that can be used only by obtaining license from its developer after paying for it is called
proprietary software. An individual or a company can own such proprietary software. Its source
code is often closely guarded secret and it can have major restrictions like −
No further distribution
Number of users that can use it
Type of computer it can be installed on, example multitasking or single user, etc.
For example, Microsoft Windows is a proprietary operating software that comes in many editions
for different types of clients like single-user, multi-user, professional, etc.

Basics of Computers - Office Tools

Application software that assist users in regular office jobs like creating, updating and maintaining
documents, handling large amounts of data, creating presentations, scheduling, etc. are called
office tools. Using office tools saves time and effort and lots of repetitive tasks can be done easily.
Some of the software that do this are −
Word processors
Spreadsheets
Database systems
Presentation software
E-mail tools
Let us look at some of these in detail.

Word Processor

A software for creating, storing and manipulating text documents is called word processor. Some
common word processors are MS-Word, WordPad, WordPerfect, Google docs, etc.
A word processor allows you to −
Create, save and edit documents
Format text properties like font, alignment, font color, background color, etc.
Check spelling and grammar
Add images
Add header and footer, set page margins and insert watermarks

Spreadsheet

Spreadsheet is a software that assists users in processing and analyzing tabular data. It is a
computerized accounting tool. Data is always entered in a cell (intersection of a row and a column)
and formulas and functions to process a group of cells is easily available. Some of the popular
spreadsheet software include MS-Excel, Gnumeric, Google Sheets, etc. Here is a list of activities
that can be done within a spreadsheet software −
Simple calculations like addition, average, counting, etc.
Preparing charts and graphs on a group of related data
Data entry
Data formatting
Cell formatting
Calculations based on logical comparisons
Presentation Tool

Presentation tool enables user to demonstrate information broken down into small chunks and
arranged on pages called slides. A series of slides that present a coherent idea to an audience is
called a presentation. The slides can have text, images, tables, audio, video or other multimedia
information arranged on them. MS-PowerPoint, OpenOffice Impress, Lotus Freelance, etc. are some
popular presentation tools.

Database Management System


Software that manages storage, updating and retrieval of data by creating databases is called
database management system. Some popular database management tools are MS-Access,
MySQL, Oracle, FoxPro, etc.

Basics of Computers - Domain Specific Tools

Depending on its usage, software may be generic or specific. Generic software is a software that
can perform multiple tasks in different scenarios without being modified. For example, a word
processor software can be used by anyone to create different types of documents like report,
whitepaper, training material, etc. Specific software is a software for a particular application, like
railway reservation system, weather forecasting, etc. Let us look at some examples of domain
specific tools.

School Management System

School management system handles the diverse activities of a school like examination,
attendance, admission, students’ fees, time table, teachers’ training, etc.
Inventory Management

Managing multiple activities like purchase, sales, order, delivery, stock maintenance, etc.
associated with raw or processed goods in any business is called inventory management. The
inventory management software ensures that stocks are never below specified limits and
purchase/deliveries are done in time.

Payroll Software

Payroll software handles complete salary calculations of employees, taking care of leave, bonus,
loans, etc. Payroll software is usually a component of HR (human resource) management software
in mid-sized to big organizations.
Financial Accounting

Financial management software keeps an electronic record of all financial transactions of the
organization. It has many functional heads like account receivables, accounts payable, loans,
payroll, etc.
Restaurant Management

Restaurant management software helps restaurant managers in keeping track of inventory levels,
daily orders, customer management, employee scheduling, table bookings, etc.

Railway Reservation System

Railway reservation system is a software that handles multiple modules like train routes, train
management, seat booking, food booking, train maintenance, train status, travel packages, etc.
Weather Forecasting System

Weather forecasting system is a real-time software that predicts weather of a place by collecting
copious amount of live data about atmospheric temperature, humidity, wind level, etc. It is used to
predict major disasters like earthquakes, hurricanes, tsunamis, etc.

Basics of Computers - Number System

The technique to represent and work with numbers is called number system. Decimal number
system is the most common number system. Other popular number systems include binary
number system, octal number system, hexadecimal number system, etc.
Decimal Number System

Decimal number system is a base 10 number system having 10 digits from 0 to 9. This means that
any numerical quantity can be represented using these 10 digits. Decimal number system is also a
positional value system. This means that the value of digits will depend on its position. Let us take
an example to understand this.

Say we have three numbers – 734, 971 and 207. The value of 7 in all three numbers is different−
In 734, value of 7 is 7 hundreds or 700 or 7 × 100 or 7 × 102
In 971, value of 7 is 7 tens or 70 or 7 × 10 or 7 × 101
In 207, value 0f 7 is 7 units or 7 or 7 × 1 or 7 × 100
The weightage of each position can be represented as follows −

In digital systems, instructions are given through electric signals; variation is done by varying the
voltage of the signal. Having 10 different voltages to implement decimal number system in digital
equipment is difficult. So, many number systems that are easier to implement digitally have been
developed. Let’s look at them in detail.

Binary Number System

The easiest way to vary instructions through electric signals is two-state system – on and off. On is
represented as 1 and off as 0, though 0 is not actually no signal but signal at a lower voltage. The
number system having just these two digits – 0 and 1 – is called binary number system.
Each binary digit is also called a bit. Binary number system is also positional value system, where
each digit has a value expressed in powers of 2, as displayed here.

In any binary number, the rightmost digit is called least significant bit (LSB) and leftmost digit is
called most significant bit (MSB).
And decimal equivalent of this number is sum of product of each digit with its positional value.
110102 = 1×24 + 1×23 + 0×22 + 1×21 + 0×20
= 16 + 8 + 0 + 2 + 0
= 2610
Computer memory is measured in terms of how many bits it can store. Here is a chart for memory
capacity conversion.
1 byte (B) = 8 bits
1 Kilobytes (KB) = 1024 bytes
1 Megabyte (MB) = 1024 KB
1 Gigabyte (GB) = 1024 MB
1 Terabyte (TB) = 1024 GB
1 Exabyte (EB) = 1024 PB
1 Zettabyte = 1024 EB
1 Yottabyte (YB) = 1024 ZB

Octal Number System

Octal number system has eight digits – 0, 1, 2, 3, 4, 5, 6 and 7. Octal number system is also a
positional value system with where each digit has its value expressed in powers of 8, as shown
here −

Decimal equivalent of any octal number is sum of product of each digit with its positional value.
7268 = 7×82 + 2×81 + 6×80
= 448 + 16 + 6
= 47010

Hexadecimal Number System

Octal number system has 16 symbols – 0 to 9 and A to F where A is equal to 10, B is equal to 11
and so on till F. Hexadecimal number system is also a positional value system with where each
digit has its value expressed in powers of 16, as shown here −
Decimal equivalent of any hexadecimal number is sum of product of each digit with its positional
value.
27FB16 = 2×163 + 7×162 + 15×161 + 10×160
= 8192 + 1792 + 240 +10
= 1023410

Number System Relationship

The following table depicts the relationship between decimal, binary, octal and hexadecimal
number systems.

HEXADECIMAL DECIMAL OCTAL BINARY

0 0 0 0000

1 1 1 0001

2 2 2 0010

3 3 3 0011

4 4 4 0100

5 5 5 0101

6 6 6 0110

7 7 7 0111

8 8 10 1000

9 9 11 1001

A 10 12 1010

B 11 13 1011

C 12 14 1100

D 13 15 1101

E 14 16 1110

F 15 17 1111

ASCII
Besides numerical data, computer must be able to handle alphabets, punctuation marks,
mathematical operators, special symbols, etc. that form the complete character set of English
language. The complete set of characters or symbols are called alphanumeric codes. The
complete alphanumeric code typically includes −
26 upper case letters
26 lower case letters
10 digits
7 punctuation marks
20 to 40 special characters
Now a computer understands only numeric values, whatever the number system used. So all
characters must have a numeric equivalent called the alphanumeric code. The most widely used
alphanumeric code is American Standard Code for Information Interchange (ASCII). ASCII is a 7-bit
code that has 128 (27) possible codes.
ISCII

ISCII stands for Indian Script Code for Information Interchange. IISCII was developed to support
Indian languages on computer. Language supported by IISCI include Devanagari, Tamil, Bangla,
Gujarati, Gurmukhi, Tamil, Telugu, etc. IISCI is mostly used by government departments and before
it could catch on, a new universal encoding standard called Unicode was introduced.

Unicode
Unicode is an international coding system designed to be used with different language scripts.
Each character or symbol is assigned a unique numeric value, largely within the framework of
ASCII. Earlier, each script had its own encoding system, which could conflict with each other.
In contrast, this is what Unicode officially aims to do − Unicode provides a unique number for every
character, no matter what the platform, no matter what the program, no matter what the language.

Number System Conversion

As you know decimal, binary, octal and hexadecimal number systems are positional value number
systems. To convert binary, octal and hexadecimal to decimal number, we just need to add the
product of each digit with its positional value. Here we are going to learn other conversion among
these number systems.

Decimal to Binary

Decimal numbers can be converted to binary by repeated division of the number by 2 while
recording the remainder. Let’s take an example to see how this happens.

The remainders are to be read from bottom to top to obtain the binary equivalent.
4310 = 1010112

Decimal to Octal

Decimal numbers can be converted to octal by repeated division of the number by 8 while recording
the remainder. Let’s take an example to see how this happens.
Reading the remainders from bottom to top,
47310 = 7318

Decimal to Hexadecimal

Decimal numbers can be converted to octal by repeated division of the number by 16 while
recording the remainder. Let’s take an example to see how this happens.

Reading the remainders from bottom to top we get,


42310 = 1A716

Binary to Octal and Vice Versa

To convert a binary number to octal number, these steps are followed −


Starting from the least significant bit, make groups of three bits.
If there are one or two bits less in making the groups, 0s can be added after the most
significant bit
Convert each group into its equivalent octal number
Let’s take an example to understand this.
101100101012 = 26258
To convert an octal number to binary, each octal digit is converted to its 3-bit binary equivalent
according to this table.

Octal Digit 0 1 2 3 4 5 6 7

Binary Equivalent 000 001 010 011 100 101 110 111

546738 = 1011001101110112

Binary to Hexadecimal

To convert a binary number to hexadecimal number, these steps are followed −


Starting from the least significant bit, make groups of four bits.
If there are one or two bits less in making the groups, 0s can be added after the most
significant bit.
Convert each group into its equivalent octal number.
Let’s take an example to understand this.

101101101012 = DB516
To convert an octal number to binary, each octal digit is converted to its 3-bit binary equivalent.
Microprocessor Concepts

Microprocessor is the brain of computer, which does all the work. It is a computer processor that
incorporates all the functions of CPU (Central Processing Unit) on a single IC (Integrated Circuit) or
at the most a few ICs. Microprocessors were first introduced in early 1970s. 4004 was the first
general purpose microprocessor used by Intel in building personal computers. Arrival of low cost
general purpose microprocessors has been instrumental in development of modern society the
way it has.

We will study the characteristics and components of a microprocessor in detail.

Microprocessors Characteristics

Microprocessors are multipurpose devices that can be designed for generic or specialized
functions. The microprocessors of laptops and smartphones are general purpose whereas ones
designed for graphical processing or machine vision are specialized ones. There are some
characteristics that are common to all microprocessors.
These are the most important defining characteristics of a microprocessor −
Clock speed
Instruction set
Word size

Clock Speed

Every microprocessor has an internal clock that regulates the speed at which it executes
instructions and also synchronizes it with other components. The speed at which the
microprocessor executes instructions is called clock speed. Clock speeds are measured in MHz or
GHz where 1 MHz means 1 million cycles per second whereas 1 GHz equals to 1 billion cycles per
second. Here cycle refers to single electric signal cycle.
Currently microprocessors have clock speed in the range of 3 GHz, which is maximum that current
technology can attain. Speeds more than this generate enough heat to damage the chip itself. To
overcome this, manufacturers are using multiple processors working in parallel on a chip.

Word Size

Number of bits that can be processed by a processor in a single instruction is called its word size.
Word size determines the amount of RAM that can be accessed at one go and total number of pins
on the microprocessor. Total number of input and output pins in turn determines the architecture of
the microprocessor.
First commercial microprocessor Intel 4004 was a 4-bit processor. It had 4 input pins and 4 output
pins. Number of output pins is always equal to the number of input pins. Currently most
microprocessors use 32-bit or 64-bit architecture.

Instruction Set

A command given to a digital machine to perform an operation on a piece of data is called an


instruction. Basic set of machine level instructions that a microprocessor is designed to execute is
called its instruction set. These instructions do carry out these types of operations −
Data transfer
Arithmetic operations
Logical operations
Control flow
Input/output and machine control

Microprocessor Components

Compared to the first microprocessors, today’s processors are very small but still they have these
basic parts right from the first model −
CPU
Bus
Memory

CPU

CPU is fabricated as a very large scale integrated circuit (VLSI) and has these parts −
Instruction register − It holds the instruction to be executed.
Decoder − It decodes (converts to machine level language) the instruction and sends to
the ALU (Arithmetic Logic Unit).
ALU − It has necessary circuits to perform arithmetic, logical, memory, register and
program sequencing operations.
Register − It holds intermediate results obtained during program processing. Registers are
used for holding such results rather than RAM because accessing registers is almost 10
times faster than accessing RAM.

Bus

Connection lines used to connect the internal parts of the microprocessor chip is called bus. There
are three types of buses in a microprocessor −
Data Bus − Lines that carry data to and from memory are called data bus. It is a
bidirectional bus with width equal to word length of the microprocessor.
Address Bus − It is a unidirectional responsible for carrying address of a memory location
or I/O port from CPU to memory or I/O port.
Control Bus − Lines that carry control signals like clock signals, interrupt signal or ready
signal are called control bus. They are bidirectional. Signal that denotes that a device is
ready for processing is called ready signal. Signal that indicates to a device to interrupt its
process is called an interrupt signal.

Memory

Microprocessor has two types of memory


RAM − Random Access Memory is volatile memory that gets erased when power is
switched off. All data and instructions are stored in RAM.
ROM − Read Only Memory is non-volatile memory whose data remains intact even after
power is switched off. Microprocessor can read from it any time it wants but cannot write
to it. It is preprogrammed with most essential data like booting sequence by the
manufacturer.

Evaluation of Microprocessor
The first microprocessor introduced in 1971 was a 4-bit microprocessor with 4m5KB memory and
had a set of 45 instructions. In the past 5 decades microprocessor speed has doubled every two
years, as predicted by Gordon Moore, Intel co-founder. Current microprocessors can access 64 GB
memory. Depending on width of data microprocessors can process, they are of these categories−

8-bit
16-bit
32-bit
64-bit
Size of instruction set is another important consideration while categorizing microprocessors.
Initially, microprocessors had very small instructions sets because complex hardware was
expensive as well as difficult to build.
As technology developed to overcome these issues, more and more complex instructions were
added to increase functionality of the microprocessor. However, soon it was realized that having
large instruction sets was counterproductive as many instructions that were rarely used sat idle on
precious memory space. So the old school of thought that supported smaller instruction sets
gained popularity.

Let us learn more about the two types of microprocessors based on their instruction set.

RISC

RISC stands for Reduced Instruction Set Computers. It has a small set of highly optimized
instructions. Complex instruction are also implemented using simpler instructions, reducing the
size of instruction set. The designing philosophy for RISC incorporates these salient points −
Number of instructions should be minimum.
Instructions should be of same length.
Simple addressing modes should be used
Reduce memory references to retrieve operands by adding registers
Some of the techniques used by RISC architecture include −
Pipelining− A sequence of instructions is fetched even if it means overlapping of
instructions in fetching and execution.
Single cycle execution − Most of RISC instructions take one CPU cycle to execute.
Examples of RISC processors are Intel P6, Pentium4, AMD K6 and K7, etc.

CISC

CISC stands for Complex Instruction Set Computers. It supports hundreds of instructions.
Computers supporting CISC can accomplish wide variety of tasks, making them ideal for personal
computers. These are some characteristics of CISC architecture −
Larger set of instructions
Instructions are of variable length
Complex addressing modes
Instructions take more than one clock cycle
Work well with simpler compilers
Examples of CISC processors are Intel 386 & 486, Pentium, Pentium II and III, Motorola 68000, etc.

EPIC

EPIC stands for Explicitly Parallel Instruction Computing. It is a computer architecture that is a
cross between RISC and CISC, trying to provide the best of both. Its important features include −

Parallel instructions rather than fixed width


Mechanism to communication compiler’s execution plan to hardware
Programs must have sequential semantics
Some EPIC processors are Intel IA-64, Itanium, etc.

Basics of Computers - Primary Memory

Memory is required in computers to store data and instructions. Memory is physically organized as
a large number of cells that are capable of storing one bit each. Logically they are organized as
groups of bits called words that are assigned an address. Data and instructions are accessed
through these memory address. The speed with which these memory addresses can be accessed
determines the cost of the memory. Faster the memory speed, higher the price.
Computer memory can be said to be organized in a hierarchical way where memory with the
fastest access speeds and highest costs lies at the top whereas those with lowest speeds and
hence lowest costs lie at the bottom. Based on this criteria memory is of two types – primary and
secondary. Here we will look at primary memory in detail.
The main features of primary memory, which distinguish it from secondary memory are −
It is accessed directly by the processor
It is the fastest memory available
Each word is stored as well as
It is volatile, i.e. its contents are lost once power is switched off
As primary memory is expensive, technologies are developed to optimize its use. These are broad
types of primary memory available.
RAM

RAM stands for Random Access Memory. The processor accesses all memory addresses directly,
irrespective of word length, making storage and retrieval fast. RAM is the fastest memory available
and hence most expensive. These two factors imply that RAM is available in very small quantities
of up to 1GB. RAM is volatile but my be of any of these two types

DRAM (Dynamic RAM)

Each memory cell in a DRAM is made of one transistor and one capacitor, which store one bit of
data. However, this cell starts losing its charge and hence data stored in less than thousandth of a
second. So it needs to be refreshed thousand times a second, which takes up processor time.
However, due to small size of each cell, one DRAM can have large number of cells. Primary memory
of most of the personal computers is made of DRAM.

SRAM (SRAM)

Each cell in SRAM is made of a flip flop that stores one bit. It retains its bit till the power supply is
on and doesn’t need to be refreshed like DRAM. It also has shorter read-write cycles as compared
to DRAM. SRAM is used in specialized applications.

ROM

ROM stands for Read Only Memory. As the name suggests, ROM can only be read by the
processor. New data cannot be written into ROM. Data to be stored into ROM is written during the
manufacturing phase itself. They contain data that does not need to be altered, like booting
sequence of a computer or algorithmic tables for mathematical applications. ROM is slower and
hence cheaper than RAM. It retains its data even when power is switched off, i.e. it is non-volatile.
ROM cannot be altered the way RAM can be but technologies are available to program these types
of ROMs −

PROM (Programmable ROM)

PROM can be programmed using a special hardware device called PROM programmer or PROM
burner.

EPROM (Erasable Programmable ROM)

EPROM can be erased and then programmed using special electrical signals or UV rays. EPROMs
that can be erased using UV rays are called UVEPROM and those that can be erased using
electrical signals are called EEPROM. However, handling electric signals is easier and safer than UV
rays.

Cache Memory

Small piece of high speed volatile memory available to the processor for fast processing is called
cache memory. Cache may be a reserved portion of main memory, another chip on CPU or an
independent high speed storage device. Cache memory is made of fast speed SRAMs. The process
of keeping some data and instructions in cache memory for faster access is called caching.
Caching is done when a set of data or instructions is accesses again and again.
Whenever the processor needs any piece of data or instructions, it checks the cache first. If it is
unavailable there, then the main memory and finally secondary memory is accessed. As cache has
very high speed, time spent in accessing it every time is negligible as compared to time saved if
data indeed is in the cache. Finding data or instruction in cache is called cache hit.

Basics of Computers - Secondary Memory

You know that processor memory, also known as primary memory, is expensive as well as limited.
The faster primary memory are also volatile. If we need to store large amount of data or programs
permanently, we need a cheaper and permanent memory. Such memory is called secondary
memory. Here we will discuss secondary memory devices that can be used to store large amount
of data, audio, video and multimedia files.

Characteristics of Secondary Memory

These are some characteristics of secondary memory, which distinguish it from primary memory −

It is non-volatile, i.e. it retains data when power is switched off


It is large capacities to the tune of terabytes
It is cheaper as compared to primary memory
Depending on whether secondary memory device is part of CPU or not, there are two types of
secondary memory – fixed and removable.

Let us look at some of the secondary memory devices available.

Hard Disk Drive

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 −
CD-ROM (Compact Disk – Read Only Memory) − The data on these CDs are recorded by
the manufacturer. Proprietary Software, audio or video are released on CD-ROMs.
CD-R (Compact Disk – Recordable) − Data can be written by the user once on the CD-R. It
cannot be deleted or modified later.
CD-RW (Compact Disk – Rewritable) − Data can be written and deleted on these optical
disks again and again.

DVD Drive
DVD stands for Digital Video Display. DVD are optical devices that can store 15 times the data held
by CDs. They are usually used to store rich multimedia files that need high storage capacity. 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 nonvolatile. It is also
called USB drive, key drive or flash memory.

Blu Ray Disk

Blu Ray Disk (BD) is an optical storage media used to store high definition (HD) video and other
multimedia filed. BD uses shorter wavelength laser as compared to CD/DVD. This enables writing
arm to focus more tightly on the disk and hence pack in more data. BDs can store up to 128 GB
data.
Basics of Computers - Input/Output Ports

A connection point that acts as interface between the computer and external devices like mouse,
printer, modem, etc. is called port. Ports are of two types −
Internal port − It connects the motherboard to internal devices like hard disk drive, CD
drive, internal modem, etc.
External port − It connects the motherboard to external devices like modem, mouse,
printer, flash drives, etc.

Let us look at some of the most commonly used ports.

Serial Port
Serial ports transmit data sequentially one bit at a time. So they need only one wire to transmit 8
bits. However it also makes them slower. Serial ports are usually 9-pin or 25-pin male connectors.
They are also known as COM (communication) ports or RS323C ports.

Parallel Port

Parallel ports can send or receive 8 bits or 1 byte at a time. Parallel ports come in form of 25-pin
female pins and are used to connect printer, scanner, external hard disk drive, etc.

USB Port

USB stands for Universal Serial Bus. It is the industry standard for short distance digital data
connection. USB port is a standardized port to connect a variety of devices like printer, camera,
keyboard, speaker, etc.
PS-2 Port

PS/2 stands for Personal System/2. It is a female 6-pin port standard that connects to the male
mini-DIN cable. PS/2 was introduced by IBM to connect mouse and keyboard to personal
computers. This port is now mostly obsolete, though some systems compatible with IBM may have
this port.

Infrared Port

Infrared port is a port that enables wireless exchange of data within a radius of 10m. Two devices
that have infrared ports are placed facing each other so that beams of infrared lights can be used
to share data.

Bluetooth Port

Bluetooth is a telecommunication specification that facilitates wireless connection between


phones, computers and other digital devices over short range wireless connection. Bluetooth port
enables synchronization between Bluetooth-enabled devices. There are two types of Bluetooth
ports −
Incoming − It is used to receive connection from Bluetooth devices.
Outgoing − It is used to request connection to other Bluetooth devices.

FireWire Port

FireWire is Apple Computer’s interface standard for enabling high speed communication using
serial bus. It is also called IEEE 1394 and used mostly for audio and video devices like digital
camcorders.

You might also like