Chapter 8 File Management - PowerPoint PPT Presentation

1 / 56
About This Presentation
Title:

Chapter 8 File Management

Description:

Improvement from single directory scheme ... File organized in sequential fashion can support only sequential access to its records ... – PowerPoint PPT presentation

Number of Views:123
Avg rating:3.0/5.0
Slides: 57
Provided by: galatiAr
Category:

less

Transcript and Presenter's Notes

Title: Chapter 8 File Management


1
Chapter 8File Management
  • Understanding Operating Systems, Fourth Edition

2
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

3
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

4
File Management
  • File Manager controls every file in system
  • Efficiency of File Manager depends on
  • How systems files are organized (sequential,
    direct, or indexed sequential)?
  • How theyre stored (contiguously,
    noncontiguously, or indexed)?
  • How each files records are structured
    (fixed-length or variable-length)?
  • How access to these files is controlled

5
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

6
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 the file when it is returned to
    storage and communicate its availability to
    others waiting for it
  • file refers to in memory data structures needed
    when accessing a file on disk.

7
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

8
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

9
Interacting with the File Manager
  • User communicates with File Manager via specific
    commands that may be
  • Embedded in the users program
  • OPEN, CLOSE, READ, WRITE, and MODIFY
  • Submitted interactively by the user
  • CREATE, DELETE, RENAME, and COPY
  • Commands are device independent
  • User doesnt need to know its exact physical
    location on disk pack or storage medium to access
    a file

10
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 dont 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)?

11
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
  • Linux LVM (Logical Volume Manager)?

12
Typical Volume Configuration (continued)?
Figure 8.1 Volume descriptor, stored at the
beginning of each volume
13
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

14
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 couldnt create subdirectories
  • Users couldnt safeguard their files from other
    users
  • Each program in the directory needed a unique
    name, even those directories serving many users

15
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 cant group files in a logical order to
    improve accessibility and efficiency of system

16
About Subdirectories (continued)?
  • Subdirectories
  • Todays 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

17
About Subdirectories (continued)?
Figure 8.2 File directory tree structure
18
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

19
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 files complete name
    depend on the operating system

20
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
  • Dont leave empty storage space and dont
    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

21
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.
22
Physical File Organization
  • The way records are arranged depends on 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
  • Activity of the file
  • Size of the file
  • Response time

23
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

24
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

25
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

26
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 Doesnt create collisions
  • Uses Btrees.

27
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
  • Records structure usually managed by application
    programs and not OS
  • File storage actually refers to record storage

28
Physical Storage Allocation (continued)
Figure 8.6 Types of records in a file
29
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 cant be expanded easily, and fragmentation

Figure 8.7 Contiguous storage
30
Noncontiguous Storage
  • Allows files to use any available disk storage
    space
  • Files 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)?

31
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

32
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

33
Noncontiguous Storage (continued)?
Figure 8.8 Noncontiguous file storage with
linking taking place at the storage level
34
Noncontiguous Storage (continued)?
Figure 8.9 Noncontiguous file storage with
linking taking place at the directory level
35
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
  • Doesnt necessarily improve use of storage space
  • Larger files may have several levels of indexes

36
Indexed Storage (continued)?
Figure 8.10 Indexed storage
37
Access Methods
  • Dictated by a files 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

38
Access Methods (continued)?
Figure 8.11 (a) Fixed-length records
(b) Variable-length records
39
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 cant be easily computed

40
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

41
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

42
Levels in a File Management System (continued)?
Figure 8.12 File Management System
43
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 files
    limits
  • Device interface module checks to see whether the
    storage device exists

44
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

45
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
46
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
47
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

48
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
49
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 doesnt control type of access to file
  • Anyone who knows lockword can read, write,
    execute, or delete file

50
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 gt ADAMSb10
    300000000 gt 38
  • Repeated terms Compressed by using symbols to
    represent most commonly used words
  • e.g., in a universitys student database common
    words like student, course, grade, department
    could each be represented with single character

51
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
52
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 cant start with a number or a period
    and cant contain slashes or quotes

53
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

54
Case Study File Management in Linux (continued)?
Table 8.5 Types of Linux files
55
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

56
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
Write a Comment
User Comments (0)
About PowerShow.com