Prebinding

Prebinding

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. [cite web | url=http://developer.apple.com/documentation/Darwin/Reference/ManPages/man1/update_prebinding.1.html | title=Manual Page for update_prebinding | publisher=Apple Computer Inc | work=Apple Developer Connection ]

The movement of the prebinding information out form the binary was done to allow application signing, and has been widely mis-reported as the removal of the prebinding system altogether.

The equivalent process on Linux is called prelink.

See also

* Late binding
* Library (computer science)
* Linker
* Loader (computing)
* Object File
* Relocation
* Static Library
* Prelinking
* Prefetcher

References

* [http://radio.weblogs.com/0100490/stories/2002/08/24/prebindingExplained.html A detailed explanation] of prebinding

Notes


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • prebinding — ● ►en n. m. ►PROG Mode de compilation d une bibliothèque dans lequel les références aux symboles ne sont pas marquées comme indéfinies , mais prédéfinies à une certaine adresse. De la sorte, les futurs binaires ou bibliothèque qui l utiliseront… …   Dictionnaire d'informatique francophone

  • Library (computing) — This article is about the programming concept. For Windows 7 Libraries, see Features new to Windows 7#Libraries. Illustration of an application which uses libvorbisfile to play an Ogg Vorbis file In computer science, a library is a collection of… …   Wikipedia

  • Position-independent code — In computing, position independent code (PIC) or position independent executable (PIE) is machine instruction code that executes properly regardless of where in memory it resides. PIC is commonly used for shared libraries, so that the same… …   Wikipedia

  • Portable Executable — Not to be confused with Portable application. Portable Executable Filename extension .cpl, .exe, .dll, .ocx, .sys, .scr, .drv Developed by Microsoft Type of format Binary, executable, object, shared libraries …   Wikipedia

  • Executable — This article is about a general type of computer file. For the specific file type used in some operating systems, see EXE. A hex dump of an executable real mode boot loader In computing, an executable file causes a computer to perform indicated… …   Wikipedia

  • COFF — Filename extension none, .o Developed by AT T Type of format Binary, executable, object, shared libraries Extended to XCOFF, ECOFF, Portable Executable The Common …   Wikipedia

  • Object file — OBJ file redirects here. For specific format used on DOS, see Relocatable Object Module Format. In computer science, an object file is an organized collection of separate, named sequences of machine code[citation needed]. Each sequence, or object …   Wikipedia

  • Loader (computing) — In computing, a loader is the part of an operating system that is responsible for loading programs from executables (i.e., executable files) into memory, preparing them for execution and then executing them. The loader is usually a part of the… …   Wikipedia

  • COM file — This article is about the .COM file format. For the top level Internet domain, see .com. COM Filename extension .COM Type of format Executable In many computer operating systems, a COM file is a type of executable file; the name is derived from… …   Wikipedia

  • Relocation (computer science) — In computer science, relocation is the process of replacing symbolic references or names of libraries with actual usable addresses in memory before running a program. It is typically done by the linker during compilation (at compile time),… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”