Flow Sensitive-Insensitive Pointer Analysis Based Memory Safety for Multithreaded Programs

被引:0
|
作者
El-Zawawy, Mohamed A. [1 ]
机构
[1] Cairo Univ, Fac Sci, Dept Math, Giza 12613, Egypt
关键词
Pointer analysis; memory safety; operational semantics; multithreaded programs; type systems; SYSTEM EQUIVALENT;
D O I
暂无
中图分类号
TP39 [计算机的应用];
学科分类号
081203 ; 0835 ;
摘要
The competency of pointer analysis is crucial for many compiler optimizations, transformations, and checks like memory safety. The potential interaction between threads in multithreaded programs complicates their pointer analysis and memory-safety check. The trade-off between accuracy and scalability remains a main issue when studying these analyses. In this work, we present novel approaches for the pointer analysis and memory safety of multithreaded programs as simply structured type systems. In order to balance accuracy and scalability, the type system proposed for pointer analysis of multithreaded programs is flow-sensitive and it invokes another flow-insensitive type system for parallel constructs. Therefore the proposed pointer analysis is described as flow sensitive-insensitive. The third type system presented in this paper takes care of memory safety of multithreaded programs and is an extension of the type system of pointer analysis. Programs having types in memory-safety type system, are guaranteed to be memory safe. Type derivations serve as proofs for correctness of the result of every pointer analysis and memory-safety check. Such proofs are required in the area of proof-carrying code.
引用
收藏
页码:355 / 369
页数:15
相关论文
共 50 条
  • [1] Sparse Flow-Sensitive Pointer Analysis for Multithreaded Programs
    Sui, Yulei
    Di, Peng
    Xue, Jingling
    [J]. PROCEEDINGS OF CGO 2016: THE 14TH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2016, : 160 - 170
  • [2] Pointer analysis for multithreaded programs
    Rugina, R
    Rinard, M
    [J]. ACM SIGPLAN NOTICES, 1999, 34 (05) : 77 - 90
  • [3] Pointer and escape analysis for multithreaded programs
    Salcianu, A
    Rinard, M
    [J]. ACM SIGPLAN NOTICES, 2001, 36 (07) : 12 - 23
  • [4] Pointer analysis of multithreaded Java programs
    Nanda, Mangala Gowri
    Ramesh, S.
    [J]. Proc ACM Symp Appl Computing, 1600, (1068-1075):
  • [5] Probabilistic pointer analysis for multithreaded programs
    El-Zawawy, Mohamed A.
    [J]. SCIENCEASIA, 2011, 37 (04): : 344 - 354
  • [6] Proving Termination and Memory Safety for Programs with Pointer Arithmetic
    Stroeder, Thomas
    Giesl, Juergen
    Brockschmidt, Marc
    Frohn, Florian
    Fuhs, Carsten
    Hensel, Jera
    Schneider-Kamp, Peter
    [J]. AUTOMATED REASONING, IJCAR 2014, 2014, 8562 : 208 - 223
  • [7] Automatically Proving Termination and Memory Safety for Programs with Pointer Arithmetic
    Thomas Ströder
    Jürgen Giesl
    Marc Brockschmidt
    Florian Frohn
    Carsten Fuhs
    Jera Hensel
    Peter Schneider-Kamp
    Cornelius Aschermann
    [J]. Journal of Automated Reasoning, 2017, 58 : 33 - 65
  • [8] Automatically Proving Termination and Memory Safety for Programs with Pointer Arithmetic
    Stroeder, Thomas
    Giesl, Juergen
    Brockschmidt, Marc
    Frohn, Florian
    Fuhs, Carsten
    Hensel, Jera
    Schneider-Kamp, Peter
    Aschermann, Cornelius
    [J]. JOURNAL OF AUTOMATED REASONING, 2017, 58 (01) : 33 - 65
  • [9] Online efficient predictive safety analysis of multithreaded programs
    Koushik Sen
    Grigore Roşu
    Gul Agha
    [J]. International Journal on Software Tools for Technology Transfer, 2006, 8 (3) : 248 - 260
  • [10] Online efficient predictive safety analysis of multithreaded programs
    Sen, K
    Rosu, G
    Agha, G
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, PROCEEDINGS, 2004, 2988 : 123 - 138