Concierge

The project has been created. Please visit the project page.

Concierge

The Concierge project is a proposed open source project under the RT Project.

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 Eclipse Proposals Forum.

Background

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.

Scope

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.

Description

Concierge is a small-footprint implementation of the OSGi Core Specifications R3 standard optimized for mobile and embedded devices.

The following are the goals and plans for the Concierge project:

  • 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.
  • Keeping the source code compact and readable so that interested people have a realistic chance of understanding the internals of an OSGi framework.
  • Exploring new ways of integrating OSGi into mobile and embedded system stacks.
  • Being a sandbox for experimental features and optimizations for existing OSGi features that can be consumed by the Equinox project.
  • Providing a platform for exploratory research on how to bring the Java VM and the OSGi layer closer together to improve runtime performance.

The following are the non-goals:

  • It is not a goal to run the Eclipse IDE on Concierge any time soon.

Why Eclipse?

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.

Relationship with Eclipse Projects

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.

Initial Contribution

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.

Legal Issues

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.

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).

Committers

The following individuals are proposed as initial committers to the project:

Jan S. Rellermeyer, IBM Research (lead)
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.
Tim Verbelen, Ghent University
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.

We welcome additional committers and contributions.

Mentors

The following Architecture Council members will mentor this project:

  • John Duimovich, IBM
  • Benjamin Cabé, Sierra Wireless

Interested Parties

The following individuals, organisations, companies and projects have expressed interest in this project:

  • Hans Kamutzki, MicroDoc GmbH
  • Werner Keil, Eclipse UOMo Project lead
  • Marco Carrer, Eurotech

Project Scheduling

The Concierge project intends to make first code contributions by July 2013 and start builds to be available shortly after that.

Changes to this Document

Date Change
3-July-2013 Clarification regarding Java 1.4 and addition of interested parties.