Execution Loader

From OSDev Wiki
Jump to navigation Jump to search

This article is a stub! This page or section is a stub. You can help the wiki by accurately contributing to it.

An Execution Loader or program loader is a program or operating system service which parses an executable Object File and loads (or maps) the executable section into memory. It may have additional functions as well, such as:

  • Determining if there is a copy of the program already loaded or mapped into memory, and mapping the executable section of the process to share the existing memory footprint;
  • Editing the executable image to patch addresses into the code, either to allow relocation, or to map external references to shared (dynamic) libraries,
  • Loading shared libraries into memory, and caching them to avoid reloading.