Chapter 1
Computer System
A computer is an electronic device that can be programmed to accept input, process it, and
generate results (output). A computer along with additional hardware and software together is
called a computer system.
Components of a Computer System
CPU (Central Processing Unit)
It is the electronic circuitry of a computer that carries out the actual processing and is
usually referred to as the brain of the computer.
It is commonly called a processor.
Physically, a CPU can be placed on one or more microchips called Integrated
Circuits (ICs).
ICs comprise semiconductor materials.
The CPU fetches programs and data from memory, performs arithmetic and logical
operations as per the given instructions, and stores the result back into memory.
ALU (Arithmetic Logic Unit)
It performs arithmetic and logical operations based on the instructions.
Arithmetic operations: +, -, ×, ÷
Logical operators: AND, OR, NOT
CU (Control Unit)
The Control Unit controls the sequential execution of instructions, interprets
instructions, and guides data flow through the computer memory.
Input Device
The devices through which control signals or data are sent to a computer are termed
as input devices. Examples: Keyboard, Mouse, Scanner, Touch Screen, etc.
Output Device
A device that receives data from a computer system for display or physical production
is called an output device.
Primary Memory and Secondary Memory
Data entered through an input device is temporarily stored in the main memory
(RAM – Random Access Memory), also called Primary Memory.
For permanent storage and future use, data and instructions are stored in Secondary
Memory. It is also called additional storage location (ROM – Read Only Memory).
Evolution of Computer
First Generation (1942–1956)
Vacuum tubes were used as processors.
Magnetic drums were used for memory.
Punch cards or paper tapes were used for input/output.
Computers used binary language.
Examples: ENIAC, EDVAC.
2nd Generation (1956–1963)
Vacuum tubes were replaced with transistors.
Magnetic core memory and magnetic tape were used for storage.
Input/output used magnetic tape and cards.
Example: IBM 1400.
3rd Generation (1968–1971)
Transistors were replaced with integrated circuits (ICs).
Large magnetic core memory, magnetic tape, or magnetic disk were used for memory.
Magnetic tape, monitor, keyboard, and printer were used as input/output devices.
High-level languages were used.
4th Generation (1971 – Till)
Microprocessors were introduced.
LSI and VLSI processors were used.
RAM and ROM were used for memory.
GUI introduced.
Input/output devices remained similar to the 3rd generation.
5th Generation (Present)
Microprocessors are replaced with robotics.
AI (Artificial Intelligence).
Evolution of computer system
Pascaline
Blaise Pascal invented a mechanical calculator known as the Pascal Calculator
(Pascaline).
Pascaline performed arithmetic operations.
Tabulating Machine
Herman Hollerith designed a tabulating machine for summarizing data stored on
punch cards.
EDVAC
Electronic Discrete Variable Automatic Computer.
ENIAC
Electronic Numerical Integrator and Computer.
Von Neumann Concept
John von Neumann introduced the concept of the stored-program computer, which
was capable of storing both data and programs in memory.
IC (Integrated Circuit)
An IC is a silicon chip that contains an entire electronic circuit on a very small area.
Abacus
It was invented about 3000 years ago.
It was a mechanical device used for arithmetic operations.
Analytical Engine
Charles Babbage invented the Analytical Engine, a mechanical computing device for
inputting, processing, storing, and displaying output.
Turing Machine
The Turing Machine concept was proposed by Alan Turing.
It was a general-purpose programmable machine capable of solving problems by
executing instructions stored on punched cards.
Transistor
Vacuum tubes were replaced by transistors developed at Bell Labs using
semiconductor materials.
Computer Memory
A computer system needs memory to store the data and instructions for processing.
Units of Memory
A computer system uses binary numbers to store and process data.
The binary digits 0 and 1, which are the basic units of memory, are called bits.
A 4-bit word is called a nibble (e.g., 1001, 1100).
Two nibbles or an 8-bit word is called a byte (e.g., 10010011, 11001100).
Bytes are grouped together to make bigger chunks or units of memory.
Types of Memory
1. Primary Memory
Primary memory is an essential component of a computer system.
Programs and data are loaded into the primary memory before processing.
The CPU interacts directly with the primary memory to perform read and write
operations.
It is of two types:
1. RAM
2. ROM
2. Cache Memory
RAM is faster than secondary storage, but not as fast as a computer processor.
To speed up the operations of the CPU, a very high-speed memory is placed between
the CPU and the primary memory, known as cache memory.
It stores copies of data from frequently accessed primary memory locations, thus
reducing the average time required to access data from primary memory.
3. Secondary Memory
Secondary memory is non-volatile and has a larger storage capacity than primary
memory.
It is slower and cheaper than the main memory.
It cannot be accessed directly by the CPU.
It is used to store data permanently.
Examples:
o Hard Disk Drive (HDD)
o CD/DVD
o Memory Card
o etc.
Difference Between RAM and ROM
RAM ROM
1. Random Access Memory 1. Read Only Memory
2. Temporary memory 2. Permanent memory
3. Volatile 3. Non-volatile
4. Faster speed 4. Slower than RAM
5. Can be modified 5. Cannot be modified easily
6. Read/Write allowed 6. Read-only allowed
7. Larger capacity 7. Smaller capacity
8. More expensive 8. Less expensive
9. Examples: DRAM, SRAM 9. Examples: PROM, EPROM
10. Used for normal operation 10. Used for start-up process of computer
Data Transfer Between Memory and CPU
Data needs to be transferred between the CPU and primary memory as well as
between the primary and secondary memory.
Data is transferred between different components of a computer system using physical
wires called buses.
Types of Bus
1. Data Bus
Data bus is used to transfer data between different components.
2. Address Bus
Address bus is used to transfer addresses between the CPU and main memory.
The address of the memory location that the CPU wants to read from or write to is
specified on the address bus.
3. Control Bus
Control bus is used to communicate control signals between different components of a
computer.
Data Transfer Process
As the CPU interacts directly with the main memory, any data entered from an input
device or data accessed from a hard disk needs to be placed in the main memory for
further processing.
The data is then transferred between the CPU and main memory using buses.
The CPU places on the address bus the address of the main memory location from
which it wants to read data or to which it wants to write data.
Microprocessor
A processor (CPU) which is implemented on a single microchip is called
microprocessor.
Microprocessor is a small sized electronic component inside a computer that carries
out various tasks involved in data processing as well as arithmetic and logical
operations.
Microprocessors have evolved over time in terms of their increased processing
capability, decreasing physical size and reduced cost.
Microprocessor Specifications
1. Word size
Word size is the maximum number of bits that a microprocessor can process at a time.
A word was of 8 bits, as it was the maximum limit at that time.
Minimum word size is 16 bits and maximum word size is 64 bits.
2. Memory size
Depending upon the word size, the size of RAM varies.
RAM was very small (1 MB) due to 4/8 bits word size.
As word size increased to 64 bits, it has become feasible to use RAM of size up to
Exabytes (EB).
3. Clock speed
The clock speed indicates the speed at which the computer can execute instructions.
It was measured in Hertz (Hz) and kilohertz (KHz), and Gigahertz (GHz).
4. Cores
Core is a basic computation unit of the CPU.
CPU with two, four, and eight cores is called dual-core, quad-core and octa-core
processor.
Micro controller
Microcontroller is a small computing device which has a CPU, a fixed amount of
RAM, ROM and other peripherals all embedded on a single chip as compared to
microprocessor that has only a CPU on the chip.
It is very small size of the microcontroller; it is embedded in other device or system to
perform a specific functionality.
Data and Information
A computer is primarily for processing data.
A computer system considers everything as data both instructions, pictures, songs,
videos, documents, etc.
Data can also be raw and unorganised facts that are processed to get meaningful
information.
Data and Its Types
A computer system has many input devices, which provide it with raw data in the
form of facts, concepts, instruction, etc. Internally, everything is stored in binary form
(0 and 1) but externally, data can be input to a computer in the text form consisting of
English alphabets A–Z, a–z; numbers 0–9; and special symbols @ # ! *.
Types
1. Structured Data
Data which follows a strict record structure and is easy to comprehend is called
structured data. Such data with pre-specified tabular format may be stored in a data
file to access in the future. Structured data may be sorted in ascending or descending
order.
2. Unstructured Data
Data which are not organized in a pre-defined record format is called unstructured
data.
Ex: Audio, video files, text documents, etc.
3. Semi-structured Data
Data which have no well-defined structure but maintains internal tags or markers to
separate data elements are called semi-structured data.
Ex: email documents.
Data Capturing, Storage and Retrieval
1. Data Capturing
It involves the process of gathering data from different sources in the digital form.
This capturing may vary from simple instruments like keyboard, barcode readers used
at shopping outlets.
2. Data Storage
It is the process of storing the captured data for processing later.
Nowadays, data being produced at a very high rate and therefore data storage has
become a challenging task.
In large organisations, computers with large and faster storage called data servers are
deployed to store vast amount of data.
3. Data Retrieval
It involves fetching data from the storage devices, for its processing as per the user
requirement.
As databases grow, the challenges involved in search and retrieval of the data in
acceptable time, also increase.
Data Deletion and Recovery
The storage devices can malfunction or crash down resulting in the deletion of data
stored.
Users can accidentally erase data from storage device, or a hacker or malware can
delete the digital data intentionally.
Deleting digitally stored data means changing the details of data at bit level, which
can be very time consuming.
In case data gets deleted accidentally or corrupted, there arises a need to recover the
data.
Recovery of the data is possible only if the contents or memory space marked as
delete have not been overwritten by some other data.
Data recovery is a process of retrieving deleted, corrupted and lost data from
secondary storage devices.
Software
Computer software is a set of instructions, data or programs used to operate
computers and execute specific task.
It is the intangible counterpart to physical hardware acting as the bridge that allows
users to interact with the machine and tells the hardware exactly what to do.
Need of Software
The sole purpose of a software is to make the computer hardware useful and
operational. A software knows how to make different hardware components of a
computer work and communicate with each other as well as with the end-user.
Software acts as an interface between human users and the hardware.
Types of software
1. System software
The software that provides the basic functions to operate a computer by interacting
directly with its constituent hardware is termed system software.
A system software knows how to operate and use different hardware components of a
computer.
Examples
(i) Operating system
As the name implies, the operating system is a system software that operates the
computer.
The operating system manages other application programs and provides access and
security to the users of the system.
E.g.: Windows, Linux, Ubuntu, Android, iOS.
(ii) System utilities
Software used for maintenance and configuration of the computer system is called
system utilities.
(iii) Device drivers
As the name signifies, the purpose of a device driver is to ensure proper functioning
of a particular device.
(iv) Programming tools
In order to get some work done by the computer, we need to give instruction which
are applied on the input data to get the desired outcome.
Computer languages are developed for writing these instructions.
It is important to understand here that computers and humans understand and
comprehend different languages. While humans are able to write programs in high-
level language, computers understand machine language.
(v) Classification of programming language
Two major categories of computer programming languages are:
(i) Low level language
Low level languages are machine dependent languages and include machine language
and assembly language. Machine language uses 1s and 0s to write instructions which
are directly understood and executed by the computer.
(ii) High level language
High level languages are machine independent and are simple to write code.
Instructions are using English like sentences and each high level language follows a
set of rules similar to natural languages.
(b) Language translators
As the computer can understand only machine language, a translator is needed to
convert program written in assembly or high level language to machine language.
The program code written in assembly or high level language is called source code.
The source code is converted by a translator into the machine understandable form
called object (machine) code.
There are 3 types of translators used in computing systems, i.e. assembler, compiler
and interpreter.
Assembler
The translator used to convert the code written in assembly language to machine
language is called assembler.
Compiler
Compiler converts the source code into machine code.
Interpreter
An interpreter translates one line at a time instead of the whole program at once.
(c) Program development tools
In order to simplify the program development, there are software called Integrated
Development Environment (IDE).
IDE consisting of text editor, building tools and debugger.
A program can be typed, compiled and debugged from the IDE directly.
2. Application software
The system software provides the core functionality of the computer system. The
specific software that works on top of the system software is termed as application
software.
Types
(a) General purpose software
The application software developed for generic applications to cater to a bigger
audience in general are called general purpose software.
(b) Customised software
These are custom or tailor-made application software that are developed to meet the
requirements of a specific organisation or an individual.
Proprietary or Free and Open Source Software
The developers of some application software provide their source code as well as the
software freely to the public, with an aim to develop and improve further with each
other’s help. Such software is known as Free and Open-Source Software (FOSS).
Operating System
An operating system (OS) can be considered to be a resource manager, which
manages all the resources of a computer–its hardware including CPU, RAM, disk,
networks, and other input-output devices.
It also controls various application software and device drivers, manages system
security and handles access by different users.
Examples: Windows, Linux, Android.
The primary objectives of an operating system are twofold:
o First: to provide services for building and running application programs.
o Second: to provide an interface to the user through which the user can interact
with the computer.
OS User Interface
(i) Command-based interface
Command based interface requires a user to enter the commands to perform different
tasks like creating, opening, editing or deleting a file, etc.
(ii) Graphical User Interface (GUI)
GUI lets users run programs or give instructions to the computer in the form of icons,
menus and other visual options.
(iii) Touch-based interface
Today smartphones, tablets and PCs allow users to interact with the system simply
using the touch input. Using the touch screen, a user provides inputs to the OS, which
are interpreted by the OS as commands like opening an app, closing an app, dialing a
number, scrolling across apps.
(iv) Voice-based interface (VUI)
VUI enables you to interact with technology using spoken commands instead of
typing or clicking. By combining speech recognition and natural language processing
(NLP).
(v) Gesture-based interface
Gesture-based interfaces attempt first to recognize gestures as commands. They
distinguish continuous physical movements of the users, recognizing the hands,
fingers, face, head etc.
Functions of Operating System
(i) Process management
Assign CPU time to various process schedules tasks, and handle multitasking to keep
the system running smoothly.
(ii) Memory management
Memory management in an OS control how data is stored and organized in primary
and secondary storage.
(iii) File management
File management in an OS organizes and controls how data is stored, named and
accessed on storage devices, making it easy for users to find and use their files.
(iv) Device management
Device management in an OS control how the computer communicates with hardware
devices like printers or disks, using drivers and techniques to ensure smooth and
efficient operation.