[omniORB] footprint of omniorb is about 900KB; can it be redu
ced?
David Byron
dbyron@coactive.com
Tue, 20 Nov 2001 15:12:16 -0800
> I'm looking for a corba implementation for use in
> an embedded system running linux. The system only
> has 16 meg of RAM, so small footprint is important.
> (See also my posts about ace/tao's footprint.)
>
> 22652 2588 1796 27036 699c
../../../lib/i586_linux_2.0_glibc2.1/libtcpwrapGK.so.2
> Still, is there any way to reduce the footprint
> further without switching to static linking?
You could switch to the dummy gatekeeper (libomniGK_stub) by commenting out
this line from i586_linux_2.0_glibc2.1.mk.
omniORBGatekeeperImplementation = OMNIORB_TCPWRAPGK
When comparing static libraries, the dummy is 3k vs. 43k for the real
gatekeeper, at least for me.
> 230566 25932 9480 265978 40efa /usr/lib/libstdc++-libc6.2-2.so.3
You could also change eg2_impl to not use streams and I don't think you'll
have to link libstdc++. I might be wrong about that though.
I haven't tried using any kind of serious optimization to make things
smaller, but it's worth a shot.
We're actually shooting to run omniORB in 8MB of RAM, but we're using static
libraries, and uClibc (http://uclibc.org) instead of glibc. That involves
porting pthreads to uClibc and making uClibc thread-safe though, so it's not
a quick thing. Depending on your platform, uClibc may work as a shared
library, so it still might be an option for you.
Good luck. I'm curious how it goes.
-DB
---
David Byron dbyron@coactive.com
Coactive Networks, Inc. http://www.coactive.com
28 Liberty Ship Way voice:(415)289-7800
Sausalito, CA 94965 fax:(415)289-1320