Download presentation
Presentation is loading. Please wait.
1
File Systems File Systems Introduction
This lesson discusses file-system basics. The lesson topics include both the definition and functions of file systems, persistent file systems structures, file system integrity, file system characteristics, data sharing raw partitions, and the various kinds of file systems available. Importance Understanding the basics of file systems is important because most applications (though not necessarily all) work with files. Moreover, it is important to understand the file system as it relates to data sharing. © 2003, Cisco Systems, Inc. All rights reserved. 1
2
Lesson Objective Upon completion of this lesson, you will explain file systems, including a definition, the functions of file systems, characteristics, and various kinds of file systems. Performance Objective Upon completion of this lesson, you will explain file systems, including a definition, the functions of file systems, characteristics, and various kinds of file systems. Enabling Objectives Give a concise definition of a file system and an explanation of its function Explain the functions of file systems, including real storage, virtual storage and pointers Explain the role of the "Superblock" in a persistent file system Explain how file systems have the ability to keep the file system intact Explain the file system characteristics of namespace, security and access rights, metadata, semantics, block size, and locking Explain the conditions that are necessary for more than one system to share data on a disk or disk system at the block level Explain what a raw partition is, and identify factors that must be considered when using raw partitions Define the local disk file systems NTFS, UFS, JFS, VxFS and HSFS Define and explain the network file systems CIFS, NFS and DAFS Explain the function and importance of GFS in storage environments
3
Outline What are file systems? What do file systems do?
Persistent file system structures File system integrity File system characteristics File systems and data sharing Raw partition Local disk file systems Network file systems Global file systems Summary Prerequisites Curriculum Unit 1, Module 1 lessons "Protocols," " Physical Storage Components," and "Physical Storage Architecture."
4
What are File Systems? File systems are data structures and algorithms used to organize information Most applications use files File systems enable hierarchy and naming Disk File system Superblock Inode List Data Blocks What are File Systems? Objective Give a concise definition of a file system and an explanation of its function. Introduction This section describes what a file system is, and gives an example. Definition File systems organize data in storage and impose structure on the address space of one or more physical or virtual disks so that applications may deal more conveniently with abstract named data objects of variable sizes (files). Facts Storage devices have no implicit organization scheme. They were developed to be the slaves in a master/slave relationship. They have no knowledge about what is stored in them—file systems organize the data. It would be virtually impossible not to have a file system as part of a computer system—the capacities in even low end disk drives demand automated organization for data. What good is a computer if it cannot create, write or read data? Thus, computers need file systems to organize the data that computers work with. A file is a logical data structure whose format and content is determined by the application. Some applications such as databases however, prefer to work with the raw data blocks on the disk. This is because these applications are working with records and fields, rather than files. Disk storage devices only provide Cylinder, Head and Sector (CHS), or logical blocks where data can be stored. Disk drives have no concept of a file, record or field in a database. File systems are needed to organize the logical blocks on the disk into files and provide information about the files. Continued …
5
What Do File Systems Do? Enhance resiliency Journaling Versioning
Manage the free space pool Determine how available space is allocated Map virtual storage to physical storage ZZ CC HH jj aa DD nn Ff xx Ee Xx BB What do File Systems Do? Objective Explain the functions of file systems, including enhanced resiliency, real storage, virtual storage and pointers. Introduction This section introduces the functions of file systems, including the notions of enhanced resiliency, real storage, virtual storage, and pointers. Facts Modern file systems enhance resiliency and fault tolerance by including support for journaling and/or versioning. Journaling file systems utilize transaction logs that enable them roll back to a consistent state when problems are detected. Versioning file systems utilize block copying strategies that enable recovery of previous file versions in the event of file deletion or unwanted modifications. File systems are responsible for managing and allocating free space. For example, some file systems allocate space as a collection of contiguous blocks known as an extent. When discussing file systems, real storage refers to physically available storage locations, including disk and tape. Virtual storage is addressable storage that must be mapped to real storage. The size of virtual storage is limited by the addressing scheme of the computer system and by the amount of real storage available. File systems manage the available space, but are not involved with the detailed operations of the storage devices. As an address space fills, there is less room to put new data. The file system manages how those remaining resources are allocated. As files are deleted or made smaller, the space is effectively recycled by the file system, which returns the newly freed storage to the system’s free space pool.
6
What Do File Systems Do? (cont.)
File systems keep pointers, and pointers to pointers… Inode File system Permissions Superblock Link count Inode List What do File Systems Do? (cont.) Facts The diagram examines file systems and datablock pointers in the context of a generic Unix file system. Each file in a Unix file system has a inode structure that contains metadata about the the file's attributes, including addresses (pointers) of the data blocks associated with the file. Large files may store block addresses indirectly. In such files a data block address might point to a data block that in turn stores pointers to the file's actual data. Often, the set of pointers in a file system is cached in system memory to enable the fastest file system performance. The scalability of a file system is related to the number of pointers the file system may need to generate. Practice 1. How do file systems ensure that data can be accessed as rapidly as possible, even when the disk is approaching full capacity? 2. What do "pointers" do? UID GID File size Data Blocks Time stamps Block Pointers
7
Persistent File System Structures
Key structures containing pointers and metadata are found at fixed locations within file systems: Superblock Inode list File Allocation Table Persistent File System Structures Objective Explain the role of the "Superblock" in persistent file system structures. Introduction This section explains the role of the Superblock (which stores certain key data blocks) in persistent file system structures. Facts All file systems have to be able to read certain key data blocks that serve as the starting place for all pointers in the file system. In Unix systems, these key files are located in the “Superblock”. The superblock contains the basic information about the entire file system. This includes the size of the file system, the list of free and allocated blocks, the name of the partition, and the modification time of the filesystem. The Superblock is used to load the file system—the extent of which can be determined by following all pointers in the file system. An inode is a computer-stored description of an individual file in a UNIX file system. An inode list is, not surprisingly, a list of inodes. The File Allocation Table or "FAT" is used to by an operating system to locate files. FAT is a feature of Windows file systems. Practice Answer the following. If this component of a file system is damaged, the file system will be rendered inaccessible. Identify this component.
8
File System Integrity File systems often have facilities for ensuring pointers in the system are correct They keep redundant data that allows them to resolve problems automatically File System Integrity Objective Explain how file systems have the ability to keep the file system intact. Introduction This section introduces the capability of file systems' to keep the file system intact. Facts File systems usually have the capability of determining if there are problems with the set of pointers. File systems can keep redundant data that allows them to resolve problems automatically. A common program in the UNIX environment is fsck. fsck usually completes quickly, but it can take hours to run if the file system is quite large. A similar utility for Windows is Chkdsk Example The file system repair capabilities of Windows NT/2000/XP work quite well. It is noteworthy how the system can recover from file system internal corruptions. Practice Do you know the name of the file system check utility that is used in Windows? In UNIX?
9
File System Characteristics
Naming conventions Extensions Directory (Hierarchy) Special files listing other files Pathnames Metadata Namespace File System Characteristics Objective Explain the file system characteristics of namespace, security and access rights, metadata, semantics, block size, and locking. Introduction This section introduces important file system characteristics such as namespace, security and access rights, metadata, semantics, block size, and locking. Facts The namespace is the part of the file system that people and applications use. It incorporates the various naming conventions used as well as the directory structure—directories are special types of files that keep lists of other files. The full name of a file includes all the directories from the root on down that are used to access a file. Every file in the system must have a unique full name and it is possible to assign the same name in every directory in the system. Metadata is data about data. We call this metadata "attributes“. The attributes are "date/time, size, owner, when created, when modified, and open or closed. Metadata is used for system management and for finding files. An example is backup. Most backup programs use the ‘archive’ bit to determine whether a file has been changed and needs to be backed up. Metadata is also used for searching for data that is difficult to locate. There is a lot of research and speculation going on as to what kind of metadata would be best for network storage. It is more difficult than it sounds because metadata also has to be recoverable, which means business continuity processes have to be able to consider it. Detroit.wrk Hawaii.pdf Baja Mexica.fun August (dir)
10
File System Characteristics (cont.)
Who goes there? Authentication Usually covered by login Look, but don’t touch. Authorization Read-only access Create, open, read, modify, delete File System Characteristics (cont.) Facts An important part of any file system is its security and access rights (permissions) support. Access rights are usually assignable at the file level and are part of the metadata for a file, directory and file system. Not all users have the same access rights. In addition, file system meta data can provide a level of accountability. For example, it may be possible to determine when a file was last accessed and by whom. Data Security and Access Rights
11
File System Characteristics (cont.)
File system semantics Semantics are the language of the file system Block size File systems deal with small granular units of storage on disk drives—data blocks File System Characteristics (cont.) Facts Semantics Semantics are the language of the file system. They determine what can be done by applications. Thus, the actual functionality of manipulating data in files is referred to as the file system semantics. This is the sort of thing that typically only application developers need to concern themselves with, but it turns out to be very important to understanding some of the subtle differences between NAS file systems such as Network File Systems (NFS) and Common Internet File System (CIFS). Following are some examples of common file system semantics: Open file for reading Read 1st 20 bytes Append 'string' to end of file Set archive bit on The actual functionality of manipulating data in files is referred to as the file system semantics. Block size File systems deal with the smallest units of storage on disk drives: sectors and logical blocks. To reduce the number of logical block addresses (LBAs) they must deal with, typical file systems group sectors into clusters or allocation units. The size of a cluster or allocation unit can vary among file systems but is typically between 512 bytes and 2 MB. Continued …
12
File System Characteristics (cont.)
Data sharing at the block level is rarely done. File systems that CAN co-manage the address space are typically thought of as cluster file systems. The ability to share files is determined by the file system and not the physical interface or device. Locking File System Characteristics (cont.) Facts Data locking is supported by file system semantics. The idea of locking is to reserve data so that others cannot modify it while one person or application is accessing it. There are many ways locking can be accomplished. One of the more interesting problems in locking is what to do if a workstation “dies” that had locked a file for exclusive use. File systems have to address these types of problems if they expect to be used in enterprise environments.
13
File Systems and Data Sharing
In order for more than one system to share data on a disk or disk system at the block level, several conditions are necessary: The systems must use a specialized file system, typically called a cluster file system. The file system must implement the locking mechanisms. If the file system caches data, there must be mechanisms to insure cache coherency. Many "stock" file systems do not provide the necessary mechanisms to allow device and data sharing. File Systems and Data Sharing Objective Explain the conditions that are necessary for more than one system to share data on a disk or disk system at the block level. Introduction This section explains the conditions that must exist for multiple systems to share data on a disk or disk system. Facts In order for more than one system to share data on a disk or disk system at the block level, several conditions are necessary: The systems must use a specialized file system, typically called a cluster file system. They must be able to share the management of the address space. The file system must implement the locking mechanisms (two systems cannot try to update the same file or blocks at the same time). If the file system caches data, there must be mechanisms to insure cache coherency (the data in the cache must be consistent with the data on the disk). Many "stock" file systems do not provide the necessary mechanisms to allow device and data sharing. They do not provide the correct locking mechanisms. Note that the ability to share devices and data is determined by the file system, and not the physical interface or device. Practice Answer the question, "What must be implemented in order for file sharing to take place?"
14
Raw Partition Application specific alternative to traditional file systems High performance Bypasses file abstraction layer provided by file systems Root File System Raw Partition Objective Explain what a raw partition is, and identify factors that must be considered when using raw partitions Introduction - This section introduces raw partitions, including a definition and questions to cosider when using raw partitions. Facts A raw partition is an area of disk space that is under the direct control of an application, such as a database, rather than under the direct control of the operating system or a file system. Bypassing the file system can yield better performance from the controlling application, especially from database applications. When provisioning storage, system administrators need to determine how much of the total storage will be used for file systems and how much will be used as raw partitions. A file system uses the concept of a buffering cache that optimizes the number of times the operating system must access the disk. The file system releases a process that is executing a write to disk by taking control of the operation, thus freeing the process to continue other functions. The file system then attempts to cache or retain the data to be written until multiple data writes can be done at the same time. This can have the effect of enhancing system performance. However, a system failure before data is written from the cache can result in the loss of file system integrity. The file system adds overhead to any operation that reads or writes data in direct accordance to its physical layout. Continued … Raw Partition
15
Local Disk File Systems
NTFS (NT File System) UFS (Unix File System) JFS (Journalled File System) VxFS (Veritas File System) HSFS (High Sierra File System) Local Disk File Systems Objective Define the local disk file systems NTFS, UFS, JFS, VxFS and HSFS. Introduction This section explains and defines various file systems used in storage systems. Facts NT File System (NTFS): One of the file systems for the Windows NT operating system (Windows NT also supports the FAT file system). NTFS has features to improve reliability, such as transaction logs to help recover from disk failures. To control access to files, set permissions for directories and/or individual files. Unix File System (UFS): Unlike Windows, UNIX files are most frequently managed with separate text commands in a manner similar to DOS. There are GUI UNIX shells available. The more important differences, however, are internal. UNIX file systems are secure, robust and flexible. UNIX file systems feature expandability, and support for large storage devices, perform well, and have the ability to combine devices to make them appear as a single file system. (see also for more detailed information). Continued …
16
CIFS (Common Internet File System) NFS (Network File System)
Network File Systems CIFS (Common Internet File System) NFS (Network File System) DAFS (Direct Access File System) Network File Systems Objective Define and explain the network file systems CIFS, NFS and DAFS. Introduction This section explains file systems used in storage networks. Facts Common Internet File System (CIFS): A protocol that defines a standard for remote file access. With CIFS, users with different platforms and computers can share files without having to install new software. CIFS runs over TCP/IP but uses the Server Message Block (SMB) protocol found in Microsoft Windows for file and printer access. CIFS allows all applications to open and share files across the Internet. With CIFS, changes made to a file are simultaneously saved on both the client and server side. ( Network File System (NFS): A client/server application designed by Sun Microsystems that allows all network users to access shared files stored on computers of different types. NFS provides access to shared files through an interface called the Virtual File System (VFS) that runs on top of TCP/IP. Users can manipulate shared files as if they were stored locally on the user's own hard disk. ( Continued …
17
Global File System (GFS)
Application/Client Application/Client Operating System (O/S) Operating System (O/S) Node Node Distributed File System Distributed File System 1. Lock 2. Access 3. Free SAN Global File System (GFS) Objective Explain the function and importance of GFS in storage environments. Introduction GFS is an API-based distributed file system that is available for SAN. Facts The reason a Global File System (GFS) is important is that native file systems can only scale so far. GFS takes scaling beyond the native file system limits. GFS requires the installation of an additional OS file server API, which is available for most operating systems. The nodes are independent, there is no file manager. The storage pool is a a shared address space of disk blocks for locking, striping, name services etc. Each GFS file system is divided into Resource Groups (RG), which are essentially a mini-file system. Each RG distributes file system resources across its storage subpool. Device locking can be provided by the distributed file system, in one of two ways: Locking by file-system to file-system communication over the SAN Locks written in reserved areas on the disk itself GFS file locking may affect SAN performance. It is important to note that the GFS does not replace the local file system. Continued … Storage Pools, divided into Resource Groups (RG)
18
Local and Network Disk File Systems Practice
Explain each of the acronyms listed below CIFS NFS DAFS NTFS UFS JFS VxFS HSFS Practice - Local and Network Disk File Systems
19
File Systems Practice Answer the following questions:
Give a concise definition of a file system. What is the importance of the file system to a computer? How does a file system enable the user to work with files? Practice - What are File Systems?
20
File System Characteristics Practice
Answer the following questions: What is the role of a "superblock" in a file system? How do file systems ensure that data remains intact? What is the importance of namespace? What is metadata and what is its function in a file system? What is a cluster and how does cluster size affect disk performance? Why is data locking important in a shared storage environment? Practice - File System Characteristics
21
What Do File Systems Do? (Practice)
Answer the following questions: How do file systems ensure that data can be accessed as rapidly as possible even when the disk is approaching full capacity? What do "pointers" do? What is "virtual storage"? Practice - What Do File Systems Do?
22
File Systems and Data Sharing Practice
B Fibre Channel Fabric Network In the diagram, what is necessary for Client A and Client B to access the same file without the risk of simultaneously writing to the same file? Practice – File Systems and Data Sharing
23
Raw Partition Practice
Root File System Raw Partition On a piece of paper, working on your own, answer the following questions: What is a raw partition? Why use a raw partition? What are the trade-offs that should be considered when deciding between file systems versus raw partitions? Practice - Raw Partitions
24
Summary This lesson presented these key points:
File systems allow users to access data, maintain data integrity and allow for data sharing. There are a variety of file systems available. Global file systems allow administrators to overcome conventional file system size limits. Summary: File Systems Review In this lesson, you learned how to explain the basics of file systems. The lesson topics included both the definition and functions of file systems, persistent file systems structures, file system integrity, file system characteristics, data sharing raw partitions, and the various kinds of file systems available.
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.