Dynamic Libraries

Angelo Fraietta angelo_f at bigpond.com
Fri Nov 8 10:26:14 UTC 2002

I see what you are saying.
What I am currently doing is that I have the target on a DIMMPC, so when 
I want to change the code, I have to physically remove the DIMMPC, and 
plug it into the development board.

I could get around this by writing the new file through the comm port to 
the flash disk onto the DIMMPC to replace the file that is already 
there. I could write it to a temporary file name (in case the download 
crashed for some reason), and then rename it after a complete and 
successful download (I am using GRUB on a FAT filesystem).
My only concern is that it is possible that the target downloaded does 
not work and the device would come back to me to do the change physically.

Chris Johns wrote:

> Angelo Fraietta wrote:
>> What I mean is that a user can develop compiled modules and download
>> them into the flash filesystem. When RTEMS loads, looks in the flash
>> disk and loads any modules. This allows me to add modules at run-time
>> instead of compile time. The modules would be quite specific. It
>> ultimately means that the firmware can grow with the user -- i.e. they
>> can design and add modules to their hardware product without having to
>> rebuild the whole target.
> Why not supply the libs they need to build a program ?
> I am not saying loadable modules do not have there uses, they do, 
> how-ever it seems in this case as something better suited to a build 
> machine to do once rather than having the target do each time it is 
> started plus the dependency problems separate parts generate.
> Other issues come into play with loadable modules which can become 
> important. The first is a fixed configuration table. The "unlimited" 
> support for objects (not POSIX threads as discussed else where) is a 
> start. The other is the workspace and heap are separate. A single 
> memory region for the workspace and heap to use may be a better 
> design. For example I may have a program with many many threads and 
> large stacks, while someone else has a few tasks but malloc is used 
> all the time for large amounts. These require different workspace/heap 
> splits.

Angelo Fraietta

PO Box 859
Hamilton NSW 2303

Home Page


There are those who seek knowledge for the sake of knowledge - that is CURIOSITY
There are those who seek knowledge to be known by others - that is VANITY
There are those who seek knowledge in order to serve - that is LOVE
    Bernard of Clairvaux (1090 - 1153)

More information about the users mailing list