RTDroid provides a redesigned real-time framework implementation for application abstraction and communication APIs. It presents our solution as a real-time programming model that extends Android’s basic application components for real-time development. Our programming model consists of real-time components for application expressiveness, real-time channels for interaction and real-time manifest schema for component declarations.
To prevent interferences from the runtime memory management, we alter the traditional garbage collection to an on-stack memory management inspired by the scoped memory of RTSJ. The on-stack memory management preserves memory bound for object allocation for each component, which assures a constant cost for memory reclamation and prevents any dangling reference by using runtime assginment checks.
From a developer’s point of view, our real-time components extend Android components, and our real-time application manifest is similar to the Android manifest for component declaration and real-time parameter configuration. Thereby, the real-time parameters are used for scheduling validation and model checking.