skip to main content
10.1145/2016551.2016555acmotherconferencesArticle/Chapter ViewAbstractPublication PagescomswareConference Proceedingsconference-collections
research-article

nOSGi: a posix-compliant native OSGi framework

Published:04 July 2011Publication History

ABSTRACT

Ubiquitous computing aims at dynamically supporting users in everyday life with applications on mobile and embedded devices in the surroundings. Component frameworks, such as OSGi, ease the dynamic management of such application software. Yet, OSGi focuses on Java, while many mobile devices only support native languages with reasonable performance. Furthermore, Java may increase the costs for devices, and even small additional costs are a relevant factor for mass-market production.

This paper presents nOSGi, the first native OSGi implementation. Our C++ prototype implements the features of the OSGi R4 specification and runs without any modifications on standard POSIX systems with support for ELF binaries. It provides the core functionality of the OSGi module, life cycle and service layer in a native C++ environment. We measured considerable improvements of performance and memory consumption in comparison to common Java OSGi frameworks. Successful tests on various platforms, such as x86, x64, Sun SPARC and ARM demonstrate the portability of nOSGi.

References

  1. Apache Software Foundation. Apache Felix. http://felix.apache.org/.Google ScholarGoogle Scholar
  2. Apple Inc. Mac OS X ABI Mach-O file format reference. Mac OS X Reference Library, February 2009.Google ScholarGoogle Scholar
  3. Alexander Broekhuis. Celix proposal. http://wiki.apache.org/incubator/CelixProposal.Google ScholarGoogle Scholar
  4. Cacaovm.org. cacaovm. http://www.cacaovm.org/.Google ScholarGoogle Scholar
  5. Eclipse Foundation. Equinox. http://www.eclipse.org/equinox/.Google ScholarGoogle Scholar
  6. C. Escoffier, D. Donsez, and R. S. Hall. Developing an OSGi-like service platform for .NET. CCNC '06: 3rd IEEE Consumer Communications and Networking Conference, pages 213--217, January 2006.Google ScholarGoogle ScholarCross RefCross Ref
  7. Xiaohui Gu, Alan Messer, Ira Greenberg, Dejan Milojicic, and Klara Nahrstedt. Adaptive offloading for pervasive computing. IEEE Pervasive Computing, 3:66--73, July 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. T. Howes. A string representation of LDAP search filters. IETF RFC 1960, June 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. ISO/IEC. Standard for programming language C++. ISO/IEC 14882:2003, October 2003.Google ScholarGoogle Scholar
  10. Steffen Kächele, Jörg Domaschka, and Franz J. Hauck. COSCA: an easy-to-use component-based PaaS cloud system for common applications. In Proceedings of the First International Workshop on Cloud Computing Platforms, CloudCP '11, pages 4:1--4:6, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Peter Kriens. Minimal OSGi systems. http://www.osgi.org/blog/2010/10/minimal-osgi-systems.html.Google ScholarGoogle Scholar
  12. Microsoft Corporation. .NET framework developer center. http://msdn.microsoft.com/netframework/.Google ScholarGoogle Scholar
  13. Microsoft Corporation. Microsoft portable executable and common object file format specification. Windows Hardware Developer Central, March 2008.Google ScholarGoogle Scholar
  14. Open-Plug. Component based software development for mobile devices. Whitepaper, February 2008.Google ScholarGoogle Scholar
  15. OSGi Alliance. OSGi Service Plattform Core Specification, Version 4.0.1, August 2005.Google ScholarGoogle Scholar
  16. J. S. Rellermeyer and G. Alonso. Concierge: a service platform for resource-constrained devices. ACM SIGOPS Operating Systems Review, 41(3):245--258, March 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. P. J. Salzman. The Linux kernel module programming guide. Linux Documentation Project, May 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. W. Schulte and Y. V. Natis. 'Service oriented' architectures, part 1. SSA research note SPA-401-068, Gartner, April 1996.Google ScholarGoogle Scholar
  19. Sourceforge.net. JamVM -- a compact Java virtual machine. http://jamvm.sourceforge.net/.Google ScholarGoogle Scholar
  20. Richard M. Stallman, Roland McGrath, and Paul D. Smith. GNU Make -- A Program for Directing Recompilation. Free Software Foundation, July 2010.Google ScholarGoogle Scholar
  21. Sun Microsystems. Connected device configuration 1.1.2. JSR 218, August 2006.Google ScholarGoogle Scholar
  22. The IEEE and The Open Group. IEEE std 1003.1-2008, 2008.Google ScholarGoogle Scholar
  23. The Knopflerfish Project. Knopflerfish OSGi. http://www.knopflerfish.org/.Google ScholarGoogle Scholar
  24. M. Weiser. The computer for the 21st Century. Scientific American, 265(3):66--75, February 1991.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. nOSGi: a posix-compliant native OSGi framework

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                cover image ACM Other conferences
                COMSWARE '11: Proceedings of the 5th International Conference on Communication System Software and Middleware
                July 2011
                123 pages
                ISBN:9781450305600
                DOI:10.1145/2016551

                Copyright © 2011 ACM

                Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 4 July 2011

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader