| <!-- | |
| 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é, 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> |