8 research outputs found
A verifiable Lightweight Escape Analysis Supporting Creational Design Patterns
This paper presents a compositional escape analysis adapted for use in resource limited embedded systems. This analysis covers the full Java language, including dynamic class loading. Thanks to the use of an effcient verififation algorithm, small embedded systems are able to check the escape analysis information of mobile code. The traditional escape analysis is also extended, taking further steps towards full Java programming support, by adding the support of common design patterns, namely aggregation and factory, in order to allow the programmer to use coding techniques that are usually somewhat inefficient on these constrained systems
Can small and open embedded systems benefit from escape analysis?
International audienceWe discuss in this paper the usefulness and applicability of escape analysis in small and secured embedded systems used in ubiqui- tous computing. We propose a solution to support both hardware con- straints and necessary support of dynamically-loaded components in such a context
A verifiable lightweight escape analysis supporting creational design patterns for small embedded systems
International audienceThis paper presents a compositional escape analysis (EA) adapted for use in resource limited embedded sys- tems. It covers the full Java language, including dynamic class loading. Thanks to the use of an efficient verifica- tion algorithm, small embedded systems are able to check the EA information of mobile code. The traditional EA is also extended, taking further steps towards full Java pro- gramming support, by adding the support of common de- sign patterns, namely aggregation and factory, in order to allow the use of coding techniques that are usually some- what inefficient on these constrained systems
On the Use of metatypes for safe embedded operating system extension
International audienceWe present in this paper an extensible system for small secure embedded devices. We advocate the use of a typed intermediate language as a transformation of various high level languages. We present an extensible type system that unifies in a unique hierarchy some type systems from various source languages and ensures integrity and confidentility. To increase execution efficiency and use flexibility, we propose a dynamic binding mechanism that allows the programmer to describe the bindings of his code without breaking the type system. We also design the whole type system so that future addition of new kinds of objects has as little impact as possible
Safe Collaboration in Extensible Operating Systems: A study on real-time extensions
International audienceThis article proposes a solution to guaranty safe inter- action to components that are willing to collaborate in an extensible operating system that guaranties isolation. We focus on components used in extensible operating systems for smart objects. We propose a simple way to verify the behaviour of some components using an extension of the type system by addition of argument passing mode information to the method signatures (is the argument read, written, or remembered as reference?). We present a formalization of a PCC- like algorithm (off-card proof generator and on-card proof verifier) to statically check the mode type of the components in the Camille exokernel for smart cards. We apply our technique to ensure trust between collaborative real time extensions with the aim of supporting safe dynamic loading of scheduling policy
Secure extensible type system for efficient embedded operating system by using metatypes
International audienceIn the context of extensible system for small secure em- bedded devices, we present an extensible type system for typed intermediate languages that unifies in a unique hier- archy type systems from various source high level languages and ensures integrity and confidentiality. To increase exe- cution efficiency and use flexibility, we propose a dynamic binding mechanism that allows the programmer to describe the bindings of his code without breaking the type system