0% found this document useful (1 vote)
203 views

File Management: Understanding Operating Systems, Fourth Edition

The document discusses file management in operating systems. It describes the objectives of understanding file management, including the structure of file management systems, file naming conventions, different record formats, file storage techniques, file access methods, security, and data compression. It also explains key concepts regarding the file manager, interacting with the file manager, volume configuration, subdirectories, file naming, file organization, and physical file organization.

Uploaded by

rekxy
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
203 views

File Management: Understanding Operating Systems, Fourth Edition

The document discusses file management in operating systems. It describes the objectives of understanding file management, including the structure of file management systems, file naming conventions, different record formats, file storage techniques, file access methods, security, and data compression. It also explains key concepts regarding the file manager, interacting with the file manager, volume configuration, subdirectories, file naming, file organization, and physical file organization.

Uploaded by

rekxy
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 56

Chapter 8

File Management

Understanding Operating Systems,


Fourth Edition
Objectives

You will be able to describe:


• The fundamentals of file management and the
structure of the file management system
• File-naming conventions, including the role of
extensions
• The difference between fixed-length and variable-
length record format
• The advantages and disadvantages of contiguous,
noncontiguous, and indexed file storage techniques
• Comparisons of sequential and direct file access

Understanding Operating Systems, Fourth Edition 2


Objectives (continued)

You will be able to describe:


• The security ramifications of access control
techniques and how they compare
• The role of data compression in file storage

Understanding Operating Systems, Fourth Edition 3


File Management

• File Manager controls every file in system


• Efficiency of File Manager depends on:
– How system’s files are organized (sequential, direct,
or indexed sequential)
– How they’re stored (contiguously, noncontiguously,
or indexed)
– How each file’s records are structured (fixed-length
or variable-length)
– How access to these files is controlled

Understanding Operating Systems, Fourth Edition 4


The File Manager

• File Manager is the software responsible for


creating, deleting, modifying, and controlling
access to files
– Manages the resources used by files
• Responsibilities of File Managers:
– Keep track of where each file is stored
– Use a policy to determine where and how files will be
stored
• Efficiently use available storage space
• Provide efficient access to files

Understanding Operating Systems, Fourth Edition 5


The File Manager (continued)

• Responsibilities of File Managers: (continued)


– Allocate each file when a user has been cleared for
access to it, then record its use
– Deallocate file when it is returned to storage and
communicate its availability to others waiting for it

Understanding Operating Systems, Fourth Edition 6


The File Manager (continued)

• Definitions:
– Field: Group of related bytes that can be identified
by user with name, type, and size
– Record: Group of related fields
– File: Group of related records that contains
information used by specific application programs to
generate reports
• Sometimes called flat file; has no connections to other
files
– Database: Groups of related files that are
interconnected at various levels to give users
flexibility of access to the data stored
Understanding Operating Systems, Fourth Edition 7
The File Manager (continued)

• Program files: Contain instructions


• Data files: Contain data
• Directories: Listings of filenames and their
attributes
• Every program and data file accessed by computer
system, and every piece of computer software, is
treated as a file
• File Manager treats all files exactly the same way
as far as storage is concerned

Understanding Operating Systems, Fourth Edition 8


Interacting with the File Manager

• User communicates with File Manager via specific


commands that may be:
– Embedded in the user’s program
• OPEN, CLOSE, READ, WRITE, and MODIFY
– Submitted interactively by the user
• CREATE, DELETE, RENAME, and COPY
• Commands are device independent
– User doesn’t need to know its exact physical location
on disk pack or storage medium to access a file

Understanding Operating Systems, Fourth Edition 9


Interacting with the File Manager
(continued)

• Each logical command is broken down into


sequence of low-level signals that
– Trigger step-by-step actions performed by device
– Supervise progress of operation by testing status
• Users don’t need to include in each program the
low-level instructions for every device to be used
• Users can manipulate their files by using a simple
set of commands (e.g., OPEN, CLOSE, READ,
WRITE, and MODIFY)

Understanding Operating Systems, Fourth Edition 10


Typical Volume Configuration

• Volume: Each secondary storage unit (removable


or non-removable)
– Each volume can contain many files called multifile
volumes
– Extremely large files are contained in many volumes
called multivolume files
• Each volume in system is given a name
– File Manager writes name & other descriptive info on
an easy-to-access place on each unit

Understanding Operating Systems, Fourth Edition 11


Typical Volume Configuration
(continued)

Figure 8.1: Volume descriptor, stored at the beginning of


each volume

Understanding Operating Systems, Fourth Edition 12


Typical Volume Configuration
(continued)

• Master file directory (MFD): Stored immediately


after volume descriptor and lists:
– Names and characteristics of every file in volume
• File names can refer to program files, data files,
and/or system files
– Subdirectories, if supported by File Manager
– Remainder of the volume used for file storage

Understanding Operating Systems, Fourth Edition 13


Typical Volume Configuration
(continued)

• Disadvantages of a single directory per volume


as supported by early operating systems:
– Long time to search for an individual file
– Directory space would fill up before the disk storage
space filled up
– Users couldn’t create subdirectories
– Users couldn’t safeguard their files from other users
– Each program in the directory needed a unique
name, even those directories serving many users

Understanding Operating Systems, Fourth Edition 14


About Subdirectories

Subdirectories:
• Semi-sophisticated File Managers create MFD
for each volume with entries for files and
subdirectories
• Subdirectory created when user opens account to
access computer
• Improvement from single directory scheme
• Still can’t group files in a logical order to improve
accessibility and efficiency of system

Understanding Operating Systems, Fourth Edition 15


About Subdirectories (continued)

Subdirectories:
• Today’s File Managers allow users to create
subdirectories (Folders)
– Allows related files to be grouped together
• Implemented as an upside-down tree
– Allows system to efficiently search individual
directories
• Path to the requested file may lead through several
directories

Understanding Operating Systems, Fourth Edition 16


About Subdirectories (continued)

Figure 8.2: File directory tree structure


Understanding Operating Systems, Fourth Edition 17
About Subdirectories (continued)

• File descriptor includes the following information:


– Filename
– File type
– File size
– File location
– Date and time of creation
– Owner
– Protection information
– Record size

Understanding Operating Systems, Fourth Edition 18


File Naming Conventions

• Absolute filename (complete filename): Long


name that includes all path info
• Relative filename: Short name seen in directory
listings and selected by user when file is created
• Length of relative name and types of characters
allowed is OS dependent
• Extension: Identifies type of file or its contents
– e.g., BAT, COB, EXE, TXT, DOC
• Components required for a file’s complete name
depend on the operating system

Understanding Operating Systems, Fourth Edition 19


File Organization

• All files composed of records that are of two types:


– Fixed-length records: Easiest to access directly
• Ideal for data files
• Record size critical
– Variable-length records: Difficult to access directly
• Don’t leave empty storage space and don’t truncate
any characters
• Used in files accessed sequentially (e.g., text files,
program files) or files using index to access records
• File descriptor stores record format

Understanding Operating Systems, Fourth Edition 20


File Organization (continued)

Figure 8.4: When data is stored in fixed-length fields (a),


data that extends beyond the fixed size is truncated.
When data is stored in a variable length record format (b),
the size expands to fit the contents, but it takes more time
to access.

Understanding Operating Systems, Fourth Edition 21


Physical File Organization

• The way records are arranged and the


characteristics of the medium used to store them
• On magnetic disks, files can be organized as:
sequential, direct, or indexed sequential
• Considerations in selecting a file organization
scheme:
– Volatility of the data
– Activity of the file
– Size of the file
– Response time

Understanding Operating Systems, Fourth Edition 22


Physical File Organization (continued)

• Sequential record organization: Records are


stored and retrieved serially (one after the other)
– Easiest to implement
– File is searched from its beginning until the requested
record is found
– Optimization features may be built into system to
speed search process
• Select a key field from the record
– Complicates maintenance algorithms
• Original order must be preserved every time records are
added or deleted

Understanding Operating Systems, Fourth Edition 23


Physical File Organization (continued)

• Direct record organization: Uses direct access


files; can be implemented only on direct access
storage devices
– Allows accessing of any record in any order without
having to begin search from beginning of file
– Records are identified by their relative addresses
(addresses relative to beginning of file)
• These logical addresses computed when records are
stored and again when records are retrieved
– Use hashing algorithms

Understanding Operating Systems, Fourth Edition 24


Physical File Organization (continued)

• Advantages of direct record organization:


– Fast access to records
– Can be accessed sequentially by starting at first
relative address and incrementing to get to next record
– Can be updated more quickly than sequential files
– No need to preserve order of the records, so adding or
deleting them takes very little time
• Disadvantages of direct record organization:
– Collision in case of similar keys

Understanding Operating Systems, Fourth Edition 25


Physical File Organization (continued)

• Indexed sequential record organization:


generates index file for record retrieval
– Combines best of sequential & direct access
– Divides ordered sequential file into blocks of equal
size
– Each entry in index file contains highest record key
and physical location of data block
– Created and maintained through ISAM software
– Advantage: Doesn’t create collisions

Understanding Operating Systems, Fourth Edition 26


Physical Storage Allocation

• File Manager must work with files not just as whole


units but also as logical units or records
• Records within a file must have the same format
but they can vary in length
• Records are subdivided into fields
• Record’s structure usually managed by application
programs and not OS
• File storage actually refers to record storage

Understanding Operating Systems, Fourth Edition 27


Physical Storage Allocation
(continued)

Figure 8.6: Types of records in a file


Understanding Operating Systems, Fourth Edition 28
Contiguous Storage
• Records stored one after another
– Advantages:
• Any record can be found once starting address and
size are known
• Direct access easy as every part of file is stored in
same compact area
– Disadvantages:
• Files can’t be expanded easily, and fragmentation

Figure 8.7: Contiguous storage

Understanding Operating Systems, Fourth Edition 29


Noncontiguous Storage
• Allows files to use any available disk storage space
• File’s records are stored in a contiguous manner if
enough empty space
• Any remaining records, and all other additions to
file, are stored in other sections of disk (extents)
– Linked together with pointers
– Physical size of each extent is determined by OS
(usually 256 bytes)

Understanding Operating Systems, Fourth Edition 30


Noncontiguous Storage (continued)
• File extents are linked in following ways:
• Linking at storage level:
– Each extent points to next one in sequence
– Directory entry consists of filename, storage location
of first extent, location of last extent, and total
number of extents, not counting first
• Linking at directory level:
– Each extent listed with its physical address, size,
and pointer to next extent
– A null pointer indicates that it's the last one

Understanding Operating Systems, Fourth Edition 31


Noncontiguous Storage (continued)
• Advantage of noncontiguous storage:
– Eliminates external storage fragmentation and need
for compaction
However:
– Does not support direct access because no easy
way to determine exact location of specific record

Understanding Operating Systems, Fourth Edition 32


Noncontiguous Storage (continued)

Figure 8.8: Noncontiguous file storage with linking taking place


at the storage level
Understanding Operating Systems, Fourth Edition 33
Noncontiguous Storage (continued)

Figure 8.9: Noncontiguous


file storage with linking
taking place at the directory
level

Understanding Operating Systems, Fourth Edition 34


Indexed Storage

• Allows direct record access by bringing pointers


linking every extent of that file into index block
• Every file has its own index block
– Consists of addresses of each disk sector that make
up the file
– Lists each entry in the same order in which sectors
are linked
• Supports both sequential and direct access
• Doesn’t necessarily improve use of storage space
• Larger files may have several levels of indexes

Understanding Operating Systems, Fourth Edition 35


Indexed Storage (continued)

Figure 8.10: Indexed storage


Understanding Operating Systems, Fourth Edition 36
Access Methods

• Dictated by a file’s organization


• Most flexibility is allowed with indexed sequential
files and least with sequential
• File organized in sequential fashion can support
only sequential access to its records
– Records can be of fixed or variable length
• File Manager uses the address of last byte read to
access the next sequential record
• Current byte address (CBA) must be updated
every time a record is accessed

Understanding Operating Systems, Fourth Edition 37


Access Methods (continued)

Figure 8.11: (a) Fixed-length records


(b) Variable-length records

Understanding Operating Systems, Fourth Edition 38


Access Methods (continued)
• Sequential access:
– Fixed-length records:
• CBA = CBA + RL
– Variable-length records:
• CBA = CBA + N + RLk
• Direct access:
– Fixed-length records:
• CBA = (RN – 1) * RL; RN is desired record number
– Variable-length records:
• Virtually impossible because address of desired record
can’t be easily computed

Understanding Operating Systems, Fourth Edition 39


Access Methods (continued)

• Direct access:
– Variable-length records: (continued)
• File Manager must do sequential search through
records
• File Manager can keep table of record numbers and
their CBAs
• Indexed Sequential File:
– Can be accessed either sequentially or directly
– Index file must be searched for the pointer to the
block where the data is stored

Understanding Operating Systems, Fourth Edition 40


Levels in a File Management System

• Each level of file management system is


implemented by using structured and modular
programming techniques
• Each of the modules can be further subdivided into
more specific tasks
• Using the information of basic file system, logical
file system transforms record number to its byte
address
• Verification occurs at every level of the file
management system

Understanding Operating Systems, Fourth Edition 41


Levels in a File Management System
(continued)

Figure 8.12: File Management System


Understanding Operating Systems, Fourth Edition 42
Levels in a File Management System
(continued)

• Verification occurs at every level of the file


management system:
– Directory level: file system checks to see if the
requested file exists
– Access control verification module determines
whether access is allowed
– Logical file system checks to see if the requested
byte address is within the file’s limits
– Device interface module checks to see whether the
storage device exists

Understanding Operating Systems, Fourth Edition 43


Access Control Verification Module

• Each file management system has its own method


to control file access
• Types:
– Access control matrix
– Access control lists
– Capability lists
– Lockword control

Understanding Operating Systems, Fourth Edition 44


Access Control Matrix

• Easy to implement
• Works well for systems with few files & few users
• Results in space wastage because of null entries

Table 8.1: Access Control Matrix

Understanding Operating Systems, Fourth Edition 45


Access Control Lists
• Modification of access control matrix technique
• Each file is entered in list & contains names of users who

are allowed access to it and type of access permitted

Table 8.2: Access Control List

Understanding Operating Systems, Fourth Edition 46


Access Control Lists (continued)

• Contains the name of only those users who may


use file; those denied any access are grouped
under “WORLD”
• List is shortened by putting users into categories:
– SYSTEM: personnel with unlimited access to all files
– OWNER: Absolute control over all files created in
own account
– GROUP: All users belonging to appropriate group
have access
– WORLD: All other users in system

Understanding Operating Systems, Fourth Edition 47


Capability Lists

• Lists every user and the files to which each has access
• Can control access to devices as well as to files

Table 8.3: Capability Lists

Understanding Operating Systems, Fourth Edition 48


Lockwords

• Lockword: similar to a password but protects a


single file
• Advantages:
– Requires smallest amount of storage for file
protection
• Disadvantages:
– Can be guessed by hackers or passed on to
unauthorized users
– Generally doesn’t control type of access to file
• Anyone who knows lockword can read, write, execute,
or delete file

Understanding Operating Systems, Fourth Edition 49


Data Compression

• A technique used to save space in files


• Methods for data compression:
– Records with repeated characters: Repeated
characters are replaced with a code
• e.g., ADAMSbbbbbbbbbb => ADAMSb10
300000000 => 3#8
– Repeated terms: Compressed by using symbols to
represent most commonly used words
• e.g., in a university’s student database common words
like student, course, grade, & department could each
be represented with single character

Understanding Operating Systems, Fourth Edition 50


Data Compression (continued)
Front-end compression: Each entry takes a given
number of characters from the previous entry that they
have in common

Table 8.4: Front-end compression


Understanding Operating Systems, Fourth Edition 51
Case Study: File Management in Linux

• All Linux files are organized in directories that are


connected to each other in a treelike structure
• Linux specifies five types of files used by the
system to determine what the file is to be used for
• Filenames can be up to 255 characters long and
contain alphabetic characters, underscores, and
numbers
• Filename can’t start with a number or a period and
can’t contain slashes or quotes

Understanding Operating Systems, Fourth Edition 52


Case Study: File Management in Linux
(continued)

• Linux users can obtain file directories:


– By opening the appropriate folder on their desktops
– Using the command shell interpreter and typing
commands after the prompt
• Linux allows three types of file permissions: read
(r), write (w), and execute (x)
• Virtual File System (VFS) maintains an interface
between system calls related to files and the file
management code

Understanding Operating Systems, Fourth Edition 53


Case Study: File Management in Linux
(continued)

Table 8.5: Types of Linux files


Understanding Operating Systems, Fourth Edition 54
Summary

• The File Manager controls every file in the system


• Processes user commands (read, write, modify,
create, delete, etc.) to interact with any other file
• Manages access control procedures to maintain the
integrity and security of the files under its control
• File Manager must accommodate a variety of file
organizations, physical storage allocation schemes,
record types, and access methods

Understanding Operating Systems, Fourth Edition 55


Summary (continued)

• Each level of file management system is


implemented with structured and modular
programming techniques
• Verification occurs at every level of the file
management system
• Data compression saves space in files
• Linux specifies five types of files used by the
system
• VFS maintains an interface between system calls
related to files and the file management code
Understanding Operating Systems, Fourth Edition 56

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy