What is a forked file structure?
Note: This document applies primarily to Mac OS 9 and earlier. In Mac OS X, files with multiple forks are less common. For most native applications, the resource information is stored differently, and documents typically don't require resource forks at all.
A forked file structure is a way of storing information unique to Mac OS computers. Every Mac OS file consists of at least one of two separate pieces of information, or forks: a data fork and often a resource fork. A file's data fork holds raw data in an organized but relatively unintelligible format. The resource fork consists of all the interfaces, dialog boxes, warning boxes, and graphical user interface (GUI) information necessary to format and present the data in a familiar and Mac OS-like way.
Not every Macintosh file has both a resource and a data fork. Many files, such as those created by word processors and spreadsheet programs, are entirely data. All of the extra formatting and GUI information resides in the application that made the file, and this tells the file how to look and behave.
Because of the forked file structure, it is often necessary to encode Mac files before transferring them on the Internet or to other operating systems. Without this encoding, the files' resource forks will be stripped away, which will ruin any classic application, and certain Mac-only documents as well. If you are transferring files used on multiple platforms (e.g., GIF images, Microsoft Word documents, HTML files) it isn't necessary to encode them first, but otherwise, use a program such as DropStuff to protect them.
Understanding the difference between the two forks is also important when using a file recovery application. Most of these can tell you what kind of damage your file has suffered, and whether the data fork or the resource fork of the file has been corrupted or damaged. As a general rule, if only the resource fork has been damaged there is a better chance of retrieving the file's contents to be entered again, or transported to a new, undamaged file.
Last modified on May 13, 2009.







