Extracting permission-based specifications from a sequential Java program

Ayesha Sadiq, Yuan-Fang Li, Sea Ling, Ijaz Ahmad

    Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

    3 Citations (Scopus)


    It is expected that muti-core systems will become the dominant computing platform in the next few years. However, the current programming models (such as Java, .Net etc.) do not scale well to exploit the computing power of such multi-core systems. In primitive programming paradigms there exist implicit dependencies between code and program states, and compilers cannot exploit the potential concurrency present in the program unless the programmer introduces concurrency manually using multi-threading, which is prone to errors such as race conditions and deadlocks. The goal of this research is to help programmers achieve concurrency without mastering the intricacies of this domain. We propose a formal technique and a high-level algorithm to extract implicit dependencies from a sequential Java program in the form of access permission rights. The proposed technique performs static analysis of the source code on a modular basis. The inferred permissions can potentially be used by runtime engines such as Java Virtual Machine (JVM) to automatically parallelize sequential programs on multi-core systems and to reason about concurrency.
    Original languageEnglish
    Title of host publication21st International Conference on Engineering of Complex Computer Systems (ICECCS 2016)
    Subtitle of host publicationDubai, United Arab Emirates, 6-8 November 2016, Proceedings
    EditorsHai Wang, Mounir Mokhtari
    Place of PublicationLos Alamitos, CA
    PublisherIEEE, Institute of Electrical and Electronics Engineers
    Number of pages4
    ISBN (Electronic)9781509055272
    ISBN (Print)9781509055265
    Publication statusPublished - 12 Jan 2017
    EventIEEE International Conference on Engineering of Complex Computer Systems 2016 - Dubai, United Arab Emirates
    Duration: 6 Nov 20168 Nov 2016
    Conference number: 21st
    https://ieeexplore.ieee.org/xpl/conhome/7814733/proceeding (Proceedings)


    ConferenceIEEE International Conference on Engineering of Complex Computer Systems 2016
    Abbreviated titleICECCS 2016
    Country/TerritoryUnited Arab Emirates
    Internet address


    • Access permissions
    • Static analysis
    • Concurrency
    • Permission inference

    Cite this