[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: c++ problems - konqueror, etc.



On Mon, Oct 28, 2002 at 10:57:56PM +0100, Jan-Hendrik Palic wrote:
> Please forgive me this question:
> What is meant by GOT? Where can I read something about it?

...Global Offset Table...

It's one of those things that most people know but find it hard to
describe, so there's little documentation lying about the Web. This
article ( http://www.linuxjournal.com/article.php?sid=1052 ) makes
some mention of it and describes it as well as I could hope:

   "The library image contains the actual executable functions used
   by binary programs. The image also contains two tables of
   particular note: the jump table and the global offset table
   (GOT). The jump table contains eight-byte entries which redirect
   a call to a shared function from the jump table to the real
   function. The jump table exists to provide a method for creating
   compatible replacement libraries. Since each function has an
   entry of fixed size in the jump table, the jump table can provide
   an entry point for these functions at a location that remains
   constant between revisions of a library. This allows previously
   linked executables to continue to function without recompilation.
   The global offset table functions for global variables as the
   jump table does for library functions."

Hope that helps.
-- 
{ IRL(Jeremy_Stanley); PGP(9E8DFF2E4F5995F8FEADDC5829ABF7441FB84657);
SMTP(fungi@yuggoth.org); IRC(fungi@irc.yuggoth.org#ccl); ICQ(114362511);
AIM(dreadazathoth); YAHOO(crawlingchaoslabs); FINGER(fungi@yuggoth.org);
MUD(Nergel@srmud.net:2325); WWW(http://fungi.yuggoth.org/); }



Reply to: