Chapter 1 Computer Technology: Your Need to Know

Download Report

Transcript Chapter 1 Computer Technology: Your Need to Know

Chapter 12
File Management Systems
Outline





Functions and components
Storage allocation
File manipulation
Access controls
Migration, backup, recovery
File Management Systems


Logical and Physical Storage Views
File Content and Type
File Management Systems

A File Management System (FMS) is
implement in layers:




Command layer or application program
File control
Storage I/O control
Storage devices
File Management Systems

Storage devices – interact with the bus and
with operating system device drivers to
transfer data between storage devices and
memory.

Storage I/O control – accesses storage
locations and manages data movement
between storage devices and memory.
File Management Systems

File Control – provides a set of service
functions for manipulating files and
directories.

Command layer or application program –
users perform common file management
functions such as copying, moving and
renaming.
File Management Systems
Logical and Physical Storage Views
Logical Storage Views – viewed by users are
a collection of files organized within
directories and storage volumes.
Physical Storage Views – a collection of
physical storage locations organized as a
linear address space.
File Management Systems
Records and Fields
File Management Systems
File Content and Type

A file can store many different data types
including text, numbers, complex data
structures, and executable instructions.

Modern file management systems provide a
framework to support additional file types.
File Management Systems
File Content and Type

File type normally is declared when a file is
created.

In the UNIX file management system, the file
type is stored within the directory. In the
Windows file management system, the file
type is declared through the extension.
File Management Systems
Directory Content and
Structure


Hierarchical Directory Structure
Graph Directory Structure
Directory Content and
Structure
Hierarchical Directory Structure

A directory contains information about files
and other directories.

Typical directory contents include:



Name
File Type
Location
Size
Ownership
Access controls
Time stamp
Directory Content and
Structure

Typical file ownership permissions are:




List
Read
Modify
Change
Directory Content and
Structure

Time stamps include:




When the file was created
When the file most recently was read
When the file most recently was written
When the file last was backed up
Directory Content and
Structure
Directory Content and
Structure
Hierarchical Directory Structure



Directories can contain other directories.
Directories can not have more than one
parent.
Sometimes called a tree structure.
Directory Content and
Structure
Directory Content and
Structure

Example: Traversing directories in the
Windows command shell
Directory Content and
Structure
Graph Directory Structure


Files and subdirectories can be
contained within multiple directories.
Directory links can form a cycle.
Directory Content and
Structure
Paths

Where do operating systems look for
executable files?


In the current directory
In the path
If directories are missing or in the
wrong order, OS can’t find the right files
 Example: Windows PATH

Paths and Environment Variables
Some programs use environment
variables to store path information
 If directories are missing or in the
wrong order, programs can’t find the
right files
 Example: Java and the CLASSPATH

Paths, INI Files, Programs …
Paths are all over the place!
 They are in initialization files, programs,
the Windows registry, …
 You need to be comfortable with
absolute and relative file specs.

Outline





Functions and components
Storage allocation
File manipulation
Access controls
Migration, backup, recovery
Storage Allocation



Allocation Units
Storage Allocation Tables
Blocking and Buffering
Storage Allocation
Allocation Units


An allocation unit is the smallest number of
secondary storage bytes that can be
allocated to a file.
Allocation units can not be smaller than the
unit of data transfer between the storage
device and controller, which is normally called
a block.
Systems Architecture
Chapter 12
Storage Allocation
Allocation unit size is usually a tradeoff
among:



Efficient use of secondary storage space for files.
Size of storage allocation data structures.
Efficiency of storage allocation procedures.
Systems Architecture
Chapter 12
Storage Allocation
Storage Allocation Tables
A storage allocation table is a data structure
that records which allocation units are free
and which belong to files.
Systems Architecture
Storage Allocation
Chapter 12
Outline






Functions and components
Storage allocation
File manipulation
Migration, backup, recovery
Access controls
Directories
Storage Allocation
Storage Allocation
Storage Allocation
Blocking and Buffering

A logical record is a collection of data items,
or fields, that is accessed by an application
program as a single unit.

A physical record is the unit of storage
transferred between the device controller and
memory in a single operation.
Storage Allocation
Blocking and Buffering

Logical record grouping within physical
records is called blocking.

If a physical record contains just one logical
record, then the file is said to be unblocked.
Storage Allocation
Storage Allocation
Blocking and Buffering:

A FMS uses buffers in primary storage to
store data temporarily as it moves between
programs and secondary storage devices.

A buffer is a scratchpad for extracting logical
records from physical records.
Storage Allocation
Outline





Functions and components
Storage allocation
File manipulation
Access controls
Migration, backup, recovery
File Manipulation


File Open and Close Operations
Delete and Undelete Operations
File Manipulation
File Open and Close Operations

The FMS must perform several tasks,
collectively called a file open operation,
before an application program can read or
write a file’s contents.
File Manipulation
File Open Operation:
1.
2.
3.
4.
5.
Locates the file within the directory structure and
reads its directory entry.
Searches an internal table of open files to see if the
file already is open.
Ensures that process has sufficient privileges to
access the files.
Allocates one or more buffers.
Updates an internal table of open files.
File Manipulation
File Close Operation:
1.
2.
3.
4.
Flushing the program’s file I/O buffers to
secondary storage.
Deallocating buffer memory.
Updating the file’s directory entry time
stamps.
Updating the open file table.
File Manipulation
Delete and Undelete Operations



In most file management systems, files are not
removed immediately from secondary storage when
they are deleted.
The file’s storage allocation units are marked as free
and its directory entry is marked as unused.
A user might be able to use the undelete operation
to recover the file.
Access Controls

A File Management System helps prevent
loss, corruption and unauthorized access to
files.

The operating system is used to identify and
authenticate users and their processes.

The file access is authenticated through id’s
and passwords.
Outline





Functions and components
Storage allocation
File manipulation
Access controls
Migration, backup, recovery
Access Controls
For Example:
UNIX defines three access control types:
 Read
 Write
 Execute
Technology Focus – Windows NTFS
Outline





Functions and components
Storage allocation
File manipulation
Access controls
Migration, backup, recovery
File Migration, Backup and Recovery






File Migration
File Backup
Transaction Logging
File Recovery
Fault Tolerance
Mirroring
File Migration, Backup and Recovery
File Migration – management technique for
secondary storage in which older versions of
a file are moved automatically to less costly
storage media or devices such as magnetic
tape.
File Migration, Backup and Recovery
File Migration
File Migration, Backup and Recovery
File Backup:
Full Backup
Incremental Backup
Differential Backup
File Migration, Backup and Recovery

Full Backup – the FMS copies all files and
directories for an entire storage volume.

Incremental Backup – only the files that
have been modified are archived.

Differential Backup – only the changed
portions of the files are archived.
File Migration, Backup and Recovery
Transaction Logging



A form of automated file backup.
A transaction is any single change to file
contents or attributes.
Transaction logging provides a high degree of
protection against data loss due to program
or hardware failure.
File Migration, Backup and Recovery
File Recovery

The file management system maintains backup logs
to aid in locating backup copies of lost or damages
files.

The recovery utility reconstructs as much of the
directory and storage allocation data structures as
possible and makes a consistency check.
File Migration, Backup and Recovery
Fault Tolerance

Describes methods of securing file content
against hardware failure.

File backup, recovery, and transaction logging
are forms or protection against disk failure.
File Migration, Backup and Recovery
Mirroring

A fault tolerance technique in which all disk write
operations are made simultaneously or concurrently
to two different storage devices.

Disk mirroring provides a high degree of protection
against data loss with no performance penalty if
implemented in hardware.
Technology Focus
Technology Focus
Technology Focus
Summary

The file management system (FMS), usually
a part of the operating system, manages all
aspects of user and program access to
secondary storage.

With directories, users can organize the
thousands of files stored in a typical computer
system.
Summary

Secondary storage units are divided into
allocation units, which are typically a few
kilobytes in size.

The FMS allocates buffers to support
program file I/O.
Summary

The FMS enforces access controls when
accessing files on behalf of a user or
program.

FMSs provide utilities to make backup copies
of files and directories and to recover them if
needed.