blob: 8e0999d32eabffa7ada4d5aee29c194a55c14fef [file] [log] [blame]
<!--
This document is provided as a template along with some guidance for creating
your project proposal. This is just a template. Feel free to change it as
you see fit (add sections, remove section). We feel, however, that the
suggestions represented in this document represent the reasonable minimum
amount of information to move forward.
Please keep the formatting in this document simple. Please do not edit
this document in Microsoft Word as it adds huge piles of markup that make
it difficult to restyle.
More information is available here:
http://wiki.eclipse.org/Development_Resources/HOWTO/Pre-Proposal_Phase
Direct any questions about this template to emo@eclipse.org
-->
<html>
<head>
<!--
Include the title here. We will parse it out of here and include it on the
rendered webpage. Do not duplicate the title within the text of your page.
-->
<title>Concierge</title>
</head>
<!--
We make use of the 'classic' HTML Definition List (dl) tag to specify
committers. I know... you haven't seen this tag in a long while...
-->
<style>
dt {
display: list-item;
list-style-position: outside;
list-style-image:
url(/eclipse.org-common/themes/Phoenix/images/arrow.gif);
margin-left: 16px;
}
dd {
margin-left: 25px;
margin-bottom: 5px;
}
</style>
<body>
<p>
The Concierge project is a proposed open source project under the <a
href="http://www.eclipse.org/projects/project_summary.php?projectid=rt">RT
Project</a>.
</p>
<!--
The communication channel must be specified. Typically, this is the
"Proposals" forum. In general, you don't need to change this.
-->
<p>
This proposal is in the Project Proposal Phase (as defined in the
Eclipse Development Process) and is written to declare its intent and
scope. We solicit additional participation and input from the Eclipse
community. Please send all feedback to the <a
href="http://www.eclipse.org/forums/eclipse.proposals">Eclipse
Proposals</a> Forum.
</p>
<h2>Background</h2>
<p>Mobile and embedded devices have seen a tremendous growth in
adoption in the last years and are by now pervasively used. Both
user-facing devices (smart phones, tablets) as well as traditional M2M
applications such as sensing platforms or home automation gateways
require that software deployed to these devices can effectively
managed. OSGi and its ability of composing applications out of
software modules has been an important technology in this domain and
has its roots in this market. However, over time, OSGi implementations
have become more focused on machines with plentiful resources,
developed a large footprint, and became hard to embed into systems.</p>
<h2>Scope</h2>
<p>The scope of the Eclipse Concierge project is to remain
small-footprint and optimized for embedded devices while bringing the
framework to compliance with the current OSGi core specifications,
currently R5.</p>
<h2>Description</h2>
<p>Concierge is a small-footprint implementation of the OSGi
Core Specifications R3 standard optimized for mobile and embedded
devices. </p>
<p>The following are the goals and plans for the Concierge project:</p>
<ul>
<li>Bringing the framework to compliance with the current OSGi
core R5 specifications by aggressively focusing on the new and
future-proof features such as the generic requirement/capability
model and thereby keeping the footprint small. The target is in the
order of 300-400 kB Jar file size. Furthermore, the framework should
not only run on current and upcoming Java embedded profiles (e.g.,
Java 8 compact profile) but it should also be possible to compile the
code with the JSR-14 target to run it on legacy Java 1.4 VMs like CDC
1.1.</li>
<li>Keeping the source code compact and readable so that
interested people have a realistic chance of understanding the
internals of an OSGi framework.</li>
<li>Exploring new ways of integrating OSGi into mobile and
embedded system stacks.</li>
<li>Being a sandbox for experimental features and optimizations
for existing OSGi features that can be consumed by the Equinox
project.</li>
<li>Providing a platform for exploratory research on how to bring
the Java VM and the OSGi layer closer together to improve runtime
performance.</li>
</ul>
<p>The following are the non-goals:</p>
<ul>
<li>It is not a goal to run the Eclipse IDE on Concierge any time
soon.</li>
</ul>
<h2>Why Eclipse?</h2>
<p>Eclipse has for a long time been a home for OSGi (the Equinox
framework implementation) and OSGi tooling (PDE, etc.). Even though
the Eclipse Foundation already has an OSGi framework implementation in
Equinox, we think that there is space for a new targeted effort around
mobile and embedded systems and we hope that the innovations created
through the Concierge project can help to improve Equinox.</p>
<h2>Relationship with Eclipse Projects</h2>
<p>Concierge is an alternative implementation to Equinox of the
OSGi core framework. However, it has a distinct and different focus in
that it is targeted at highly constrained environments. Concierge and
Equinox will discuss possible collaborations and convergence in the
future. Furthermore, due to its smaller footprint and simpler
structure Concierge can serve as the sandbox for experimental work on
the OSGi core which can later be adopted by Equinox.</p>
<h2>Initial Contribution</h2>
<p>The initial contribution would be the framework portion of the
code from the Concierge Sourceforge project
(http://concierge.sourceforge.net) by ETH Zurich. It could possibly
also include existing example code and unit tests.</p>
<h2>Legal Issues</h2>
<p>ETH Zurich will confirm to the Eclipse Foundation in writing
that they will not make any claims to the name "Concierge" in
connection to the software. There are no known legal issues.</p>
<p>Pending approval of the Eclipse Foundation Board, Concierge will
be dual licensed under Eclipse Public License 1.0 (EPL) and Eclipse
Distribution License 1.0 (BSD/EDL).</p>
<h2>Committers</h2>
<p>The following individuals are proposed as initial committers to
the project:</p>
<dl>
<dt>Jan S. Rellermeyer, IBM Research (lead)</dt>
<dd>Jan is a committer on the ECF project where he has made
significant contributions over many years. He is also the author of
the Concierge Sourceforge project. Furthermore, Jan is the creator
and main contributor of the R-OSGi and jSLP project at Sourceforge.</dd>
<dt>Tim Verbelen, Ghent University</dt>
<dd>Tim will be working on the better integration of OSGi into
the Android software stack and on applications of OSGi for augmented
reality. He will likely get help from PhD students who have recently
joined his research group.</dd>
</dl>
<p>We welcome additional committers and contributions.</p>
<h2>Mentors</h2>
<p>The following Architecture Council members will mentor this
project:</p>
<ul>
<li>John Duimovich, IBM</li>
<li>Benjamin Cab&eacute;, Sierra Wireless</li>
</ul>
<h2>Interested Parties</h2>
<p>The following individuals, organisations, companies and projects
have expressed interest in this project:</p>
<ul>
<li>Hans Kamutzki, MicroDoc GmbH</li>
<li>Werner Keil, Eclipse UOMo Project lead</li>
<li>Marco Carrer, Eurotech</li>
</ul>
<h2>Project Scheduling</h2>
<p>The Concierge project intends to make first code contributions
by July 2013 and start builds to be available shortly after that.</p>
<h2>Changes to this Document</h2>
<!--
List any changes that have occurred in the document here.
You only need to document changes that have occurred after the document
has been posted live for the community to view and comment.
-->
<table>
<tr>
<th>Date</th>
<th>Change</th>
</tr>
<tr>
<td>3-July-2013</td>
<td>Clarification regarding Java 1.4 and addition of interested parties.</td>
</tr>
</table>
</body>
</html>