Edge Application Lifecycle Management

JamaicaAMS

aicas’ application management system for deploying and managing software applications, their lifecycle, security, and resources across embedded and edge systems.


The Challenge

Manage the Complexity of Modular Software

An adaptive while scalable architecture makes it easy to add, replace, and maintain individual software components. But in embedded and edge systems, being able to flexibly configure an application is not enough. Teams also need control over how components behave at runtime, which resources they consume, and how the complete application is deployed.

Control Individual Components

Application frameworks may provide component lifecycle management without the ability to forcefully stop individual components. For systems with stronger operational requirements, teams need a way to regain control when a component does not stop as expected.

Limit Resource Consumption

Components compete for finite system resources. Without enforceable limits, an individual component can consume CPU time, memory, and filesystem resources needed elsewhere in the system.

Manage Complexity

With the advantages of modular applications usually comes an overhead in complexity. While encapsulation eases debugging and bug fixing, it makes dependency management harder.

Control System Access

Components need access to the system to provide their specified functionality. They should not have more permissions than are required for their individual task. The system needs to be protected against malicious or erroneous API usage.


The Solution

Bring Operational Control to Components, Resources, and System Access

JamaicaAMS is a flexible and adaptable application management system and service platform using Java that implements a complete, dynamic component model based on the OSGi standard.

JamaicaAMS extends the underlying application framework with capabilities for stronger component and resource control. It provides a pre-composed and pre-compiled runtime and supports multiple deployment formats for different target environments.

Control the Lifecycle Component

Manage modular application components and keep the control to safely stop individual components when required.

Service Registry and Dependency Management

Advanced dependency management automates away the complexity of modular service architectures. A central service registry, automatic dependency resolution and the ability to run multiple versions of the same component support the weaving of a long-lasting and robust application.

Enforce Resource Budgets

Define and enforce budgets for individual components across system resources including CPU time, memory, filesystem resources, and API access.

Protect the System

By running all components in a virtualized environment, JamaicaAMS protects the system against malicious and erroneous access preserving the – potentially remote – device always in a running and controllable state.


Business Outcome

Reduce Embedded Software Constraints. Save engineering time and costs.

Reduce Lifecycle Costs

Develop, test, update, and replace software components independently. Keep systems operational during maintenance, debugging, and bug fixing instead of redeploying or stopping the complete application. This reduces effort across updates, system variants, maintenance, and field service.

Accelerate Time-to-Market

Develop and release components independently instead of integrating every change into a monolithic system release. Reuse components across supported hardware, processor architectures, and operating systems to reduce system-specific development and testing. Simplify deployment across heterogeneous fleets, shorten release cycles, and bring new features to market faster.

Extend Product Lifetime

Add, update, or replace functionality throughout the system lifecycle without redeploying the complete system. Adapt deployed systems to new requirements over time and extend the economically viable lifetime of existing hardware.


Capabilities

Application Management for Modular Java Systems

Dynamic Component Model

JamaicaAMS implements a complete and dynamic component model based on the OSGi standard.

Per-Component Resource Limitations

Enforce budgets for individual components across relevant system resources, including CPU time, memory, filesystem resources, and API access.

AOT-Compiled JAR Extensibility

Extend JamaicaAMS with precompiled JARs for improved performance.

Forceful Component Stop

JamaicaAMS provides the capability to forcefully stop individual components, extending the component control available in many application frameworks.

Pre-Composed and Pre-Compiled Runtime

Ahead-of-Time compilation can be used to fine-tune application execution speed and memory footprint for the requirements of embedded targets.

Multiple Deployment Formats

JamaicaAMS is available as:

â—Ľ

Copy-in Binary Package

â—Ľ

Container Image

â—Ľ

Amazon Machine Image (AWS AMI)

â—Ľ

Red Hat Universal Base Image (UBI)

â—Ľ

Yocto Layer


Why JamaicaAMS

Why JamaicaAMS for Adaptive Software Lifecycle Management?

JamaicaAMS combines the standardized OSGi component model and Apache Felix ecosystem with additional capabilities for controlling components, limiting resource consumption, and deploying a pre-composed runtime.

True Bundle Stop

Forcefully stop individual components when waiting for them to complete is not acceptable due to timing issues and error cases.

Per-Bundle Resource Limitations

JamaicAMS allows to apply resource limits to individual bundles as well as the overall framework level.

Pre-Composed Runtime

Deploy a pre-composed and tested runtime instead of downloading, assembling, and qualifying the required runtime components independently.

Compiled Extensions

Extend the runtime with pre-compiled JARs where improved performance is required.

Multiple Deployment Formats

JamaicaAMS is available as:

â—Ľ

Copy-in Binary Package

â—Ľ

Container Image

â—Ľ

Amazon Machine Image (AWS AMI)

â—Ľ

Red Hat Universal Base Image (UBI)

â—Ľ

Yocto Layer

Capability

Regular OSGi

e.g. Apache Felix

JamaicaAMS

Component Model

Yes

Yes

Community Extensions & Updates 

Yes

Yes

Specific Patches and Fixes

No

Yes

Full Bundle Control (“stop”)

No

Yes

Per-Bundle Resource Limitations 

No

Yes

Pre-Composed Runtime 

No

Yes

Just-in-Time Compilation 

Yes

No

*

Extensibility with Pre-Compiled JARs 

No

Yes

OSGi on QNX and VxWorks

Yes

**

Yes, Built-in

JamaicaAMS offers following capabilities:

Component Model, Community Extensions & Updates, Specific Patches and Fixes, Full Bundle Control ("stop"), Per-Bundle Resource Limitations, Pre-Composed Runtimes and OSGI on QNX and VxWorks. It is extensible with pre-compiled JARs.

Support for Just-in-Time Compilation is limited*

Regular OSGi, for example Apache Felix only supports Component Model, Community Extensions & Updates and Just-in-Time Compilation.

Support for OSGi on QNX and VxWorks is limited**

*

For Windows and macOS, aicas provides a serviced build based on OpenJDK and Apache Felix without JamaicaAMS-specific functionality.

**

When running on JamaicaVM


Use Case Examples

Where is JamaicaAMS used?

Application Management

WHO
Various Automotive OEMs

WHAT
Helping car owners and the police to return your car after theft.

HOW

aicas enables the upload of software to vehicles. In case of theft, the application can – if properly authorized – provide vehicle data to the authorities. The vehicle’s location can be traced at any time, certain vehicle functions can be turned on and off. Even interaction with the driver is possible. If the vehicle stops, e.g., at a red light, the onward journey can be prevented.

VALUE
The solution enables a quick and easy upgrade to the desired software version for all processes and functions. Lifecycle management can be expanded to the functions of underlying, connected microprocessors. Completely remote and just with a few buttons, single devices, any selection of devices – even according to specific requirements, such as location, language, etc. – up to millions of devices can be managed – quick and simple.

Over-the-Air Updates for Fleet Software Management

WHO
IIC, AASA, aicas

WHAT
An Automotive Over-The-Air (AOTA) Updates Testbed that demonstrates how software can be remotely managed on a fleet of vehicles.

HOW

The base architecture is built around a Telematics Unit (TU) managing the connection to the external network. The TU has connections to the internal busses: ethernet and CAN. On the TU, a realtime OSGi framework with resource enforcement is used to manage the software lifecycle. By running an instance on each domain controller, customers can track the software on each instance. An additional level of segregation is achieved by running system and external software in a container, running as a separate process, in an FPGA, on a GPU, or on a microcontroller.

VALUE
Connecting a vehicle to the internet is just the beginning of digital transformation. This testbed demonstrates how connectivity can be used for effective data collection and remote software maintenance. Keeping the cloud-to-vehicle connection secure is essential for this transformation.


Platform Support

JamaicaAMS Platform Support

Target OS

x64

AArch64

RISC-V

Other

Linux

Yes

Yes

Yes

On Request

QNX

Yes

Yes

On Request

On Request

VxWorks

Yes

Yes

On Request

On Request

Other OS

On Request

On Request

On Request

On Request

Windows

Yes

*

 Yes

*

On Request

On Request

macOS

Yes

*

 Yes

*

On Request

On Request

On x64 and AArch64 JamaicaAMS supports Linux, QNX, Vxworks, Windows* and macOS*

RISC-V is only support on Linux*, all other OS and CPU architectures on request.

Linux

â—Ľ

Debian/Ubuntu-based

â—Ľ

RPM/RHEL-based

â—Ľ

Android-based

â—Ľ

Yocto-built

*

For Windows and macOS, aicas provides a serviced build based on OpenJDK and Apache Felix without JamaicaAMS-specific functionality.

Reviewed and Approved by AWS

aicas JamaicaAMS has been evaluated and approved by AWS and is now qualified software to run on AWS cloud services.

JamaicaAMS on AWS Marketplace

Certified by Red Hat

aicas JamaicaAMS has been certified by Red Hat and is now qualified software to run on RHEL and available in the Red Hat Ecosystem Catalog.


aicas EdgeSuite

JamaicaAMS within aicas EdgeSuite

JamaicaAMS is built on JamaicaVM, combining modular application management with a realtime Java runtime and development environment designed for embedded and IoT systems.

Combined with aicas’ Edge Device Portal (EDP), JamaicaAMS bundles can dynamically be deployed from remote for development, testing, and production workflows. aicas’ Edge Data Gateway (EDG) profits from JamaicaAMS running on a device for collecting and preprocessing data and connecting data sources and cloud endpoints with pre-build components from JamaicaCAR and JamaicaIOT.

Explore aicas EdgeSuite

Resources

Related Downloads and Information

Downloads

JamaicaAMS Manuals

Documentation

JamaicaAMS Release Notes


Next Step

Evaluate JamaicaAMS for your Application Architecture 

Discuss your component architecture, resource-control requirements, target environment, and deployment model with aicas.


FAQ

Common questions about JamaicaAMS

JamaicaAMS is a modular system and service platform for Java that implements a complete and dynamic component model based on the OSGi standard. It adds capabilities for component control, resource limitations, and runtime deployment.

Yes. JamaicaAMS implements a component model based on the OSGi standard.

Yes. JamaicaAMS is built on Apache Felix and benefits from its extensions as well as functional and security patches.

JamaicaAMS adds capabilities including forceful bundle stopping, per-bundle resource limitations, a pre-composed and pre-compiled runtime, and extensibility with pre-compiled JARs.

Yes. JamaicaAMS can enforce per-component budgets for resources including CPU time, memory, filesystem resources, and API access.

Yes. JamaicaAMS provides the capability to forcefully stop individual components.

JamaicaAMS is available as a copy-in binary package, container image, Amazon Machine Image (AWS AMI), Red Hat Universal Base Image (UBI), and Yocto layer.

Yes. JamaicaAMS implements standardized APIs that are also implemented by open-source and other proprietary solutions.

Scroll to Top