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

Oops

Storage management refers to the processes used to optimize storage devices and protect data integrity. It manages data storage equipment and keeps data and storage equipment safe. Storage management involves security, virtualization, provisioning, and automation to manage storage capacity, performance, reliability, recoverability, and capacity. It aims to simplify storage management, reduce time consumption, and improve system performance. However, storage management faces limitations such as limited physical storage capacity, performance degradation with increased usage, and complexity and costs associated with large storage environments.

Uploaded by

satya kamble
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Oops

Storage management refers to the processes used to optimize storage devices and protect data integrity. It manages data storage equipment and keeps data and storage equipment safe. Storage management involves security, virtualization, provisioning, and automation to manage storage capacity, performance, reliability, recoverability, and capacity. It aims to simplify storage management, reduce time consumption, and improve system performance. However, storage management faces limitations such as limited physical storage capacity, performance degradation with increased usage, and complexity and costs associated with large storage environments.

Uploaded by

satya kamble
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 19

storage Management is defined as it refers to the management of the data

storage equipment’s that are used to store the user/computer generated data.
Hence it is a tool or set of processes used by an administrator to keep your data
and storage equipment’s safe. Storage management is a process for users to
optimize the use of storage devices and to protect the integrity of data for any
media on which it resides and the category of storage management generally
contain the different type of subcategories covering aspects such as security,
virtualization and more, as well as different types of provisioning or automation,
which is generally made up the entire storage management software market.
Storage management key attributes: Storage management has some key
attribute which is generally used to manage the storage capacity of the system.
These are given below:
1. Performance
2. Reliability
3. Recoverability
4. Capacity
Feature of Storage management: There is some feature of storage
management which is provided for storage capacity. These are given below:
1. Storage management is a process that is used to optimize the use of storage
devices.
2. Storage management must be allocated and managed as a resource in
order to truly benefit a corporation.
3. Storage management is generally a basic system component of information
systems.
4. It is used to improve the performance of their data storage resources.
Advantage of storage management: There are some advantage of storage
management which are given below:
 It becomes very simple to manage a storage capacity.
 It generally reduces the time consumption.
 It improves the performance of system.
 In virtualization and automation technologies, it can help an organization
improve its agility.
Limitations of storage management:
 Limited physical storage capacity: Operating systems can only manage the
physical storage space that is available, and as such, there is a limit to how
much data can be stored.
 Performance degradation with increased storage utilization: As more data is
stored, the system’s performance can decrease due to increased disk
access time, fragmentation, and other factors.
 Complexity of storage management: Storage management can be complex,
especially as the size of the storage environment grows.
 Cost: Storing large amounts of data can be expensive, and the cost of
additional storage capacity can add up quickly.
 Security issues: Storing sensitive data can also present security risks, and
the operating system must have robust security features in place to prevent
unauthorized access to this data.
 Backup and Recovery: Backup and recovery of data can also be
challenging, especially if the data is stored on multiple systems or devices.

A file system is a method an operating system uses to store, organize,


and manage files and directories on a storage device. Some common types of
file systems include:
1. FAT (File Allocation Table): An older file system used by older versions of
Windows and other operating systems.
2. NTFS (New Technology File System): A modern file system used by
Windows. It supports features such as file and folder permissions,
compression, and encryption.
3. ext (Extended File System): A file system commonly used on Linux
and Unix-based operating systems.
4. HFS (Hierarchical File System): A file system used by macOS.
5. APFS (Apple File System): A new file system introduced by Apple for their
Macs and iOS devices.
The advantages of using a file system
1. Organization: A file system allows files to be organized into directories and
subdirectories, making it easier to manage and locate files.
2. Data protection: File systems often include features such as file and folder
permissions, backup and restore, and error detection and correction, to
protect data from loss or corruption.
3. Improved performance: A well-designed file system can improve the
performance of reading and writing data by organizing it efficiently on disk.
Disadvantages of using a file system
1. Compatibility issues: Different file systems may not be compatible with
each other, making it difficult to transfer data between different operating
systems.
2. Disk space overhead: File systems may use some disk space to store
metadata and other overhead information, reducing the amount of space
available for user data.
3. Vulnerability: File systems can be vulnerable to data corruption, malware,
and other security threats, which can compromise the stability and security
of the system.
A file is a collection of related information that is recorded on secondary
storage. Or file is a collection of logically related entities. From the user’s
perspective, a file is the smallest allotment of logical secondary storage.
The name of the file is divided into two parts as shown below:
 name
 extension, separated by a period.
The Following Issues Are Handled By The File
Syst4em
We’ve seen a variety of data structures where the file could be kept. The file
system‘s job is to keep the files organized in the best way possible.
A free space is created on the hard drive whenever a file is deleted from it. To
reallocate them to other files, many of these spaces may need to be recovered.
Choosing where to store the files on the hard disc is the main issue with files
one block may or may not be used to store a file. It may be kept in the
disk’s non-contiguous blocks. We must keep track of all the blocks where the
files are partially located.
Files Attributes And Their Operations
Attributes Types Operations

Name Doc Create

Type Exe Open

Size Jpg Read

Creation Data Xis Write

Author C Append

Last Modified Java Truncate

protection class Delete

Close
Usual
File type extension Function

Executable exe, com, bin Read to run machine language program

Object obj, o Compiled, machine language not linked

C, java, pas,
Source Code Source code in various languages
asm, a

Batch bat, sh Commands to the command interpreter

Text txt, doc Textual data, documents

Word
wp, tex, rrf, doc Various word processor formats
Processor

Related files grouped into one compressed


Archive arc, zip, tar
file

Multimedia mpeg, mov, rm For containing audio/video information

Markup xml, html, tex It is the textual data and documents

It contains libraries of routines for


Library lib, a ,so, dll
programmers

It is a format for printing or viewing an


Print or View gif, pdf, jpg
ASCII or binary file.

FILE DIRECTORIES
The collection of files is a file directory. The directory contains information about
the files, including attributes, location, and ownership. Much of this information,
especially that is concerned with storage, is managed by the operating system.
The directory is itself a file, accessible by various file management routines.
Information contained in a device directory is:
 Name
 Type
 Address
 Current length
 Maximum length
 Date last accessed
 Date last updated
 Owner id
 Protection information
The operation performed on the directory are:
 Search for a file
 Create a file
 Delete a file
 List a directory
 Rename a file
 Traverse the file system
The advantages of maintaining directories are:
 Efficiency: A file can be located more quickly.
 Naming: It becomes convenient for users as two users can have same
name for different files or may have different name for same file.
 Grouping: Logical grouping of files can be done by properties e.g. all java
programs, all games etc.
SINGLE-LEVEL DIRECTORY
In this, a single directory is maintained for all the users.
 Naming problem: Users cannot have the same name for two files.
 Grouping problem: Users cannot group files according to their needs.

TWO-LEVEL DIRECTORY
In this separate directories for each user is maintained.

 Path name: Due to two levels there is a path name for every file to locate
that file.
 Now, we can have the same file name for different users.
 Searching is efficient in this method.

TREE-STRUCTURED DIRECTORY
0 seconds of 15 secondsVolume 0%
This ad will end in 13

The directory is maintained in the form of a tree. Searching is efficient and also
there is grouping capability. We have absolute or relative path name for a file.
FILE ALLOCATION METHODS
Continuous Allocation
A single continuous set of blocks is allocated to a file at the time of file creation.
Thus, this is a pre-allocation strategy, using variable size portions. The file
allocation table needs just a single entry for each file, showing the starting block
and the length of the file. This method is best from the point of view of the
individual sequential file. Multiple blocks can be read in at a time to improve I/O
performance for sequential processing. It is also easy to retrieve a single block.
For example, if a file starts at block b, and the ith block of the file is wanted, its
location on secondary storage is simply b+i-1.
Disadvantage
 External fragmentation will occur, making it difficult to find contiguous blocks
of space of sufficient length. A compaction algorithm will be necessary to
free up additional space on the disk.
 Also, with pre-allocation, it is necessary to declare the size of the file at the
time of creation.
Linked Allocation(Non-contiguous allocation)
Allocation is on an individual block basis. Each block contains a pointer to the
next block in the chain. Again the file table needs just a single entry for each
file, showing the starting block and the length of the file. Although pre-allocation
is possible, it is more common simply to allocate blocks as needed. Any free
block can be added to the chain. The blocks need not be continuous. An
increase in file size is always possible if a free disk block is available. There is
no external fragmentation because only one block at a time is needed but there
can be internal fragmentation but it exists only in the last disk block of the file.
Disadvantage
 Internal fragmentation exists in the last disk block of the file.
 There is an overhead of maintaining the pointer in every disk block.
 If the pointer of any disk block is lost, the file will be truncated.
 It supports only the sequential access of files.
Indexed Allocation
It addresses many of the problems of contiguous and chained allocation. In this
case, the file allocation table contains a separate one-level index for each file:
The index has one entry for each block allocated to the file. The allocation may
be on the basis of fixed-size blocks or variable-sized blocks. Allocation by
blocks eliminates external fragmentation, whereas allocation by variable-size
blocks improves locality. This allocation technique supports both sequential and
direct access to the file and thus is the most popular form of file allocation.
Disk Free Space Management
Just as the space that is allocated to files must be managed, so the space that
is not currently allocated to any file must be managed. To perform any of the file
allocation techniques, it is necessary to know what blocks on the disk are
available. Thus we need a disk allocation table in addition to a file allocation
table. The following are the approaches used for free space management.
1. Bit Tables: This method uses a vector containing one bit for each block on
the disk. Each entry for a 0 corresponds to a free block and each 1
corresponds to a block in use.
For example 00011010111100110001
In this vector every bit corresponds to a particular block and 0 implies that
that particular block is free and 1 implies that the block is already occupied.
A bit table has the advantage that it is relatively easy to find one or a
contiguous group of free blocks. Thus, a bit table works well with any of the
file allocation methods. Another advantage is that it is as small as possible.
2. Free Block List: In this method, each block is assigned a number
sequentially and the list of the numbers of all free blocks is maintained in a
reserved block of the disk.

he allocation methods define how the files are stored in the disk blocks. There
are three main disk space or file allocation methods.
 Contiguous Allocation
 Linked Allocation
 Indexed Allocation
The main idea behind these methods is to provide:
 Efficient disk space utilization.
 Fast access to the file blocks.
All the three methods have their own advantages and disadvantages as
discussed below:
1. Contiguous Allocation
In this scheme, each file occupies a contiguous set of blocks on the disk. For
example, if a file requires n blocks and is given a block b as the starting
location, then the blocks assigned to the file will be: b, b+1, b+2,……b+n-
1. This means that given the starting block address and the length of the file (in
terms of blocks required), we can determine the blocks occupied by the file.
The directory entry for a file with contiguous allocation contains
 Address of starting block
 Length of the allocated portion.
The file ‘mail’ in the following figure starts from the block 19 with length = 6
blocks. Therefore, it occupies 19, 20, 21, 22, 23, 24 blocks.

Advantages:
 Both the Sequential and Direct Accesses are supported by this. For direct
access, the address of the kth block of the file which starts at block b can
easily be obtained as (b+k).
 This is extremely fast since the number of seeks are minimal because of
contiguous allocation of file blocks.
0 seconds of 15 secondsVolume 0%
This ad will end in 11

Disadvantages:
 This method suffers from both internal and external fragmentation. This
makes it inefficient in terms of memory utilization.
 Increasing file size is difficult because it depends on the availability of
contiguous memory at a particular instance.
2. Linked List Allocation
In this scheme, each file is a linked list of disk blocks which need not
be contiguous. The disk blocks can be scattered anywhere on the disk.
The directory entry contains a pointer to the starting and the ending file block.
Each block contains a pointer to the next block occupied by the file.
The file ‘jeep’ in following image shows how the blocks are randomly
distributed. The last block (25) contains -1 indicating a null pointer and does not
point to any other block.

Advantages:
 This is very flexible in terms of file size. File size can be increased easily
since the system does not have to look for a contiguous chunk of memory.
 This method does not suffer from external fragmentation. This makes it
relatively better in terms of memory utilization.
Disadvantages:
 Because the file blocks are distributed randomly on the disk, a large number
of seeks are needed to access every block individually. This makes linked
allocation slower.
 It does not support random or direct access. We can not directly access the
blocks of a file. A block k of a file can be accessed by traversing k blocks
sequentially (sequential access ) from the starting block of the file via block
pointers.
 Pointers required in the linked allocation incur some extra overhead.
3. Indexed Allocation
In this scheme, a special block known as the Index block contains the pointers
to all the blocks occupied by a file. Each file has its own index block. The ith
entry in the index block contains the disk address of the ith file block. The
directory entry contains the address of the index block as shown in the image:

Advantages:
 This supports direct access to the blocks occupied by the file and therefore
provides fast access to the file blocks.
 It overcomes the problem of external fragmentation.
Disadvantages:
 The pointer overhead for indexed allocation is greater than linked allocation.
 For very small files, say files that expand only 2-3 blocks, the indexed
allocation would keep one entire block (index block) for the pointers which is
inefficient in terms of memory utilization. However, in linked allocation we
lose the space of only 1 pointer per block.
For files that are very large, single index block may not be able to hold all the
pointers.
Following mechanisms can be used to resolve this:
1. Linked scheme: This scheme links two or more index blocks together for
holding the pointers. Every index block would then contain a pointer or the
address to the next index block.
2. Multilevel index: In this policy, a first level index block is used to point to the
second level index blocks which inturn points to the disk blocks occupied by
the file. This can be extended to 3 or more levels depending on the
maximum file size.
3. Combined Scheme: In this scheme, a special block called the Inode
(information Node) contains all the information about the file such as the
name, size, authority, etc and the remaining space of Inode is used to store
the Disk Block addresses which contain the actual file as shown in the
image below. The first few of these pointers in Inode point to the direct
blocks i.e the pointers contain the addresses of the disk blocks that contain
data of the file. The next few pointers point to indirect blocks. Indirect blocks
may be single indirect, double indirect or triple indirect. Single Indirect
block is the disk block that does not contain the file data but the disk
address of the blocks that contain the file data. Similarly, double indirect
blocks do not contain the file data but the disk address of the blocks that
contain the address of the blocks containing the file data.

Introduction:

Free space management is a critical aspect of operating systems as it involves


managing the available storage space on the hard disk or other secondary
storage devices. The operating system uses various techniques to manage free
space and optimize the use of storage devices. Here are some of the commonly
used free space management techniques:
1. Linked Allocation: In this technique, each file is represented by a linked list of
disk blocks. When a file is created, the operating system finds enough free
space on the disk and links the blocks of the file to form a chain. This
method is simple to implement but can lead to fragmentation and wastage of
space.
2. Contiguous Allocation: In this technique, each file is stored as a contiguous
block of disk space. When a file is created, the operating system finds a
contiguous block of free space and assigns it to the file. This method is
efficient as it minimizes fragmentation but suffers from the problem of
external fragmentation.
3. Indexed Allocation: In this technique, a separate index block is used to store
the addresses of all the disk blocks that make up a file. When a file is
created, the operating system creates an index block and stores the
addresses of all the blocks in the file. This method is efficient in terms of
storage space and minimizes fragmentation.
4. File Allocation Table (FAT): In this technique, the operating system uses a
file allocation table to keep track of the location of each file on the disk.
When a file is created, the operating system updates the file allocation table
with the address of the disk blocks that make up the file. This method is
widely used in Microsoft Windows operating systems.
5. Volume Shadow Copy: This is a technology used in Microsoft Windows
operating systems to create backup copies of files or entire volumes. When
a file is modified, the operating system creates a shadow copy of the file and
stores it in a separate location. This method is useful for data recovery and
protection against accidental file deletion.
Overall, free space management is a crucial function of operating systems, as it
ensures that storage devices are utilized efficiently and effectively.
The system keeps tracks of the free disk blocks for allocating space to files
when they are created. Also, to reuse the space released from deleting the files,
free space management becomes crucial. The system maintains a free space
list which keeps track of the disk blocks that are not allocated to some file or
directory. The free space list can be implemented mainly as:
1. Bitmap or Bit vector – A Bitmap or Bit Vector is series or collection of bits
where each bit corresponds to a disk block. The bit can take two values: 0
and 1: 0 indicates that the block is allocated and 1 indicates a free block.
The given instance of disk blocks on the disk in Figure 1 (where green
blocks are allocated) can be represented by a bitmap of 16 bits

as: 0000111000000110. Advantages –


 Simple to understand.
 Finding the first free block is efficient. It requires scanning the words (a
group of 8 bits) in a bitmap for a non-zero word. (A 0-valued word has all
bits 0). The first free block is then found by scanning for the first 1 bit in
the non-zero word.
2. Linked List – In this approach, the free disk blocks are linked together i.e. a
free block contains a pointer to the next free block. The block number of the
very first disk block is stored at a separate location on disk and is also
cached in memory. In Figure-2, the
free space list head points to Block 5 which points to Block 6, the next free
block and so on. The last free block would contain a null pointer indicating
the end of free list. A drawback of this method is the I/O required for free
space list traversal.
3. Grouping – This approach stores the address of the free blocks in the first
free block. The first free block stores the address of some, say n free blocks.
Out of these n blocks, the first n-1 blocks are actually free and the last block
contains the address of next free n blocks. An advantage of this approach is
that the addresses of a group of free disk blocks can be found easily.
4. Counting – This approach stores the address of the first free disk block and
a number n of free contiguous disk blocks that follow the first block. Every
entry in the list would contain:
1. Address of first free disk block
2. A number n

Here are some advantages and disadvantages of free space


management techniques in operating systems:

Advantages:

1. Efficient use of storage space: Free space management techniques help to


optimize the use of storage space on the hard disk or other secondary
storage devices.
2. Easy to implement: Some techniques, such as linked allocation, are simple
to implement and require less overhead in terms of processing and memory
resources.
3. Faster access to files: Techniques such as contiguous allocation can help to
reduce disk fragmentation and improve access time to files.

Disadvantages:

1. Fragmentation: Techniques such as linked allocation can lead to


fragmentation of disk space, which can decrease the efficiency of storage
devices.
2. Overhead: Some techniques, such as indexed allocation, require additional
overhead in terms of memory and processing resources to maintain index
blocks.
3. Limited scalability: Some techniques, such as FAT, have limited scalability in
terms of the number of files that can be stored on the disk.
4. Risk of data loss: In some cases, such as with contiguous allocation, if a file
becomes corrupted or damaged, it may be difficult to recover the data.
5. Overall, the choice of free space management technique depends on the
specific requirements of the operating system and the storage devices being
used. While some techniques may offer advantages in terms of efficiency
and speed, they may also have limitations and drawbacks that need to be
considered.

You might also like