Skip to content

UNIX Filesystems Evolution, Design, and Implementation

Best in textbook rentals since 2012!

ISBN-10: 0471164836

ISBN-13: 9780471164838

Edition: 2003

Authors: Steve D. Pate

List price: $50.00
Blue ribbon 30 day, 100% satisfaction guarantee!
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

A file system is the way an operating system keeps track of its files. Though operating systems provide their own file management systems, the practice is to buy separate file management systems that interact with the operating system but provide more features. This book covers all version of UNIX and Linux file-systems.
Customers also bought

Book details

List price: $50.00
Copyright year: 2003
Publisher: John Wiley & Sons, Incorporated
Publication date: 1/23/2003
Binding: Paperback
Pages: 472
Size: 7.48" wide x 9.20" long x 0.99" tall
Weight: 1.540
Language: English

STEVE D. PATE is a senior manager and long time contributor to the VERITAS Filesystems Group. For the last fifteen years, he has been involved in the design and development of operating systems for numerous versions of UNIX and microkernel-based implementations of UNIX.

Foreword
Introduction
UNIX Evolution and Standardization
A Brief Walk through Time
How Many Versions of UNIX Are There?
Why Is UNIX So Successful?
The Early Days of UNIX
The Evolution of BSD UNIX
Sun Microsystems and SunOS
System V Release 4 and Variants
Novell's Entry into the UNIX Market
Linux and the Open Source Movement
UNIX Standardization
Summary
File-Based Concepts
UNIX File Types
File Descriptors
Basic File Properties
The File Mode Creation Mask
Changing File Permissions
Changing File Ownership
Changing File Times
Truncating and Removing Files
Directories
Special Files
Symbolic Links and Hard Links
Named Pipes
Summary
User File I/O
Library Functions versus System Calls
Which Header Files to Use?
The Six Basic File Operations
Duplicate File Descriptors
Seeking and I/O Combined
Data and Attribute Caching
File and Record Locking
File Control Operations
Vectored Reads and Writes
Asynchronous I/O
Memory Mapped Files
64-Bit File Access (LFS)
Sparse Files
Summary
The Standard I/O Library
The FILE Structure
Standard Input, Output, and Error
Opening and Closing a Stream
Standard I/O Library Buffering
Reading and Writing to/from a Stream
Seeking through the Stream
Summary
Filesystem-Based Concepts
What's in a Filesystem?
The Filesystem Hierarchy
Disks, Slices, Partitions, and Volumes
Raw and Block Devices
Filesystem Switchout Commands
Creating New Filesystems
Mounting and Unmounting Filesystems
Repairing Damaged Filesystems
The Filesystem Debugger
Per Filesystem Statistics
User and Group Quotas
Summary
UNIX Kernel Concepts
5th to 7th Edition Internals
The UNIX Filesystem
Filesystem-Related Kernel Structures
System Call Handling
Pathname Resolution
Putting It All Together
Summary
Development of the SVR4 VFS/Vnode Architecture
The Need for Change
Pre-SVR3 Kernels
The File System Switch
The Sun VFS/Vnode Architecture
The SVR4 VFS/Vnode Architecture
Summary
Non-SVR4-Based Filesystem Architectures
The BSD Filesystem Architecture
Digital UNIX / True64 UNIX
The AIX Filesystem Architecture
The HP-UX VFS Architecture
Filesystem Support in Minix
Pre-2.4 Linux Filesystem Support
Microkernel Support for UNIX Filesystems
Summary
Disk-Based Filesystem Case Studies
The VERIT AS Filesystem
The UFS Filesystem
The ext2 and ext3 Filesystems
Summary
Mapping Filesystems to Multiprocessor Systems
The Evolution of Multiprocessor UNIX
Traditional UNIX Locking Primitives
Symmetric Multiprocessing UNIX
Summary
Pseudo Filesystems
The / proc Filesystem
The Specfs Filesystem
The BSD Memory-Based Filesystem (MFS)
The Sun tmpfs Filesystem
Other Pseudo Filesystems
Summary
Filesystem Backup
Traditional UNIX Tools
Frozen-Image Technology
Block-Level Incremental Backups
Hierarchical Storage Management
Summary
Clustered and Distributed Filesystems
Distributed Filesystems
Clustered Filesystems
Summary
Developing a Filesystem for the Linux Kernel
Designing the New Filesystem
Obtaining the Linux Kernel Source
Installing Debugging Support
Building the uxfs Filesystem
Creating a uxfs Filesystem
Module Initialization and Deinitialization
Mounting and Unmounting the Filesystem
Directory Lookups and Pathname Resolution
Inode Manipulation
File Creation and Link Management
Creating and Removing Directories
File I/O in uxfs
The Filesystem Stat Interface
The Filesystem Source Code
Suggested Exercises
Summary
Glossary
References
Index