Removing module

Reine rg at irfu.se
Fri Dec 5 14:24:19 UTC 2014


Hello

Thank you.

What we are trying to do is minimize RTEMS because we have to qualify it 
for space use and if it is less code it will be much easier.

I've removed everything easy..

  --disable-networking
  --disable-cxx
  --disable-itron
  --disable-tests
  --disable-docs
  --disable-posix
  --disable-drvmgr

We have also removed the filesystem and the consoles.

Now I started to look at managers, what you say about unused code is 
removed seem to be
true..but not entirely .. (or it is used)

For instance we do not need the region manager or the partition manager 
but still there are symbols in the application code for the latter:

sparc-rtems-readelf -a RPWI_FSW1 | grep region
    247: 00000000     0 FILE    LOCAL  DEFAULT  ABS region.c
    295: 00000000     0 FILE    LOCAL  DEFAULT  ABS regiondata.c

juice at ubuntu:~/software/flight_software_dev$ sparc-rtems-readelf -a 
RPWI_FSW1 | grep partition
    378: 4000f7e0   252 FUNC    GLOBAL DEFAULT    1 
rtems_partition_get_buffe
    948: 4000f0e0   284 FUNC    GLOBAL DEFAULT    1 
rtems_partition_return_bu


So it seems the region manager is not there but there are things for the 
partition manager in there.

Does that mean RTEMS use the partition manager internally ?


I guess what I need is ideas to trim RTEMS down...


Reine




On 04/12/14 17:11, Gedare Bloom wrote:
> Reine,
>
> I found your message on the build ml that is better sent to the users
> mailing list, so I transcribed it here.
>
> With the master branch of RTEMS I don't believe setting MANAGERS makes
> a difference. Unused code is no longer linked into the application
> executable. What version of RTEMS are you using?
>
> If you look in the testsuites/ directory you can find many examples,
> and searching for "MANAGERS" in the Makefiles can show you how to use
> the option in the older RTEMS releases.
>
> -Gedare
>
> On Thu, Dec 4, 2014 at 11:09 AM, Gedare Bloom <gedare at gwu.edu> wrote:
>> Hello
>>
>> It says in the RTEMS documentation that some managers are optional.
>>
>> I tried to remove the region manager from the kernel by modifying the
>> file make/leaf.cfg see excerpt of top of file below:
>>
>> # make/leaf.cfg
>> #
>> #   Make(1) configuration file include'd by all leaf-node Makefiles
>> #
>>
>> #
>> # list of all known managers
>> # This list is used, along with $(MANAGERS) (set by app makefile)
>> #   to build the list of *not wanted* drivers.
>> #
>> # ref: target compiler config file for usage
>> #
>>
>> #MANAGER_LIST=barrier dpmem event io msg mp part
>> #MANAGER_LIST+=region sem signal timer rtmon ext
>>
>> MANAGER_LIST=barrier dpmem event io msg mp part
>> MANAGER_LIST+=sem signal timer rtmon ext
>>
>>
>> Then I compiled as usual including a bootstrap.
>>
>> However it did not seem to change anything?
>>
>> (The region symbols are still in the librtemscpu.a library)
>>
>>
>> What am I doing wrong ? should is set MANAGERS somewhere ?
>>
>> Best regards
>>
>> Reine Gill




More information about the users mailing list