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

Dynamic Object File Loading



Till Straumann wrote:
> Chris Johns wrote:
>> Bassem Fahmy wrote:
>>  
>>> Hi,
>>> i'd like to handle the Dynamic Object File Loading. what shuold i do 
>>> to start. is there in approvals i should take before i start.
>>>  
>>>     
>>
>> Please head to http://www.rtems.org/wiki/index.php/RTEMSSummerOfCode 
>> in the wiki and the Student information sections.
>>
>> For dynamic loading there is a wiki page about the project:
>>
>>   http://www.rtems.org/wiki/index.php/Dynamic_Object_File_Loading
>>
>> If you have specific questions feel free to contact me.
>>
>>   
> One thing the wiki doesn't mention (I know, I should add this myself...):
> 
> Ordinary shared libraries (as created e.g., by the gnu tools) are
> designed to be shared among processes where each process
> possibly has a different virtual address map. Thus, the 
> relocation-mechanism
> has to be flexible enough to allow 'per-process' relocations.
> 
> This is solved with a level of indirection (GOT and PLTs) which
> add some overhead to every access of an external reference
> (compared to static linking).
> 
> Since RTEMS is a 'single-address-space' system there
> is really no need for this indirection.
> 
> Avoiding this overhead was one reason for implementing
> cexp's linker as a static linker.
> 

This is an important point and should be added to the Wiki. It is important we 
capture things like this. I would add it but I feel I would not do as good a 
job of it.

Did you profile this or was it by inspection and analysis ?

> Also: the soon to be released, new version of cexp comes
> with an ELF reader that may be useful to this project, too
> (I was unable to find an ELF reader under a suitable
> license which would not read the entire ELF file into
> memory before operating on it. My ELF reader [on
> a 'seekable' filesystem] only reads the required/requested
> pieces of a file).

Great and yes I also have not seen an ELF reader like this. Thanks.

Regards
Chris

> 
> -- Till
> 
>> Regards
>> Chris
>> _______________________________________________
>> rtems-users mailing list
>> rtems-users at rtems.com
>> http://rtems.rtems.org/mailman/listinfo/rtems-users
>>   
>