Everything2
Near Matches
Ignore Exact
Full Text
Everything2

object code

created by Falrick

(thing) by Falrick (?) (print)   ?   (I like it!) Sat Nov 13 1999 at 8:48:59

Object code is the result of a program taking source code and running it through a compiler or assembler. This creates the object code which can then be linked together in such a way that the computer can understand it. Executables are created in such a way. Both are platform/processor dependend. A Mac could not understand the object code created for Linux, just as DOS could not understand the object code created for an Amiga, unless an emulator was used.

(thing) by sehrgut (2.3 hr) (print)   ?   (I like it!) Sat Sep 23 2006 at 17:01:23

Object code is the machine-readable representation of a computer program, and is the final target of the source-code compilation process. Object code is not simply a binary memory image of the program when loaded, but contains metadata necessary for modern operational necessities, such as relocation.

Object Files: Object code is stored in object files, which are repositories of the individual objects and symbols a program requires for operation — if it is executable — or that can be included in complete programs. Operating systems generally define object file formats, since the operating system is responsible for reading the object file and communicating its contents to the processor.

Symbols: One of the major forms of metadata stored in object files is the symbol table. Each unit of machine-executable instructions — whether it be a subroutine/function, or address for a variable — has a name by which it is referenced by other parts of a program when they wish to make use of it. The symbol table provides a means of organizing individual objects with the object file into a usable collection of object code.

Linking: Linking is one of the processes which depend on symbol table metadata. In producing an executable file (a special object file which is capable of being read into memory and executed as a unified whole), symbols to which individual segments of the program refer are added to the executable object file, along with the blocks of object code to which they refer (in static linking, that is: dynamic linking is more complex) so that when the program is executed, it can easily find and load objects it requires.

Relocation: <gross_simplification>In the past, object code was created with absolute addresses pointing to fixed locations in memory. Programs could operate only using memory at these hardcoded locations, and could not run if another program was loaded into their desired space. Modern object code is created with reference to offsets from a runtime-determined location in memory, and is relocated by setting the start point at runtime and loading code into memory locations relative this start point.</gross_simplification>


printable version
chaos

hardcoded "operating system" loophole in the GNU GPL link emulator
Assembler Amiga executable meme virus
Rules of program optimization binary source code compile
Hunter S. Thompson Peephole optimization Yossarian's School of Badassary Mach-O
system call variable binutils There is no hard distinction between compiled and interpreted languages
assembly language LD_LIBRARY_PATH Potter Macintosh
Y'know, if you log in, you can write something here, or contact authors directly on the site. Create a New User if you don't already have an account.
  Epicenter
Login
Password

password reminder
register

Everything2 Help

Cool Staff Picks
Drink up!
The Resistible Rise of Arturo Ui
Some Ethical Issues With The Use Of Robot Combatants
Old Bailey
What I learned from the skateboarders outside my window
"""""'""
Everything2 as a discussion forum
The Second Coming of Christ already happened
public sector
ice cream and psilocybin
Grand Rapidians - Part One
The Getty Center
People Power
homonym
New Writeups
XWiz
Trism(review)
artman2003
Briefcase Full of Souls - Part I(fiction)
Dreamvirus
Alan Ladd(person)
waverider37
Harold Holt(person)
The Debutante
Until death do us part(fiction)
Ysardo
a brother to a sister(personal)
antigravpussy
your warm whispers(personal)
Clarke
Multiculturalism(idea)
aneurin
Earl of Landaff(person)
Heitah
Pseudocide(idea)
XWiz
Google Knol(lede)
Mythi
July 24, 2008(personal)
locke baron
The fall of Earth(fiction)
BookReader
Fear the Cold(dream)
Pavlovna
Kathleen MacInnes(person)
E2 is a by-product of the existence of The Everything Development Company