Prebinding is a method for reducing the time it takes to launch executables in the Mach-O file format. For example, this is what Mac OS X is doing when in the "Optimizing" stage of installing system software or certain applications.

Prebinding looks up memory offsets of symbols in libraries that the program is using before the program is launched, and stores this information ahead-of-time, so that the computer need not look up offsets repeatedly on each launch of the application.

Prebinding has changed a few times within the Mac OS X series. Until 10.2 prebinding only happened during the installation procedure (the aforementioned "Optimizing" stage). From 10.2 through 10.4 the OS checked for prebinding at launch time for applications, and the first time an application was run it would be prebound. So subsequent launches would be faster. This could also be manually run, and some OS-level installs did run this. In 10.5 Apple has changed the location of the prebinding information. It has moved from the front of each Mach-O executable to a shared cache on the computer.[1]

The movement of the prebinding information out from the binary was done to allow application signing, although it has been widely misreported as the removal of the prebinding system altogether.

The equivalent process on Linux is called prelink.

See also

References

Notes

  1. ^ "Manual Page for update_prebinding". Apple Developer Connection. Apple Computer Inc.

No comments have been added.



Your name:

City:

Country:

Your comments:

Security check *
(Please enter the number into adjoining box)