A formal translation of CIL (i.e. .Net) bytecode into Java bytecode is introduced and proved sound with respect to the language semantics. The resulting code is then analyzed with Julia, an industrial static analyzer of Java bytecode. The overall process of translation and analysis is fast, scales to industrial programs, and introduces a negligible number of false alarms. The main contribution of this work is to leverage existing, mature, and sound analyzers for Java bytecode by applying them also to the wide range of .Net software systems. Experimental results show the actual effectiveness of this approach when applied to all the system libraries of the Microsoft .Net framework version 4.0.30319 (about 5MLOCs)
The Java Virtual Machine embodies a verifier that performs a set of checks on Java bytecode programs...
International audienceThe Java virtual machine executes stack-based bytecode. The intensive use of a...
Program analyses are an important tool to check if a system fulfills its specification. A typical im...
A formal translation of CIL (i.e., .Net) bytecode into Java bytecode is introduced and proved sound ...
A formal translation of CIL (i.e. .Net) bytecode into Java bytecode is introduced and proved sound w...
The size of software constantly increases and the amount of new software released every day is too l...
We describe our software tool Julia for the static analysis of full Java bytecode, for optimisation ...
. The term "Java" is used to denote two different concepts: the language itself and the re...
The Julia static analyzer applies abstract interpretation to the analysis and verification of Java b...
In this paper we present Jimple, a 3-address intermediate representation that has been designed to s...
International audienceStatic analysis is a powerful technique for automatic verification of programs...
To assess the security and quality of the growing number of programs on desktop computers, mobile de...
Dynamic analysis of software systems requires the instrumentation of application programs with funct...
New toolkits that parse, analyze, and transform Java Bytecode are frequently developed from scratch ...
Even though immutability is a desirable property, especially in a multi-threaded environment, implem...
The Java Virtual Machine embodies a verifier that performs a set of checks on Java bytecode programs...
International audienceThe Java virtual machine executes stack-based bytecode. The intensive use of a...
Program analyses are an important tool to check if a system fulfills its specification. A typical im...
A formal translation of CIL (i.e., .Net) bytecode into Java bytecode is introduced and proved sound ...
A formal translation of CIL (i.e. .Net) bytecode into Java bytecode is introduced and proved sound w...
The size of software constantly increases and the amount of new software released every day is too l...
We describe our software tool Julia for the static analysis of full Java bytecode, for optimisation ...
. The term "Java" is used to denote two different concepts: the language itself and the re...
The Julia static analyzer applies abstract interpretation to the analysis and verification of Java b...
In this paper we present Jimple, a 3-address intermediate representation that has been designed to s...
International audienceStatic analysis is a powerful technique for automatic verification of programs...
To assess the security and quality of the growing number of programs on desktop computers, mobile de...
Dynamic analysis of software systems requires the instrumentation of application programs with funct...
New toolkits that parse, analyze, and transform Java Bytecode are frequently developed from scratch ...
Even though immutability is a desirable property, especially in a multi-threaded environment, implem...
The Java Virtual Machine embodies a verifier that performs a set of checks on Java bytecode programs...
International audienceThe Java virtual machine executes stack-based bytecode. The intensive use of a...
Program analyses are an important tool to check if a system fulfills its specification. A typical im...