Mach-O
From Wikipedia, the free encyclopedia
Mach-O | |
---|---|
File extension: | none, .o, .dylib |
Uniform Type Identifier: | com.apple.mach-o-binary |
Developed by: | Carnegie Mellon University/Apple Inc. |
Type of format: | Binary, executable, object, shared libraries, core dump |
Container for: | Sparc, PA-RISC, PowerPC and x86 executable code, memory image dumps |
Mach-O (pronounced as "mac O"[citation needed]), short for Mach object file format, is a file format for executables, object code, shared libraries, dynamically-loaded code, and core dumps. An executable file format specifies the order in which code and data is loaded into memory, as ordering of code and data in the file.
Mach-O was once used by most systems that based on the Mach kernel. NeXTSTEP, Darwin and Mac OS X are examples of systems that have used this format for native executables, libraries and object code. GNU Hurd, which uses GNU Mach as its microkernel, uses ELF, and not Mach-O, as its standard binary format. Mac OS X is probably the last system using Mach-O today.
Binaries are divided into segments. Each segment consists of zero or more sections.
Mach-O files support more than one type of machine code in the file. Apple uses this feature to create Mac OS X Universal binaries, which can run on either 32-bit x86, 64-bit x86 (x86-64), 32-bit PowerPC, or 64-bit PowerPC Macintoshes; they are in the form of applications, dynamically-linked shared libraries (dylibs), or Mach-O bundles (code dynamically loaded at runtime). The operating system is then able to select which executable code to use, based on the computer's architecture.
[edit] See also
- Fat binary
- Universal binary
- Apple Intel transition
- Xcode
- Mac OS X users can type man Mach-O in Terminal to see its man page.
[edit] External links
- Mach-O File Format Reference (Apple Inc.)
Applications
Address Book • Automator • Calculator • Chess • Dashboard • Dictionary • DVD Player • Finder • Front Row • Grapher • iCal • iChat • iSync • iTunes • Mail • Photo Booth • Preview • QuickTime Player • Safari • Sherlock • Stickies • TextEdit
Utilities
Activity Monitor • AirPort Admin Utility • Audio MIDI Setup • Bluetooth File Exchange • BOMArchiveHelper • Classic • ColorSync Utility • Console • Crash Reporter • DigitalColor Meter • Directory Access • DiskImageMounter • Disk Utility • Font Book • Grab • Help Viewer • Image Capture • Installer • Internet Connect • Keychain Access • Migration Assistant • NetInfo Manager • Network Utility • ODBC Administrator • Printer Setup Utility • Software Update • System Preferences • System Profiler • Terminal • Universal Access • VoiceOver • X11
Technology & User interface (future features italicized)
⌘ • ⌥ • Apple Advanced Typography • AppleScript • Aqua • ATSUI • Audio Units • Bonjour • Boot Camp • Carbon • Cocoa • ColorSync • Core Animation • Core Audio • Core Data • Core Foundation • Core Image • Core Video • CUPS • Darwin • Exposé • FileVault • icns • Inkwell • I/O Kit • Keychain • Mach-O • OpenGL • Preference Pane • plist • Quartz • QuickTime • Rosetta • Smart folders • Spaces • Spotlight • Time Machine • Uniform Type Identifier • Universal binary • WebKit • Xgrid • XNU