Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Resource fork
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Macintosh file systems == {{Further|Macintosh File System|Hierarchical File System (Apple)|HFS Plus}} The resource fork has three purposes in classic Macintosh file systems: * It stores all graphical data on disk until it is needed, then retrieved, drawn on the screen, and thrown away. This software variant of [[virtual memory]] reduces memory requirements from 1 MB in the [[Apple Lisa|Lisa]] to 128 KB in Macintosh.{{citation needed|date=July 2024}} * It provides a way for a non-programmer to perform [[internationalization and localization]], because all the pictures and text are stored separately in a resource fork. * It can be used to distribute nearly all of the components of an application in a single file, reducing clutter and simplifying application installation and removal. The resource fork is implemented in all of the [[file system]]s used for system drives in the [[classic Mac OS]] ([[Macintosh File System|MFS]], [[Hierarchical File System (Apple)|HFS]] and [[HFS Plus]]), and in the [[macOS]]-only [[APFS]]. The presence of a resource fork makes it easy to store a variety of additional information, such as an [[icon (computing)|icon]] that the desktop should display for that file. While the data fork allows random access to any offset within it, access to the resource fork works like extracting structured records from a [[database]]. ([[Microsoft Windows]] also has a concept of "[[Resource (Windows)|resources]]", but these are completely unrelated to resources in Mac OS.) The Macintosh file systems store [[metadata]] distinct from either the data or resource fork, such as the creation and modification timestamps, the file type and creator codes, and fork lengths. Some files have only a resource fork. One example is a font file in the classic Mac OS. Another example is a Classic [[68k]] application, where even the executable code is contained in resources of type 'CODE'. Later [[PowerPC]] binaries stored the executable code in the data fork. Since resource forks were supported only on Macintosh file systems including MFS, HFS, HFS Plus, and APFS, they could not be copied to the file systems of other [[operating system]]s. The Mac [[BinHex]] and [[MacBinary]] formats were invented to encode resource and data forks into one file, for transfer between systems. [[A/UX]] supported resource forks on Unix file systems via the [[AppleSingle and AppleDouble formats]]. Starting with [[Mac OS X Tiger]], AppleDouble was used to store resource forks on file systems such as Windows [[Server Message Block|SMB]] shares and FAT32 ([[File Allocation Table]]) volumes. In the HFS Plus file system, settings can be made to allow other forks in addition to the data and resource forks, to create a "multi-fork" application.<ref>{{cite web |title=Technical Note TN1150: HFS Plus Volume Format |url=https://developer.apple.com/library/archive/technotes/tn/tn1150.html |website=Apple Developer |date=Mar 5, 2004 |access-date=11 February 2024}}</ref> As of August 7, 2002, Apple recommended that developers should not build resources into resource forks in [[Mach-O]] binaries on Mac OS X.<ref>{{cite web | url=https://developer.apple.com/library/archive/qa/qa2001/qa1175.html#//apple_ref/doc/uid/DTS10001706 | title=Technical Q&A QA1175: Resource forks in Mach-O binaries |website=Apple Developer |date=Aug 7, 2002 |url-status=live |archive-url=https://web.archive.org/web/20230816010722/https://developer.apple.com/library/archive/qa/qa2001/qa1175.html#//apple_ref/doc/uid/DTS10001706 |archive-date= Aug 16, 2023 }}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)