HPFS FileSystem
This series of articles apparently originally appeared in now defunct OS2Zone (Their page should be at http://www.os2zone.aus.net) written by Dan Bridges. I ran across it during my journeys of the net, and put it up here... The "original" form is available here. This is a six part series of articles on HPFS.
- Part #0 - Preface
- This article is the initial "preface" article that explains the motivations behind the series.
It also talks about the filesystem organization scheme used by the FAT filesystem... and briefly
introduces HPFS.
- Part #1 - Introduction
- This introductory article compares the FAT filesystem against the HPFS filesystem in terms that
a user would understand. This talks about the practical differences, such as speed, size, and
fragmentation.
- Part #2 - The SuperBlock and the SpareBlock
- This article starts delving more deeply into HPFS' internal structures. Two REXX programs are
presented that greatly assist in the search for information. It also briefly looks at some
other HPFS-related programs. Finally, you will see the Big Picture when the major structures
of a HPFS partition are shown.
- Part #3 - Fragmentation, Diskspace Bitmaps and Code Pages
- This article looks at how HPFS knows which sectors are occupied and which ones are free.
It examines the amount of file fragmentation on five HPFS volumes and also checks out the
fragmentation of free space. A program is presented to show free runs and some other
details. Finally, it briefly discusses Code Pages and looks at a program that displays
their contents.
- Part #4 - B-Trees, DIRBLKs, and DIRENTs
- The most basic structures in the HPFS are DIRBLKs, DIRENTs and FNODEs. This article examines
DIRBLKs and DIRENTs, talks about the differences between binary trees and B-trees and shows
how DIRBLKs are interconnected to facilitate quick access in a large directory (one of HPFS'
strengths). To assist in this investigation, a program, ShowBtree.cmd, helps to visualise
the layout of directory and file entries in a partition.
- Part #5 - FNODEs, ALSECs and B+trees
- This article takes a long look at how a file's contents are logically stored under HPFS.
It is helpful to contrast the following file-sector allocation methods with last articles's
directory entry concepts. It also talks about fragmentation and how HPFS deals with it.
- Part #6 - ?
- This is as far as I can go... if anyone has any of the other articles that appeared in this
series, please please send them my way...
Copyright © 1998 Chris Lattner
Last modified: Wednesday, 13-Sep-2000 12:10:50 PDT |