Skip to content

UNIX Filesystems Evolution, Design, and Implementation

Spend $50 to get a free movie!

ISBN-10: 0471164836

ISBN-13: 9780471164838

Edition: 2003

Authors: Steve D. Pate

List price: $50.00
Blue ribbon 30 day, 100% satisfaction guarantee!
Out of stock
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!


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: 480
Size: 7.50" wide x 9.25" long x 1.00" 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.

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
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
Special Files
Symbolic Links and Hard Links
Named Pipes
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
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
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
UNIX Kernel Concepts
5th to 7th Edition Internals
The UNIX Filesystem
Filesystem-Related Kernel Structures
System Call Handling
Pathname Resolution
Putting It All Together
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
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
Disk-Based Filesystem Case Studies
The VERIT AS Filesystem
The UFS Filesystem
The ext2 and ext3 Filesystems
Mapping Filesystems to Multiprocessor Systems
The Evolution of Multiprocessor UNIX
Traditional UNIX Locking Primitives
Symmetric Multiprocessing UNIX
Pseudo Filesystems
The / proc Filesystem
The Specfs Filesystem
The BSD Memory-Based Filesystem (MFS)
The Sun tmpfs Filesystem
Other Pseudo Filesystems
Filesystem Backup
Traditional UNIX Tools
Frozen-Image Technology
Block-Level Incremental Backups
Hierarchical Storage Management
Clustered and Distributed Filesystems
Distributed Filesystems
Clustered Filesystems
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