Re: KDE 2.0 impressions
- From: Alexander Larsson <alla lysator liu se>
- To: "Padraig O'Briain" <Padraig Obriain ireland sun com>
- Cc: gnome-hackers gnome org
- Subject: Re: KDE 2.0 impressions
- Date: Thu, 2 Nov 2000 16:42:25 +0100 (CET)
On Wed, 1 Nov 2000, Padraig O'Briain wrote:
> Your versioning script sounds very similar to scope mapfiles on Solaris. I
> assume that it is not a coincidence that the syntax of your versioning script is
> the same as that of a scope mapfile.
I think the fomat originates from solaris symbol versioning scripts.
> I cannot speak for whether The Gnome project is interested in this although I
> would assume from a statement I saw on another message that GTK 2.0 will use
> symbol scope reduction that the intention is to use it.
I saw that, i wonder what tools they plan to use to do that. Owen?
> As to the meaing of "load":
>
> On Solaris the default method for loading an object (executable or shared
> library) is to map it into memory and then examine it for any dependencies and
> if it has any they are immediately loaded. These dependencies are then, in turn,
> examined and additional objects continue to be loaded until all inter-object
> dependencies are resolved. This may have the effect that objects are loaded into
> memory whether or not the code in the objects will actually be referenced by the
> program being run.
>
> Solaris does have an option which allows for lazy loading of objects. Objects
> which have been labelled for lazy loading will not be loaded unless explicitly
> To use Solaris-speak it seems that on Linux the efect is the same as if all
> shared libraries are labelled for lazy loading.
Well. Libraries are always mapped when they're loaded, but any symbol
references/function calls are not resolved until used.
> Solaris has another linking option, called Direct Bindings. What direct bindings
> doies is decide which symbol a specific symbol reference will bind at link-edit
> time. This is done by having the link editor record for a symbol from which
> object from which object it is made available. and record that information in
> the newly built object. This can give much faster symbol resolution and permit
> multiple symbols with the same name to exist on the same link map without name
> space collision. Does Linux have a similar feature?
Well, there is a hack called elfvector that does something similar. It can
be found at http://www.bitwagon.com/elfvector.html. But it is not widely
used.
Linux does support multiple symbols with the same name if they are in
libraries loaded by dlopen().
/ Alex
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]