A Trustworthy Framework for Resource-Aware Embedded Programming

被引:1
|
作者
Barwell, Adam D. [1 ]
Brown, Christopher [1 ]
机构
[1] Univ St Andrews, St Andrews, Fife, Scotland
基金
英国工程与自然科学研究理事会;
关键词
Dependent Types; Idris; Lightweight Verification; Non-Functional Properties; Embedded Systems; ABSTRACT INTERPRETATION; VERIFICATION;
D O I
10.1145/3412932.3412944
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Systems with non-functional requirements, such as Energy, Time and Security (ETS), are of increasing importance due to the proliferation of embedded devices with limited resources such as drones, wireless sensors, and tablet computers. Currently, however, there are little to no programmer supported methodologies or frameworks to allow them to reason about ETS properties in their source code. Drive is one such existing framework supporting the developer by lifting non-functional properties to the source-level through the Contract Specification Language (CSL), allowing non-functional properties to be first-class citizens, and supporting programmerwritten code-level contracts to guarantee the non-functional specifications of the program are met. In this paper, we extend the Drive system by providing rigorous implementations of the underlying proof-engine, modeling the specification of the annotations and assertions from CSL for a representative subset of C, called Imp. We define both an improved abstract interpretation that automatically derives proofs of assertions, and define inference algorithms for the derivation of both abstract interpretations and the context over which the interpretation is indexed. We use the dependentlytyped programming language, Idris, to give a formal definition, and implementation, of our abstract interpretation. Finally, we show our well-formed abstract interpretation over some representative exemplars demonstrating provable assertions of ETS.
引用
收藏
页数:12
相关论文
共 50 条
  • [1] Liquidity Analysis in Resource-Aware Programming
    Crafa, Silvia
    Laneve, Cosimo
    [J]. FORMAL ASPECTS OF COMPONENT SOFTWARE (FACS 2022), 2022, 13712 : 205 - 221
  • [2] Liquidity analysis in resource-aware programming
    Laneve, Cosimo
    [J]. JOURNAL OF LOGICAL AND ALGEBRAIC METHODS IN PROGRAMMING, 2023, 135
  • [3] Resource-aware programming - Invited paper
    Taha, W
    [J]. EMBEDDED SOFTWARE AND SYSTEMS, 2005, 3605 : 38 - 43
  • [4] Resource-Aware Optimization of DNNs for Embedded Applications
    Frickenstein, Alexander
    Unger, Christian
    Stechele, Walter
    [J]. 2019 16TH CONFERENCE ON COMPUTER AND ROBOT VISION (CRV 2019), 2019, : 17 - 24
  • [5] Resource-Aware Network Topology Management Framework
    Abbasi, Aaqif Afzaal
    Shamshirband, Shahab
    Al-qaness, Mohammed A. A.
    Abbasi, Almas
    AL-Jallad, Nashat T.
    Mosavi, Amir
    [J]. ACTA POLYTECHNICA HUNGARICA, 2020, 17 (04) : 89 - 101
  • [6] Towards a Resource-Aware Component Model for Embedded Systems
    Vulgarakis, Aneta
    [J]. 2009 IEEE 33RD INTERNATIONAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE, VOLS 1 AND 2, 2009, : 646 - 649
  • [7] IoT Resource-aware Orchestration Framework for Edge Computing
    Agrawal, Niket
    Rellermeyer, Jan
    Ding, Aaron Yi
    [J]. CONEXT'19 COMPANION: PROCEEDINGS OF THE 15TH INTERNATIONAL CONFERENCE ON EMERGING NETWORKING EXPERIMENTS AND TECHNOLOGIES, 2019, : 62 - 64
  • [8] A Resource-Aware and Time-Critical IoT Framework
    Toka, Laszlo
    Lajtha, Balazs
    Hosszu, Eva
    Formanek, Bence
    Gehberger, Daniel
    Tapolcai, Janos
    [J]. IEEE INFOCOM 2017 - IEEE CONFERENCE ON COMPUTER COMMUNICATIONS, 2017,
  • [9] Resource-aware metacomputing
    Acharya, A
    Ranganathan, M
    Saltz, J
    [J]. CONCURRENCY-PRACTICE AND EXPERIENCE, 1997, 9 (06): : 649 - 674
  • [10] Resource-aware policies
    Bottoni, Paolo
    Fish, Andrew
    Heussner, Alexander
    Presicce, Francesco Parisi
    [J]. JOURNAL OF VISUAL LANGUAGES AND COMPUTING, 2017, 38 : 84 - 96