OSGi

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

OSGi (Open Services Gateway Initiative) — спецификация динамической модульной системы и сервисной платформы для Java-приложений, разрабатываемая консорциумом OSGi Alliance. Спецификации дают модель для построения приложения из компонентов, связанных вместе посредством сервисов[1]. Суть заключается в возможности переинсталлировать динамически компоненты и составные части приложения без необходимости останавливать и перезапускать его.

Круг применений данной спецификации довольно широк: изначально разрабатывалась для создания встроенных систем (в частности, для автомобилей BMW, также в разработке спецификации активно участвует Siemens), но сейчас на базе OSGi строят многофункциональные автономные настольные приложения (например, Eclipse SDK) и корпоративные системы.

OSGi Alliance, ранее известная как Open Services Gateway initiative (инициатива доступа к открытым службам) — организация открытых стандартов (open Standards Development Organization — SDO). В течение последних нескольких лет она разрабатывала основанную на Java сервисную платформу OSGi (также известна как The Dynamic Module System for Java), которая могла управляться удаленно. Основная часть этой разработки — фреймворк (каркас), который определяет модель жизненного цикла приложения и служебного реестра.

На основе этого фреймворка было создано огромное количество OSGi-служб:

  • Log
  • Configuration management
  • Preferences
  • Http Service (запускает сервлеты)
  • XML parsing (обработка данных XML)
  • Device Access (доступ к устройствам)
  • Package Admin
  • Permission Admin
  • Start Level
  • User Admin
  • IO Connector
  • Wire Admin
  • Jini
  • UPnP Exporter
  • Application Tracking
  • Signed Bundles
  • Declarative Services
  • Power Management (управление питанием)
  • Device Management (управление устройствами)
  • Security Policies
  • Diagnostic/Monitoring and Framework Layering

Версии стандарта OSGi[править | править вики-текст]

Отдельные службы определяются как наборы (bundles) OSGi
  • OSGi Release 1 (R1): май 2000
  • OSGi Release 2 (R2): октябрь 2001
  • OSGi Release 3 (R3): март 2003
  • OSGi Release 4 (R4): октябрь 2005 / сентябрь 2006
    • Core Specification (R4 Core): октябрь 2005
    • Mobile Specification (R4 Mobile / JSR-232): сентябрь 2006
  • OSGi Release 4.1: май 2007
  • OSGi Release 4.2: сентябрь 2009
    • Enterprise Specification: март 2010
  • OSGi Release 4.3 (R4.3): апрель 2011
    • Core: апрель 2011
    • Compendium and Residential: май 2012
  • OSGi Release 5 (R5): июнь 2012
    • Core and Enterprise: июнь 2012

Существуют 4 реализации стандарта OSGi с открытым исходным кодом:

На основе Equinox построена среда разработки Eclipse 3.0+, претендующая на звание отраслевого стандарта компонентной сборки программ.

Смежные RFC и стандарты Java[править | править вики-текст]

  • RFC-2608 (Service Location Protocol)
  • Sun JINI (Java Intelligent Network Infrastructure)
  • Sun JCP JSR-8 (Open Services Gateway Specification)
  • Sun JCP JSR-232 (Mobile Operational Management)
  • Sun JCP JSR-246 (Device Management API)
  • Sun JCP JSR-249 (Mobile Service Architecture for CDC)
  • Sun JCP JSR-277 — JSR-277: Java Module System
  • Sun JCP JSR-291 (Dynamic Component Support for JavaTM SE)

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Литература[править | править вики-текст]

  • Машнин Т. С. Современные Java-технологии на практике. — БХВ-Петербург, 2010. — С. 196–200. — ISBN 978-5-9775-0561-1.

Ссылки[править | править вики-текст]