incubator-celix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Broekhuis <>
Subject Usage of Apache Portable Runtime in Celix
Date Fri, 15 Apr 2011 08:01:08 GMT
Hi all,

Some while ago I started looking at the usage of APR in Celix.

APR provides an abstraction to OS specific tasks (file io, threading
etc), the use of APR possible makes it a lot easier to port Celix to
different platforms.
Also, APR uses memory pools for allocation and deallocation, this
could make memory management easier.

Memory pools can, for example, be used for:
- each bundle (create during installation, destroy during
- each started component (create during activator create, destroy
during activator stop)
To be able to make this work, it is important to define the lifecycle
of "objects" in the framework. This makes it possible to keep the
dynamics, but loose all freeing and destroying of allocations
throughout the code.

Of course there are also some issues, mostly concerning with the
target platforms of Celix. One of the goals is to be able to use Celix
in embedded environments. APR currently does provide support for most
uses OSed (linux, windows, bsd, ...) but not for embedded platforms
such as TI's SYS/BIOS (previously named DSP/BIOS).
Maybe (part of) the APR headers can be used to implement it for other platforms.

I would like to know if this is something we can use in Celix, and
maybe if there is someone with more knowledge about APR who can help
look at how APR can be integrated and used.

With kind regards,

Alexander Broekhuis

View raw message