Chapter12 - Roletech

Download Report

Transcript Chapter12 - Roletech

Chapter 12
File Management
Systems
1
Systems Architecture
Chapter 12
2
Systems Architecture
Chapter 12
File Management Systems

Logical and Physical Storage Views
 File Content and Type
3
Systems Architecture
Chapter 12
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
4
Systems Architecture
Chapter 12
5
Systems Architecture
Chapter 12
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.
6
Systems Architecture
Chapter 12
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.
7
Systems Architecture
Chapter 12
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.
8
Systems Architecture
Chapter 12
File Management Systems
9
Systems Architecture
Chapter 12
10
Systems Architecture
Chapter 12
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.
11
Systems Architecture
Chapter 12
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.
12
Systems Architecture
Chapter 12
File Management Systems
13
Systems Architecture
Chapter 12
14
Systems Architecture
Chapter 12
Directory Content and
Structure

Hierarchical Directory Structure
 Graph Directory Structure
15
Chapter 12
Systems Architecture
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
16
Systems Architecture
Chapter 12
Directory Content and
Structure

Typical file ownership permissions are:
– List
– Read
– Modify
– Change
17
Systems Architecture
Chapter 12
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
18
Systems Architecture
Chapter 12
Directory Content and
Structure
19
Systems Architecture
Chapter 12
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.
20
Systems Architecture
Chapter 12
Directory Content and
Structure
21
Systems Architecture
Chapter 12
Directory Content and
Structure
Graph Directory Structure

Files and subdirectories can be contained
within multiple directories.
 Directory links can form a cycle.
22
Systems Architecture
Chapter 12
Directory Content and
Structure
23
Systems Architecture
Chapter 12
Storage Allocation

Allocation Units
 Storage Allocation Tables
 Blocking and Buffering
24
Systems Architecture
Chapter 12
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.
25
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.
26
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.
27
Systems Architecture
Chapter 12
Storage Allocation
28
Systems Architecture
Chapter 12
Storage Allocation
29
Systems Architecture
Chapter 12
Storage Allocation
30
Systems Architecture
Chapter 12
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.
31
Systems Architecture
Chapter 12
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.
32
Systems Architecture
Chapter 12
Storage Allocation
33
Systems Architecture
Chapter 12
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.
34
Systems Architecture
Chapter 12
Storage Allocation
35
Systems Architecture
Chapter 12
File Manipulation

File Open and Close Operations
 Delete and Undelete Operations
36
Systems Architecture
Chapter 12
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.
37
Systems Architecture
Chapter 12
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.
38
Systems Architecture
Chapter 12
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.
39
Systems Architecture
Chapter 12
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.
40
Systems Architecture
Chapter 12
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.
41
Systems Architecture
Chapter 12
Access Controls
For Example:
UNIX defines three access control types:
 Read
 Write
 Execute
42
Systems Architecture
Chapter 12
Technology Focus – Windows
NTFS
43
Systems Architecture
Chapter 12
File Migration, Backup and
Recovery






File Migration
File Backup
Transaction Logging
File Recovery
Fault Tolerance
Mirroring
44
Systems Architecture
Chapter 12
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.
45
Systems Architecture
Chapter 12
File Migration, Backup and
Recovery
File Migration
46
Systems Architecture
Chapter 12
File Migration, Backup and
Recovery
File Backup:
Full Backup
Incremental Backup
Differential Backup
47
Systems Architecture
Chapter 12
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.
48
Systems Architecture
Chapter 12
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.
49
Systems Architecture
Chapter 12
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.
50
Systems Architecture
Chapter 12
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.
51
Systems Architecture
Chapter 12
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.
52
Systems Architecture
Chapter 12
Technology Focus
53
Systems Architecture
Chapter 12
Technology Focus
54
Systems Architecture
Chapter 12
Technology Focus
55
Systems Architecture
Chapter 12
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.
56
Systems Architecture
Chapter 12
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.
57
Systems Architecture
Chapter 12
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.
58