Content area

Abstract

Dans ce mémoire, nous nous intéressons à étudier le langage Java sur deux volets: la sémantique dynamique et l'analyse de flot de contrôle.

Dans la première partie de ce travail nous élaborons une sémantique dynamique formelle sous forme d'un ensemble de règles d'évaluation. Cette sémantique dynamique avec la sémantique statique élaborée dans l'équipe dans le cadre de la maîtrise de Mme Fourati constituent les fondements théoriques pour les techniques d'analyse, d'optimisation et de vérification de programmes Java.

Dans la deuxième partie nous concevons une technique d'analyse de flot de contrôle. Cette analyse est préalable à toutes les analyses statiques visant à optimisier le code ou à le vérifier. L'analyse de flot de contrôle de Java se heurte à deux obstacles majeurs: les appels dynamiques et les exceptions. Nous présentons une technique qui permet de résoudre ces deux problèmes ensemble. Cette méthode agit en deux phases: la première au niveau intraprocédural (dans une seule procédure) et la deuxième au niveau interprocédural (entre procédures). Des algorithmes de construction du graphe de flot de contrôle pour un programme Java sont proposés.

Abstract (AI English translation)

Information popover about translation disclaimer

In this thesis, we are interested in studying the Java language on two aspects: dynamic semantics and control flow analysis.

In the first part of this work we develop a formal dynamic semantics in the form of a set of evaluation rules. This dynamic semantics with the static semantics developed in the team as part of Ms. Fourati's master's degree constitute the theoretical foundations for the techniques of analysis, optimization and verification of Java programs.

In the second part we design a control flow analysis technique. This analysis is prior to all static analyzes aimed at optimizing the code or verifying it. Java control flow analysis faces two major obstacles: dynamic calls and exceptions. We present a technique that solves these two problems together. This method acts in two phases: the first at the intraprocedural level (within a single procedure) and the second at the interprocedural level (between procedures). Algorithms for constructing the control flow graph for a Java program are proposed.

Details

1010268
Classification
Identifier / keyword
Title
Sémantique dynamique et analyse de flot de contrôle pour Java
Alternate title
Dynamic Semantics and Control Flow Analysis for Java
Number of pages
118
Publication year
2000
Degree date
2000
School code
0726
Source
MAI 39/03M, Masters Abstracts International
ISBN
978-0-612-55888-5
Advisor
University/institution
Universite Laval (Canada)
University location
Canada -- Quebec, CA
Degree
M.Sc.
Source type
Dissertation or Thesis
Language
French
Document type
Dissertation/Thesis
Dissertation/thesis number
MQ55888
ProQuest document ID
304653769
Document URL
https://www.proquest.com/dissertations-theses/sémantique-dynamique-et-analyse-de-flot-contrôle/docview/304653769/se-2?accountid=208611
Copyright
Database copyright ProQuest LLC; ProQuest does not claim copyright in the individual underlying works.
Database
ProQuest One Academic