On transforming Java-like programs into memory-predictable code

The ScopedMemory class of the RTSJ enables the organization of objects into regions. This ensures time-predictable management of dynamic memory. Using scopes forces the programmer to reason in terms of locality, to comply with RTSJ restrictions. The programmer is also faced with the problem of provi...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Garbervetsky, D., Yovine, S., Braberman, V., Rouaux, M., Taboada, A.
Formato: CONF
Materias:
Acceso en línea:http://hdl.handle.net/20.500.12110/paper_97816055_v_n_p140_Garbervetsky
Aporte de:
id todo:paper_97816055_v_n_p140_Garbervetsky
record_format dspace
spelling todo:paper_97816055_v_n_p140_Garbervetsky2023-10-03T16:44:05Z On transforming Java-like programs into memory-predictable code Garbervetsky, D. Yovine, S. Braberman, V. Rouaux, M. Taboada, A. Compile time Dynamic memory Java-like programs Memory management Memory organizations Memory region Memory usage Parametric forms Program variables Run-time errors Semi-automatics Automatic programming Computer software Embedded systems Java programming language Time series analysis Real time systems The ScopedMemory class of the RTSJ enables the organization of objects into regions. This ensures time-predictable management of dynamic memory. Using scopes forces the programmer to reason in terms of locality, to comply with RTSJ restrictions. The programmer is also faced with the problem of providing upper-bounds for regions. Without appropriate compile-time support, scoped-memory management may lead to unexpected runtime errors. This work presents the integration of a series of compile-time analysis techniques to help identifying memory regions, their sizes, and overall memory usage. First, the tool synthesizes a scoped-based memory organization where regions are associated with methods. Second, it infers their sizes in parametric forms in terms of relevant program variables. Third, it exhibits a parametric upper-bound on the total amount of memory required to run a method. We present some preliminary results showing that semi-automatic, tool-assisted generation of scoped-based code is both helpful and doable. Copyright 2009 ACM. Fil:Garbervetsky, D. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Braberman, V. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Rouaux, M. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. Fil:Taboada, A. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. CONF info:eu-repo/semantics/openAccess http://creativecommons.org/licenses/by/2.5/ar http://hdl.handle.net/20.500.12110/paper_97816055_v_n_p140_Garbervetsky
institution Universidad de Buenos Aires
institution_str I-28
repository_str R-134
collection Biblioteca Digital - Facultad de Ciencias Exactas y Naturales (UBA)
topic Compile time
Dynamic memory
Java-like programs
Memory management
Memory organizations
Memory region
Memory usage
Parametric forms
Program variables
Run-time errors
Semi-automatics
Automatic programming
Computer software
Embedded systems
Java programming language
Time series analysis
Real time systems
spellingShingle Compile time
Dynamic memory
Java-like programs
Memory management
Memory organizations
Memory region
Memory usage
Parametric forms
Program variables
Run-time errors
Semi-automatics
Automatic programming
Computer software
Embedded systems
Java programming language
Time series analysis
Real time systems
Garbervetsky, D.
Yovine, S.
Braberman, V.
Rouaux, M.
Taboada, A.
On transforming Java-like programs into memory-predictable code
topic_facet Compile time
Dynamic memory
Java-like programs
Memory management
Memory organizations
Memory region
Memory usage
Parametric forms
Program variables
Run-time errors
Semi-automatics
Automatic programming
Computer software
Embedded systems
Java programming language
Time series analysis
Real time systems
description The ScopedMemory class of the RTSJ enables the organization of objects into regions. This ensures time-predictable management of dynamic memory. Using scopes forces the programmer to reason in terms of locality, to comply with RTSJ restrictions. The programmer is also faced with the problem of providing upper-bounds for regions. Without appropriate compile-time support, scoped-memory management may lead to unexpected runtime errors. This work presents the integration of a series of compile-time analysis techniques to help identifying memory regions, their sizes, and overall memory usage. First, the tool synthesizes a scoped-based memory organization where regions are associated with methods. Second, it infers their sizes in parametric forms in terms of relevant program variables. Third, it exhibits a parametric upper-bound on the total amount of memory required to run a method. We present some preliminary results showing that semi-automatic, tool-assisted generation of scoped-based code is both helpful and doable. Copyright 2009 ACM.
format CONF
author Garbervetsky, D.
Yovine, S.
Braberman, V.
Rouaux, M.
Taboada, A.
author_facet Garbervetsky, D.
Yovine, S.
Braberman, V.
Rouaux, M.
Taboada, A.
author_sort Garbervetsky, D.
title On transforming Java-like programs into memory-predictable code
title_short On transforming Java-like programs into memory-predictable code
title_full On transforming Java-like programs into memory-predictable code
title_fullStr On transforming Java-like programs into memory-predictable code
title_full_unstemmed On transforming Java-like programs into memory-predictable code
title_sort on transforming java-like programs into memory-predictable code
url http://hdl.handle.net/20.500.12110/paper_97816055_v_n_p140_Garbervetsky
work_keys_str_mv AT garbervetskyd ontransformingjavalikeprogramsintomemorypredictablecode
AT yovines ontransformingjavalikeprogramsintomemorypredictablecode
AT brabermanv ontransformingjavalikeprogramsintomemorypredictablecode
AT rouauxm ontransformingjavalikeprogramsintomemorypredictablecode
AT taboadaa ontransformingjavalikeprogramsintomemorypredictablecode
_version_ 1807318564519018496