Preview

Linkers and Loaders

Good Essays
Open Document
Open Document
739 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
Linkers and Loaders
SYNOPSIS

FOR

TERM PAPER

ON

LINKERS AND LOADERS

Submitted to: Submitted by:
Asst.Lect. Darvinder Kaur Pratik Raj

Sec:K1R13

Roll no.:A10

Introduction

Linker

In computer science, a linker or link editor is a program that takes one or more objects generated by a compiler and combines them into a single executable program.

[pic]

Computer programs typically comprise several parts or modules; all these parts/modules need not be contained within a single object file, and in such case refer to each other by means of symbols. Typically, an object file can contain three kinds of symbols:

• defined symbols, which allow it to be called by other modules,

• undefined symbols, which call the other modules where these symbols are defined, and

• local symbols, used internally within the object file to facilitate relocation.

For most compilers, each object file is the result of compiling one input source code file. When a program comprises multiple object files, the linker combines these files into a unified executable program, resolving the symbols as it goes along.

Linkers can take objects from a collection called a library. Some linkers do not include the whole library in the output; they only include its symbols that are referenced from other object files or libraries. Libraries exist for diverse purposes, and one or more system libraries are usually linked in by default.

The linker also takes care of arranging the objects in a program 's address space. This may involve relocating code that assumes a specific base address to another base. Since a compiler seldom knows where an object will reside, it often assumes a fixed base location (for example, zero). Relocating machine code may involve re-targeting of absolute jumps, loads and stores.

The executable output by



References: • David William Barron, Assemblers and Loaders. 1972, Elsevier. • C. W. Fraser and D. R. Hanson, A Machine Independent Linker. Software-Practice and Experience 12, 4 (April 1982). • The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition. The Open Group. Retrieved 2008-06-23. • John R. Levine: Linkers and Loaders, Morgan-Kauffman

You May Also Find These Documents Helpful

  • Satisfactory Essays

    Homework Week 2

    • 743 Words
    • 3 Pages

    5. Bob enters a pizza shop and notices there are three different sizes of pizzas available. Sizes are given as the diameter of the pizza in inches. The cost of a pizza is based on the size. Bob would like to know which size of pizza has the lowest cost per square inch.…

    • 743 Words
    • 3 Pages
    Satisfactory Essays
  • Powerful Essays

    En1320 Unit 1 Research Paper 1

    • 27742 Words
    • 111 Pages

    instructions to load the registers of the processor with data from a central memory and to…

    • 27742 Words
    • 111 Pages
    Powerful Essays
  • Satisfactory Essays

    Link is basically nothing more than a shortcut. Its purpose is to get Windows to think that a file or folder which is…

    • 314 Words
    • 2 Pages
    Satisfactory Essays
  • Good Essays

    pt1420 exam review

    • 738 Words
    • 3 Pages

    What is used to translate high level language programs to machine language (or machine code)? Compiler…

    • 738 Words
    • 3 Pages
    Good Essays
  • Powerful Essays

    EAS230Syllabus

    • 1748 Words
    • 8 Pages

    C++ programming: editing, compiling, user I/O, variables (ints, doubles, char, strings, booleans), loops, decisions, functions, pointers, arrays, tables, databases, sorting.…

    • 1748 Words
    • 8 Pages
    Powerful Essays
  • Satisfactory Essays

    6 8c Chapter Excercises

    • 515 Words
    • 2 Pages

    In object-oriented analysis each object represents real people, places, events, and transactions (nouns). Unlike structured analysis, which treats data and processes separately, objects include data and processes that can affect the data. A major advantage of O-O designs is that systems analysts can save time and avoid errors by using modular objects, and programmers can translate the designs into code, working with reusable program modules that have been tested and verified…

    • 515 Words
    • 2 Pages
    Satisfactory Essays
  • Good Essays

    It-250 Week 5 Questions

    • 397 Words
    • 2 Pages

    Libraries USE names such as libxxx.a or libxxx.so. When linked on the command line with a library, strip the lib prefix and .a or .so suffix; then prefix the remaining name with –l, as in –lxxx. By default gcc searches the /usr/lib directory for libraries. When you specify –Lpathname on the command line, gcc searches the pathname directory for each instance of –L.…

    • 397 Words
    • 2 Pages
    Good Essays
  • Good Essays

    PT1420 Assign. 10

    • 702 Words
    • 4 Pages

    Described the three steps that must be taken when a file is used by a program.…

    • 702 Words
    • 4 Pages
    Good Essays
  • Better Essays

    Lessons of Valujet 592

    • 1044 Words
    • 5 Pages

    Engineering Handbook, version 3.2 (Report No. INCOSE-TP-2003-002-03.2). Retrieved from INCOSE website: SE Handbook 2010-0201 v3.2 Updated Final 8.5x11.pdf…

    • 1044 Words
    • 5 Pages
    Better Essays
  • Satisfactory Essays

    Intro the Programming

    • 386 Words
    • 5 Pages

    In general terms, a program that is broken into smaller units of code, such as methods, is known as a(n) _______.…

    • 386 Words
    • 5 Pages
    Satisfactory Essays
  • Good Essays

    *SUPERSEDURE NOTICE - This technical manual supersedes TM 9-1005-213-23&P dated 15 March 2002, including all changes.…

    • 73810 Words
    • 656 Pages
    Good Essays
  • Good Essays

    Week 1 Homework

    • 843 Words
    • 5 Pages

    A linker takes one or more machine code modules generated by a compiler and combines them into a single executable program.…

    • 843 Words
    • 5 Pages
    Good Essays
  • Good Essays

    Reusability of Code

    • 511 Words
    • 3 Pages

    The earliest programming languages were procedural, meaning a program was made of one or more procedures. A procedure is simply a module or function that performs a specific task such as gathering input from the user, performing calculations, reading or writing files, displaying output, and so on. The programs that you have written so far have been procedural in nature. The steps a program must perform to reach the desired outcome. Procedure is an independent entity and a sequence of instructions that are grouped together. In procedural programming, a task is broken down into assortment of variables and subroutines. In OPP, a task is broken down into objects which summarize the data and execution. In a procedural approach, the entirely called variable is termed as a trait of the object. The idea is to encapsulate data and a…

    • 511 Words
    • 3 Pages
    Good Essays
  • Good Essays

    The compiler adds a symbol table to the executable so that variable names from the source code can be understood. The compiler avoids optimizing operations so that lines of code in the executable can be related to the original lines of source code.…

    • 567 Words
    • 3 Pages
    Good Essays
  • Best Essays

    [8] presented the ‘path-copying’ technique to make…

    • 4093 Words
    • 17 Pages
    Best Essays