• DocumentCode
    1523366
  • Title

    FlowTalk: Language Support for Long-Latency Operations in Embedded Devices

  • Author

    Bergel, Alexandre ; Harrison, Willie K. ; Cahill, Vinny ; Clarke, Steven

  • Author_Institution
    Comput. Sci. Dept. (DCC), Univ. of Chile, Santiago, Chile
  • Volume
    37
  • Issue
    4
  • fYear
    2011
  • Firstpage
    526
  • Lastpage
    543
  • Abstract
    Wireless sensor networks necessitate a programming model different from those used to develop desktop applications. Typically, resources in terms of power and memory are constrained. C is the most common programming language used to develop applications on very small embedded sensor devices. We claim that C does not provide efficient mechanisms to address the implicit asynchronous nature of sensor sampling. C applications for these devices suffer from a disruption in their control flow. In this paper, we present FlowTalk, a new object-oriented programming language aimed at making software development for wireless embedded sensor devices easier. FlowTalk is an object-oriented programming language in which dynamicity (e.g., object creation) has been traded for a reduction in memory consumption. The event model that traditionally comes from using sensors is adapted in FlowTalk with controlled disruption, a light-weight continuation mechanism. The essence of our model is to turn asynchronous long-latency operations into synchronous and blocking method calls. FlowTalk is built for TinyOS and can be used to develop applications that can fit in 4 KB of memory for a large number of wireless sensor devices.
  • Keywords
    C language; embedded systems; intelligent sensors; object-oriented languages; object-oriented programming; software engineering; wireless sensor networks; C language; FlowTalk; TinyOS; asynchronous long-latency operations; embedded sensor devices; language support; light-weight continuation mechanism; memory consumption; memory size 4 KByte; object-oriented programming language; programming language; sensor sampling; wireless sensor networks; Application software; Automotive engineering; Biosensors; Computer languages; Embedded software; Java; Object oriented modeling; Object oriented programming; Sampling methods; Wireless sensor networks; Embedded systems; object-based programming.;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2010.66
  • Filename
    5492692