If is an object le the linker adds to updates and to

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: ng table for the symbol tables in the .symtab and .debug sections, and for the section names in the section headers. A string table is a sequence of null-terminated character strings. Aside: Why is uninitialized data called .bss? The use of the term .bss to denote uninitialized data is universal. It was originally an acronym for the “Block Storage Start” instruction from the IBM 704 assembly language (circa 1957) and the acronym has stuck. A simple way to remember the difference between the .data and .bss sections is to think of “bss” as an abbreviation for “Better Save Space!”. End Aside. 7.5 Symbols and Symbol Tables Each relocatable object module, Ñ, has a symbol table that contains information about the symbols that are defined and referenced by Ñ. In the context of a linker, there are three different kinds of symbols: ¯ ¯ Global symbols that are defined by module Ñ and that can be referenced by other modules. Global linker symbols correspond to nonstatic C functions and global variables that are defined without the C static attri...
View Full Document

This note was uploaded on 09/02/2010 for the course ELECTRICAL 360 taught by Professor Schultz during the Spring '10 term at BYU.

Ask a homework question - tutors are online