Unit 4
Unit 4
MROM: Masked ROM is hardwired and pre-programmed ROM. Any content that is once
written cannot be altered anyhow.
PROM: Programmable ROM can be modified once by the user. The user buys a blank PROM
and writes the desired content but once written content cannot be altered.
EPROM: Erasable and Programmable ROM Content can be changed by erasing the initial
content which can be done by exposing EPROM to UV radiation. This exposure to ultra-violet
light dissipates the charge on ROM and content can be rewritten on it.
EEPROM: Electrically Erasable and Programmable ROM Content can be changed by erasing
the initial content which could be easily erased electrically. However, one byte can be erased at
a time instead of deleting in one go. Hence, reprogramming of EEPROM is a slow process.
2. Secondary storage
primary memory is volatile and has limited capacity. So, it is important to have another form of memory that has a
larger storage capacity and from which data and programs are not lost when the computer is turned off. Such a type of
memory is called secondary memory. Secondary or external storage devices have a much larger storage capacity and
the cost of secondary memory is less as compared to primary memory.
Secondary storage, sometimes termed auxiliary storage, refers to the storage of data that is not accessed frequently as
the data in primary storage. It is a non-volatile memory medium that preserves data until and unless it has been
deleted or overwritten. Secondary storage enables organizations to store data ranging from a few megabytes to
petabytes.
Why is secondary storage used?
The main function of secondary storage is to complement primary storage. Data that doesn’t need primary storage
gets migrated to the secondary storage devices, in turn freeing up space and improving the performance of the
primary storage devices.
In particular, organizations use secondary storage for backup and disaster recovery data and archival data. As far as
backup is involved, most organizations focus on backing up the critical workloads — data that is accessed regularly
or most frequently and is prioritized as part of a disaster recovery plan. However, not all data gets accessed or
used on a regular basis. For those, a secondary storage device is ideal since it provides data protection and
archiving features at lower costs. Generally, secondary storage technology is much cheaper than primary storage.
This type of storage can work perfectly on economical devices more suitable for long-term storage.
Classification of secondary storage devices.
1. Magnetic Tape
It is a medium for magnetic recording,
made of a thin, magnetizable coating
on a long, narrow strip of plastic film.
Features of magnetic tapes include:
Large storage capacity: Tapes can hold several terabytes of data, making them appropriate for long-
term storage needs and backups of vast amounts of data, such as entire system images.
Sequential access: Tapes are read and written sequentially, meaning accessing specific data on a tape
can be time-consuming as other data may need to be read first.
High durability: Magnetic tapes are less SENSITIVE to physical damage compared to HDDs, leading
to a longer lifespan and increased reliability for long-term storage.
Cost-effective: Tapes provide a very low cost per gigabyte of storage, making them a budget-friendly
choice for archival and backup purposes.
2. Magnetic disks:
A magnetic disk is a storage device that uses a magnetization process to write, rewrite and access
data. It is covered with a magnetic coating and stores data in the form of tracks, spots and sectors.
Hard disks, zip disks and floppy disks are common examples of magnetic disks.
(a)Hard Disk: It is a storage device (HDD) that stores and retrieves data using magnetic
storage.
• It is a non-volatile storage device that can be modified or deleted n number of times without any
problem.
• Most computers and laptops have HDDs as their secondary storage device.
• They consist of one or more rotating disks coated with a magnetic material, along with read/write
heads that float above the surface to access the data.
• The read-write speed of HDDs is not so fast but decent.
• It ranges from a few GBs to a few and more TB.
• It stores the operating system, application , documents, files, pictures and music.
• It comes in both variants, internal as well as external.
(b) Floppy Disk:
A floppy disk is a square plastic case.
A floppy disk is a flexible disk with a magnetic coating on it, and it is packaged
inside a protective plastic envelope.
These disk are available in sizes like 8 inches, 5.25 inches, and 3.5 inches.
These are among the oldest portable storage devices that could store up to
1.44 MB of data, but now they are not used due to very little memory storage.
3. Optical Disk:
An optical disk is any computer disk that uses optical storage techniques and
technology to read and write data.
It is a computer storage disk that stores data digitally and uses low power laser beams
to read and write data.
The data is read while bouncing the laser beam on the surface of the disk.
Optical Storage Devices is also secondary storage device. It is a removable storage
device.
It is known as Digital Versatile Disc. DVDs are circular flat optical discs used to store data. It comes in
two different sizes one is 4.7GB single-layer discs and another one is 8.5GB double-layer discs. DVDs
look like CDs but the storage capacity of DVDs is more than as compared to CDs.
It is of two types:
DVD-R: It stands for Digital Versatile Disc read-only. In this type of DVD, once the data is
written can not be erased. It is read-only. It is generally used to write movies, etc.
DVD-RW: It stands for Digital Versatile Disc Read Write. In this type of DVD, you can easily
write or erase data multiple times.
(c) Blu-ray Disc (BD):
It is like third generation optical disc, after CD and DVDs.
Blu-ray discs have even higher storage capacities than DVDs, with standard
capacities ranging from 25 GB to 50 GB capable of storing several hours of
high definition video.
They are primarily used for high-definition video content and large multimedia
files, as well as computer data storage.
3. Flash Memory Devices:
Flash memory is a non volatile memory chip used for storage and for transferring data between a personal computer and digital
devices. It has the ability to be electronically reprogrammed and erased. It is a cheaper and more portable storage device. It is the
most commonly used device to store data because is more reliable and efficient as compared to other storage devices. Some of
the commonly used flash memory devices are:
(a) Pen Drive: It is also known as a USB flash drive that includes flash memory with an integrated USB interface. We can directly
connect these devices to our computers and laptops and read/write data into them in a much faster and more efficient way. These
devices are very portable. It ranges from 1GB to 256GB generally.
(b) SSD: It stands for Solid State Drive, a mass storage device like HDD.SSD are most common storage device today. SSDs are
smaller and faster than hard disk. SSDs are noiseless and allow PCs to be thinner and more lightweight. It is more durable because
it does not contain optical disks inside like hard disks. It needs less power as compared to hard disks, is lightweight, and has 10
times faster read and writes speed as compared to hard disks. But, these are costly as well. Unlike hard drives, SSDs don’t have
any moving parts and thus they’re called solid-state drives. It ranges from 150GB to a few more TB.
(c) SD Card: It is known as a Secure Digital Card. It is generally used with electronic devices like phones, digital
cameras, etc. to store larger data. It is portable and the size of the SD card is also small so that it can easily fit
into electronic devices. It is available in different sizes like 2GB, 4GB, 8GB, etc.
(d) Memory Card: It is generally used in digital cameras. printers, game consoles, etc. It is also used to store
large amounts of data and is available in different sizes. To run a memory card on a computer you require a
separate memory card reader.
(e) Multimedia Card: It is also known as MMC. It is an integrated circuit that is generally used in-car radios,
digital cameras, etc. It is an external device to store data/information.
Key Characteristics of Secondary Storage
Devices
Various types of secondary storage devices exist, each with their unique features and
attributes. However, some key characteristics are common among these devices:
Non-volatile: Secondary storage devices do not lose data when the computer is
powered off, ensuring that information is kept intact over time.
High capacity: As mentioned earlier, secondary storage devices provide a larger storage
space for a wide range of data types and file sizes.
Cost-effective: Per unit of storage, secondary storage devices are generally less
expensive than primary storage, making them a more economical option for extensive data
storage.
SOFTWARE AND ITS NEED
What is a Software?
Software is a collection of instructions, data, or computer programs that are used to run
machines and carry out particular activities.
Programs/set of instructions that instruct the user about the machine and tell the hardware
what to do are called computer softwarw.
In other words, the software is a computer program that provides a set of instructions to
execute a user’s commands and tell the computer what to do.
For example like MS-Word, MS-Excel, PowerPoint, etc.
Device Driver: A device driver is a program or software that controls a device and helps that device to
perform its functions. Every device like a printer, mouse, modem, etc. needs a driver to connect with the
computer system eternally. So, when you connect a new device with your computer system, first you need to
install the driver of that device so that your operating system knows how to control or manage that device.
2. Application Software
Software that performs special functions or provides functions that are much more than the
basic operation of the computer is known as application software. Or in other words,
application software is designed to perform a specific task for end-users. It is a product or a
program that is designed only to fulfill end-users’ requirements.
It includes word processors, spreadsheets, database management, Ms Paint, Ms Power Point,
Tally , etc.
Types of Application Software
There are different types of application software and those are:
General Purpose Software: This type of application software is used for a variety
of tasks and it is not limited to performing a specific task only. For example, MS-
Word, MS-Excel, PowerPoint, etc.
Customized Software: This type of application software is used or designed to
perform specific tasks or functions or designed for specific organizations. For
example, railway reservation system, airline reservation system, invoice
management system, etc.
Utility Software: This type of application software is used to support the
computer infrastructure. It is designed to analyze, configure, optimize and
maintains the system, and take care of its requirements as well. For example,
antivirus, disk fragmenter, memory tester, disk repair, disk cleaners, registry
cleaners, disk space analyzer, etc.
Word Processors – Word processor software, as the name suggests, is designed for making
notes, typing data, and documentation. Users can also format, store, and print their data and
documents respectively using word processes.
Spreadsheet software - Spreadsheet software is a type of computer program that enables a
user to perform numerical functions and explore numbers through an automated version of an
accounting worksheet. Best example of spreadsheet software is Microsoft Excel.
Graphics Software: Graphics Software is also used in large amounts. There are so many
applications where it is used. Some of the applications include Canva, Adobe, PhotoShop, etc.
Presentation Software: It is a type of application software that is used to present some
applications like newly launched functions, products, etc. For Example, Microsoft Power point.
Database Software – Also known as Database Management System (DBMS), database software
allows users to perform various operations on quickly retrieved data, such as creation,
management, organization, and modification. Some popular examples of DBMS are MS Access,
dBase, MySQL, Oracle, Microsoft SQL Server, and FileMaker.
Operating System :
An Operating System (OS) is an interface between a computer
user and computer hardware. An operating system is a software
(system software) which performs all the basic tasks like file
management, memory management, process management,
handling input and output, and controlling peripheral devices
such as disk drives and printers.
Memory Management
Processor Management
Device Management
File Management
Storage Management
Security
Control over system performance
Job accounting
Error detecting aids
Coordination between other software and users
Memory Management: Refers to the management of primary memory. The operating system (O S) has to
keep track, how much memory has been used and by whom.
An Operating System does the following activities for memory management −
Keeps tracks of primary memory, i.e., what part of it are in use by whom, what part are not in use.
In multiprogramming, the OS decides which process will get memory when and how much.
Allocates the memory when a process requests it to do so.
De-allocates the memory when a process no longer needs it or has been terminated.
Process Management: In multiprogramming environment, the OS decides which process gets the
processor when and for how much time. This function is called process scheduling. An Operating System does the
following activities for processor management −
Keeps tracks of processor and status of process. The program responsible for this task is known as traffic
controller.
Allocates the processor (CPU) to a process.
De-allocates processor when a process is no longer required.
Device Management: An Operating System manages device communication via their
respective drivers. It does the following activities for device management −
Keeps tracks of all devices. Program responsible for this task is known as the I/O controller.
Decides which process gets the device when and for how much time.
Allocates the device in the efficient way.
De-allocates devices.
File Management: A file system is normally organized into directories for easy navigation and
usage. These directories may contain files and other directions.
An Operating System does the following activities for file management −
Keeps track of information, location, uses, status etc. The collective facilities are often known as file
system.
Decides who gets the resources.
Allocates the resources.
De-allocates the resources.
Storage Management : The file system mechanism used for the management of the storage. All
the data stores in various tracks of Hard disks that all managed by the storage manager. It
included Hard Disk. As a backup storage used secondary memory.
Security − By means of password and similar other techniques, it prevents unauthorized access to
programs and data.
Job accounting − Keeping track of time and resources used by various jobs and users.
Error detecting aids − error messages, and other debugging and error detecting aids.
Types of Operating System (OS)
Following are the popular types of OS (Operating System):
These types of OSs serve real-time systems. The time interval required to process and respond to inputs
is very small. This time interval is called response time.
Real-time systems are used when there are time requirements that are very strict like missile systems,
air traffic control systems, robots, medical imaging system, etc.
Two types of Real-Time Operating System which are as follows:
Hard Real-Time Systems:
These OSs are meant for applications where time constraints are very strict and even the shortest
possible delay is not acceptable. These systems are built for saving life like automatic parachutes or
airbags which are required to be readily available in case of any accident. Virtual memory is rarely
found in these stems.
Soft Real-Time Systems:
These OSs are for applications where for time-constraint is less strict.
Examples of Real-Time Operating Systems are: Scientific experiments, medical imaging systems,
industrial control systems, weapon systems, robots, air traffic control systems, etc.
Multi-User Operating System
A multi-user operating system is an operating system that permits several users to access a
single system running to a single operating system. These systems are frequently quite
complex, and they must manage the tasks that the various users connected to them require.
Users will usually sit at terminals or computers connected to the system via a network and
other system machines. A multi-user operating system varies from a connected single-user
operating system in that each user accesses the same operating system from different machines.
This multi-user operating system is now often used in large organizations, the government
sector, educational institutions like large universities, and on servers' side such as Ubuntu
Server or Windows Server. These servers allow several users to access the operating system,
kernel, and hardware at the same time.
Examples:
Single user OS
1981
CLU Interface
GU Interface
PROGRAMMING LANGUAGES
As we know, to communicate with a person, we need a specific language, similarly to
communicate with computers, programmers also need a language is called Programming
language.
Before learning the programming language, let's understand what is language?
What is Language?
Language is a mode of communication that is used to share ideas, opinions with each other.
For example, if we want to teach someone, we need a language that is understandable by both
communicators.
A computer or a system is operated by given a set of rules and instruction to perform some task.
These sat of rules and instructions are able to control the working of computer or any automated
and/or manipulated machine. To control the computer system using these sequential set of
grammatical rules are known as programming language. In other words, ‘A programming language is
a vocabulary and a set of grammatical rules for instructing a computer system to perform any specific
task’. Hence we can say that a programming language plays a very important role to control and
operating a computer system.
Machine level languages(First Generation of programming language):
It’s the lowest level and named as first generation of programming language. Machine level language consist only
two condition i.e. either true (1) or false (0); this type of language known as binary language. A computer system
could understand only binary language i.e. all the instruction feed into the computer system must be in the form of
0 or 1. Machine level languages are very tough to understand by the humans.
Advantages of machine level language:
Machine level languages are directly interacting with computer system.
There is no requirement of software of conversion like compiler or interpreters.
It takes very less time to execute a program, because there is no conversion take place.
Disadvantages of machine language:
Its machine dependent language i.e. individual program required for each machine.
To develop a program in machine language, it’s too hard to understand and program.
Its time consuming to develop new programs.
Debugging process is very hard because of finding errors process is typical.
Machine language is not portable language.
Assembly level languages (Second Generation programming language):
It’s a middle level and named as second generation programming language. It contains the same instruction as machine
level language, but the instructions and the variables have specific name or called commands instead of being just
binary numbers. It also uses symbols to describe field of instructions. Every aspect of machine variable in program,
assembly language uses one statement per machine instruction. It managed explicitly all instruction like register
allocation, call, stack, timer, jump, loop etc. To understand the assembly language computer must require an assembler
which takes a part in between assembly language and computer system to convert the assembly instructions into the
machine language. This assembler is software or a set of program which translates assemble language programming
instruction into the machine language. For example; LOAD ADD STORE
Advantages of Assembly language:
It is easily understood by human because it is uses statements instead of binary digits.
To develop a program it takes less time.
Debugging and troubleshoot is easy due to easily find error.
It’s a portable language.
Disadvantages of Assembly language:
It’s a machine dependent language due to that program design for one machine no use of other machine.
Sometime it’s hard to understand the statement or command use.
High-level language (Third Generation): High level language is the upper level language and also known
as third generation programming language. It does consider as high level because, which language comes under this category are
closer to human languages. Hence this is highly understood programming language by human. There have many examples of high
level languages such as, FORTRAN, Pascal, C, C++, JAVA, ADA, COBOL, LISP, Prolog etc.
The first high level programming language was written in 1950s. Those programs written in high level language must require
software or a set of program to translate that program into machine understandable. This software called compiler and/or
interpreter. The main job of compiler and translator is to take the source code of the program and convert that code into the machine
understood code.