A Body Sensor Networks Targeted Operating System and Toolset

Total Page:16

File Type:pdf, Size:1020Kb

A Body Sensor Networks Targeted Operating System and Toolset SENSORCOMM 2011 : The Fifth International Conference on Sensor Technologies and Applications The BSNOS Platform: A Body Sensor Networks Targeted Operating System and Toolset Joshua Ellul Benny Lo Guang-Zhong Yang Department of Computing Deparment of Computing Deparment of Computing Imperial College London Imperial College London Imperial College London London, UK London, UK London, UK Email: [email protected] Email: [email protected] Email: [email protected] Abstract—Body sensor networks face different challenges enabling novice programmers to develop applications with than those faced in traditional wireless sensor networks. ease. Also, in that it is an operating system, we believe that Challenges faced include fewer, more accurate sensor nodes it should be usable without requiring any low level devel- and an increased requirement of context awareness, however, body sensor networks are relieved from high scalability. Pro- opment. Thus, we have included in the operating system a gramming sensor networks, in general, can be a daunting task default application which allows domain experts to monitor due to the limited computation, memory and energy resources environments and configure the sampling and transmission available. Operating systems for wireless sensor networks have rates of collected data. been proposed which focus on the challenges they face. We The primary contribution of this paper is that we have believe that an operating system and toolset which focuses primarily on the challenges and properties of body sensor designed the first operating system targetted especially for networks could help ease the burden of programming body body sensor networks, which utilizes run-time compilation sensor network applications. In this paper, we present an of bytecode to provide an efficient Java execution platform operating system which is focused on facilitating body sensor for resource constrained devices. network application development. The remainder of this paper is structured as follows. Keywords-body sensor networks; operating systems; Section II provides an overview of related work. Section III describes the motivation behind why this work is necessary. I. INTRODUCTION We provide an overview of the system design in Section Body sensor networks have emerged as a promising IV, followed by implementation details in Section V. We platform to enable scientists to further understand how the evaluate our work in Section VI and then conclude in Section human body operates with a means of remotely monitor- VII. ing different environmental conditions accurately. Operating systems for wireless sensor networks have been the primary II. RELATED WORK tool in developing body sensor node applications in the Operating systems commonly used for sensor network past. Developers require expertise in C and embedded pro- development include TinyOS [1] and Contiki [2]. TinyOS gramming to be able to create applications. Even seasoned exposes an event driven execution model programmed using programmers find the task of programming such applications a component model. TinyOS applications are programmed daunting and time consuming. Domain scientists rely on and using the nesC language developed specifically for TinyOS. wait for such applications to be developed before they can Contiki also provides an event-driven programming model, extract any useful information from the environment they however, programs are coded in C. It is very hard for non- wish to investigate. embedded developers to write programs for these operating The challenges faced in body sensor networks vary to systems due to the level of embedded and event-driven that of traditional wireless sensor networks. Body sensor programming experience required. networks usually consist of smaller networks of short range More recent initiatives to enable Java for sensor nodes communication, whilst traditional wireless sensor network aims to facilitate an easier programming paradigm for sensor research has been heavily focused on routing and MAC nodes [3] [4] [5] [6]. The Squawk virtual machine [4] allows protocols to facilitate scalability and longer range commu- for Java code to be executed on Sun SPOT devices. Sun nication. SPOT devices have substantially more resources than that of In this paper, we present the BSNOS platform, an op- more popular sensor nodes (especially those used for body erating system and platform designed to especially meet sensing). The Squawk virtual machine has a program mem- the requirements of body sensor network applications. The ory footprint of 270kB which is larger than that available operating system exposes a Java programming environment for most body sensor nodes available. Copyright (c) IARIA, 2011. ISBN: 978-1-61208-144-1 381 SENSORCOMM 2011 : The Fifth International Conference on Sensor Technologies and Applications Darjeeling [6] and TakaTuka [5] are two virtual machines tools which are currently used including C based operating which provide a Java interpreter for resource constrained systems [1][2]. devices. Interpreters are infamous for their high execution The motivation behind our work is to provide an operating overheads, and as can be seen in [6], the overhead is quite system which facilitates ease of development of body sensor large. To overcome such interpretation overheads, run-time network applications for novice programmers and domain compilation of bytecode [3] was proposed for sensor nodes, experts. We plan to achieve this by focusing on the intrinsic which provides substantially faster execution of bytecode properties of body sensor network applications. Whilst at the compared to interpreted versions. same time, sacrificing features required for traditional wire- less sensor networks which are not inherent in body sensor III. MOTIVATION networks in aim of delegating such relieved resources for ease of programmability and body sensor network specific Body sensor networks provide a different environment and functionality. By exposing an easy to use standard API we paradigm to that of traditional wireless sensor networks [7]. envisage that algorithms can seamlessly be shared, switched The size of the environment (the body) to be monitored and compared. Thus, enabling an open development research is much smaller and is geometrically the same to any platform for body sensor network applications. other (body) deployments, unlike the environments which traditional sensor networks are deployed in (which vary IV. DESIGN from one deployment to another). This results in smaller One of the main motivations behind our work is to provide sized networks with nodes placed in, usually, known places. an easy to use programming environment for developing A body sensor network rarely grows (or shrinks) in size. body sensor network applications for novice programmers. Also, once a node is placed, it is very unlikely to move. Most available tools for sensor network applications rely Transmission ranges of sensor nodes do not require long on C (or flavours thereof such as nesC) as a programming distances. Additionally, nodes are usually one hop away language. However, we have decided to opt for a Java from every node in the same body sensor network. These programming environment to facilitate an easy to use pro- properties of body sensor networks relieve body sensor gramming environment. As mentioned in Section II, several nodes from complex MAC and routing protocols which initiatives have been made to port Java to sensor nodes, is a primary requirement for traditional wireless sensor most of which use an interpreter to execute bytecode. As networks. shown in [6], interpretation of bytecode suffers from great Although body sensor networks will consist of a smaller execution overheads. We have, therefore decided to utilise numbers of nodes, relieving the nodes from scalability a run-time compiler similar to [3] in aim of offering a Java issues, this also means that nodes will not be able to rely on programming environment without incurring substantial exe- neighbouring nodes for redundancy. Thus, body sensor net- cution overhead. An overview of the toolchain and operating works require more accurate and robust sensing algorithms. system is shown in Figure 1. We will follow by describing More so, typical body sensor networks do not usually have each component of the toolchain and operating system. the luxury of long sleep periods since events must be caught 1) Scripting: We would like to target not only program- immediately due to the repercussions of missing a vital mers but also domain experts who more than likely do not event, which in turn affects the lifetime of the sensor node. have a large amount of experience programming. Thus, we However, most body sensor network deployments do not have included in our architecture a means of being able require long lifetimes since they are usually used temporarily to control how a body sensor network application would to analyse or detect specific conditions or applications. work on a higher level. For those with slight knowledge of Due to the geometrical, environmental and requirement programming we have provided a scripting tool which can be similarities between different body sensor network deploy- used to create simple applications by configuring the main ments and applications, a substantial amount of application execution thread using a Java like syntax without having logic is common amongst body sensor network applications. to deal with the intrinsic properties of Java. The scripting Such logic includes
Recommended publications
  • Low Power Or High Performance? a Tradeoff Whose Time
    Low Power or High Performance? ATradeoffWhoseTimeHasCome(andNearlyGone) JeongGil Ko1,KevinKlues2,ChristianRichter3,WanjaHofer4, Branislav Kusy3,MichaelBruenig3,ThomasSchmid5,QiangWang6, Prabal Dutta7,andAndreasTerzis1 1 Department of Computer Science, Johns Hopkins University 2 Computer Science Division, University of California, Berkeley 3 Australian Commonwealth Scientific and Research Organization (CSIRO) 4 Department of Computer Science, Friedrich–Alexander University Erlangen–Nuremberg 5 Department Computer Science, University of Utah 6 Department of Control Science and Engineering, Harbin Institute of Technology 7 Division of Computer Science and Engineering, University of Michigan, Ann Arbor Abstract. Some have argued that the dichotomy between high-performance op- eration and low resource utilization is false – an artifact that will soon succumb to Moore’s Law and careful engineering. If such claims prove to be true, then the traditional 8/16- vs. 32-bit power-performance tradeoffs become irrelevant, at least for some low-power embedded systems. We explore the veracity of this the- sis using the 32-bit ARM Cortex-M3 microprocessor and find quite substantial progress but not deliverance. The Cortex-M3, compared to 8/16-bit microcon- trollers, reduces latency and energy consumption for computationally intensive tasks as well as achieves near parity on code density. However, it still incurs a 2 overhead in power draw for “traditional” sense-store-send-sleep applica- tions.∼ × These results suggest that while 32-bit processors are not yet ready for applications with very tight power requirements, they are poised for adoption ev- erywhere else. Moore’s Law may yet prevail. 1Introduction The desire to operate unattended for long periods of time has been a driving force in de- signing wireless sensor networks (WSNs) over the past decade.
    [Show full text]
  • Building Intelligent Middleware for Large Scale CPS Systems
    Building Intelligent Middleware for Large Scale CPS Systems Niels Reijers, Yu-Chung Wang, Chi-Sheng Shih, Jane Y. Kwei-Jay Lin Hsu Department of Electrical Eng. and Comp. Sci. Intel-NTU Connected Context Computing Center University of California, Irvine National Taiwan University Irvine, CA, USA Taipei, Taiwan Abstract—This paper presents a study on building intelligent application to express globally what it really wants from the middleware on wireless sensor network (WSN) for large-scale sensor network. Furthermore, since most WSN applications are cyber-physical systems (LCPS). A large portion of WSN projects specifically designed to particular scenarios and unique target has focused on low-level algorithms such as routing, MAC layers, environments, most behavior is hardcoded, resulting in rigid and data aggregation. At a higher level, various WSN networks that are typically not very flexible at adjusting their applications with specific target environments have been behavior to faults or changing external conditions. A more high developed and deployed. Most applications are built directly on level vision on how large-scale cyber-physical systems (LCPS) top of a small OS, which is notoriously hard to work with, and or networks of sensors should be programmed, deployed, and results in applications that are fragile and cannot be ported to configured is still missing. other platforms. The gap between the low level algorithms and the application development process has received significantly Indeed, we are far from conducting Rapid Application less attention. Our interest is to fill that gap by developing Development (RAD) for LCPS. This project aims to fill the gap, intelligent middleware for building LCPS applications.
    [Show full text]
  • Arxiv:1712.05590V2 [Cs.PL] 18 Dec 2017 Ffaue,Btsffrfo Lwono N Otoodr Fm and of Throughput Orders Reducing Two to Consumption
    Abstract Many virtual machines exist for sensor nodes with only a few KB RAM and tens to a few hundred KB flash memory. They pack an impressive set of features, but suffer from a slowdown of one to two orders of magnitude compared to optimised native code, reducing throughput and increasing power consumption. Compiling bytecode to native code to improve performance has been studied extensively for larger devices, but the restricted resources on sen- sor nodes mean most modern techniques cannot be applied. Simply replac- ing bytecode instructions with predefined sequences of native instructions is known to improve performance, but produces code several times larger than the optimised C equivalent, limiting the size of programmes that can fit onto a device. This paper identifies the major sources of overhead resulting from this basic approach, and presents optimisations to remove most of the remain- ing performance overhead, and over half the size overhead, reducing them to 69% and 91% respectively. While this increases the size of the VM, the break-even point at which this fixed cost is compensated for is well within the range of memory available on a sensor device, allowing us to both improve performance and load more code on a device. arXiv:1712.05590v2 [cs.PL] 18 Dec 2017 1 Improved Ahead-of-Time Compilation of Stack-Based JVM Bytecode on Resource-Constrained Devices Niels Reijers, Chi-Sheng Shih NTU-IoX Research Center Department of Computer Science and Information Engineering National Taiwan University 1 Introduction Internet-of-Things devices come in a wide range, with vastly different perfor- mance characteristics, cost, and power requirements.
    [Show full text]
  • By Syed Ishtiaq Hussain Supervised by Dr. Humma Javed
    RESOURCE AWARE PROCESS MIGRATION IN WIRELESS SENSOR NETWORKS By Syed Ishtiaq Hussain Supervised By Dr. Humma Javed DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF PESHAWAR SESSION 2009-2010 RESOURCE AWARE PROCESS MIGRATION IN WIRELESS SENSOR NETWORKS By Syed Ishtiaq Hussain Dissertation Submitted to the University of Peshawar in partial fulfillment of the requirement for the degree of DOCTOR OF PHILOSOPHY Supervised By Dr. Humma Javed DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF PESHAWAR SESSION 2009-2010 DEDICATION Dedicated to my beloved parents, and my kids… iv STATEMENT OF SOURCES DECLARATION I, the undersigned, author of this thesis, declare that this thesis is my own work and has not been submitted in any form for another degree at any university or institution. Information derived from published or unpublished work of others has been acknowledged in the text and a list of references is given. __________________ ______________ Syed Ishtiaq Hussain 28th September 2018 v RIGHTS OF THESIS All parts of this dissertation are reserved by the author, any part of this research shall not be produced or transmitted in any form or by any means, without formal permission from the author. Syed Ishtiaq Hussain vi ABSTRACT This thesis presents a novel architecture for native process migration (PM) in wireless sensors networks (WSN) without the use of virtual execution environment. Resources in WSN are scarce, therefore creating a virtual execution environment for processes so that they can be migrated, put an extra burden on already constrained resources. The proposed architecture for process migration allows live native processes to be migrated during execution. The process migration architecture takes migration decisions by continuously monitoring resources including remaining battery life and free memory space on a node.
    [Show full text]
  • Velox VM: a Safe Execution Environment for Resource-Constrained Iot Applications
    Velox VM: A Safe Execution Environment for Resource-Constrained IoT Applications Nicolas Tsiftesa,∗, Thiemo Voigta,b aRISE SICS, Box 1263, SE-164 29, Kista, Sweden bDepartment of Information Technology, Uppsala University, Box 337, SE-751 05, Uppsala, Sweden Abstract We present Velox, a virtual machine architecture that provides a safe execu- tion environment for applications in resource-constrained IoT devices. Our goal with this architecture is to support developers in writing and deploying safe IoT applications, in a manner similar to smartphones with application stores. To this end, we provide a resource and security policy framework that enables fine-grained control of the execution environments of IoT applications. This framework allows device owners to configure, e.g., the amount of bandwidth, energy, and memory that each IoT application can use. Velox's features also include support for high-level programming languages, a compact bytecode for- mat, and preemptive multi-threading. In the context of IoT devices, there are typically severe energy, memory, and processing constraints that make the design and implementation of a virtual ma- chine with such features challenging. We elaborate on how Velox is implemented in a resource-efficient manner, and describe our port of Velox to the Contiki OS. Our experimental evaluation shows that we can control the resource usage of applications with a low overhead. We further show that, for typical I/O-driven IoT applications, the CPU and energy overhead of executing Velox bytecode is as low as 1-5% compared to corresponding applications compiled to machine code. Lastly, we demonstrate how we can use application policies to effectively mitigate the possibility of vulnerable applications to be exploited.
    [Show full text]
  • Experimental Comparison of Radio Duty Cycling Protocols for Wireless Sensor
    Experimental Comparison of Radio Duty Cycling Protocols for Wireless Sensor Networks Dissertation submitted in fulfillment of the requirements for the award of the degree of Doctor in Engineering Sciences and Technology by Marie-Paule Uwase Promotors : Prof. dr. ir. Jean-Michel Dricot (ULB) Prof. dr. ir. Kris Steenhaut (VUB) Prof. dr. ir. Jacques Tiberghien (VUB) October 2018 Jury Members President Prof. dr. ir. Van Biesen Leo ELEC department , Vrije Universiteit Brussel [email protected] Vice president Prof. dr. ir. Pintelon, Rik ELEC department, Vrije Universiteit Brussel [email protected] Secretary Prof. dr. ir. Goossens Marnix ETRO department, Vrije Universiteit Brussel [email protected] External Members Prof. dr. ir Reali Gianluca Networks and Services lab, University of Perugia [email protected] Prof. Aimé Lay-Ekuakille Department of Innovation Engineering, University of Salento [email protected] Internal members Prof. Antoine Nonclercq Beams, Université Libre de Bruxelles [email protected] Promoters Prof. dr. ir. Steenhaut, Kris ETRO department, Vrije Universiteit Brussel [email protected] Prof. dr. ir. Dricot Jean-Michel Opera Department, Université Libre de Bruxelles [email protected] Prof. dr. ir. Tiberghien Jacques ETRO department, Vrije Universiteit Brussel [email protected] To Dana and Benoît To my late mother Abstract Wireless sensor networks are often battery powered and therefore their power consumption is of critical importance. Power requirements can be reduced by switching off radios when they are not needed and by using multi-hop communications to reduce the length of the radio links. Multi-hop communications however require message routing through the network. The Routing Protocol for lossy networks (RPL) has been designed by the Internet Engineering Task Force (IETF) for seamless integration of wireless sensor networks in the Internet.
    [Show full text]
  • Girts Strazdins Wireless Sensor Network Software Design Rules
    UNIVERSITY OF LATVIA FACULTY OF COMPUTING Girts Strazdins Wireless Sensor Network Software Design Rules DOCTORAL THESIS FOR THE ACADEMIC DEGREE OF DR.SC.COMP FIELD: COMPUTER SCIENCE SUB-FIELD: SYSTEMS OF DATA PROCESSING AND COMPUTER NETWORKS ADVISOR: DR.SC.COMP. LEO SELAVO RIGA, 2014 This work has been supported by the European Social Fund within the project "Support for Doctoral Studies at University of Latvia". Abstract In the last decade wireless sensor networks (WSNs) have evolved as a promis- ing approach for smart investigation of our planet, providing solutions for environment and wild animal monitoring, security system development, hu- man health telemonitoring and control, industrial manufacturing and other domains. Lack of unified standards and methodologies leads to limited sensor network solution interoperability and portability. Significant number of WSN oper- ating systems, virtual machines, query languages and other software tools already do exist. Also a significant number of communication protocols have been invented. However, sensor network designers and programmers still face serious problems related to new platform and application development. The goal of this work is to propose wireless sensor network software develop- ment design rules that serve as a unified methodology for operating system and application development. The design rules are based on 40 existing WSN deployment extensive analysis and common trend inference. The proposed rules are evaluated in different aspects. Improvements for existing WSN de- ployments and operating systems are identified, design and implementation of an object-oriented WSN operating system according to proposed rules is described. In addition, a WSN application use-case is evaluated and improve- ments are suggested according to design rules.
    [Show full text]
  • A Virtual Machine for the Insense Language
    A Virtual Machine for the Insense Language Callum Cameron, Paul Harvey, and Joseph Sventek [email protected], [email protected], [email protected] School of Computing Science, University of Glasgow, Scotland Abstract—The Insense VM is a specialised Java virtual ma- core. Programmers using these systems must have extensive chine for running Insense programs on wireless sensor nodes. The knowledge of low-level and embedded programming. Domain VM runs on top of InceOS, a purpose-built operating system. experts wishing to use wireless sensor networks in their own A split VM architecture is used, in which Insense programs fields – often described as the intended users of these systems are compiled to Java classes, then linked and compacted on a – are unlikely to have this knowledge. more powerful machine into a form suitable for execution by the VM. Measurements demonstrate that the virtual machine The Insense language is designed to overcome this prob- achieves good performance and memory usage for realistic lem [3], [10], [15]. Insense is a component-based language. A Insense programs. program consists of several components. A component is es- sentially a thread which executes a behaviour function repeat- I. INTRODUCTION edly, and has private state. Components can only communicate The Insense language [3] has been developed to ease the by passing messages over strongly-typed channels, which use programming of wireless sensor networks. Insense uses a a blocking ‘rendezvous’ model. Senders and receivers block component-based model of concurrency, where components on a channel until both are present, at which point the mes- are strictly encapsulated and communicate through message sage is passed and both components are unblocked.
    [Show full text]
  • Use of Forth to Enable Distributed Processing on Wireless Sensor Networks
    Use of Forth to Enable Distributed Processing on Wireless Sensor Networks Salvatore Gaglio, Giuseppe Lo Re, Gloria Martorella and Daniele Peri DICGIM, University of Palermo - Viale delle Scienze, Ed. 6 - 90128 Palermo, Italy fsalvatore.gaglio, giuseppe.lore, gloria.martorella, [email protected] Abstract—Wireless Sensor Networks (WSNs) are composed Such practice strongly limits the development of more of tiny sensor nodes able to monitor environmental conditions. advanced applications than the static acquisition and trans- Existing applications for WSNs usually adopt a centralized mission of sensory data that is then to be processed by a base approach that exploit sensor nodes just for sensing, while data processing takes place on more powerful base stations. This can station [5]. be considered a consequence of the common WSN programming Sophisticated applications, such as those concerning Ambi- practice that proves too rigid to support development based on ent Intelligence (AmI) scenarios, could instead be developed distributed processing. In fact, local processing of complex data, if the nodes were able to process cooperatively more complex such as symbolic information and rules, is an under explored data –e.g. symbolic data and rules– than the numerical values aspect. The adoption of high level interpreters above general purpose operating systems is often unpractical since it implies in rigid representations resulting from sensing. Such applica- the saturation of the available resources. In this paper, we detail tions may in fact implement intelligent, autonomic, and self- the implementation of an alternative Forth-based approach that organizing behaviors by distributed processing of symbolic implements a minimal but extensible operating system featuring and qualitative description of the observed phenomena.
    [Show full text]
  • Introducing Threads Into the Takatuka Java Virtual Machine
    University of Freiburg Department of Computer Science Bachelor Thesis Introducing Threads into the TakaTuka Java Virtual Machine Author: Supervisors: Gidon Marian Ernst Prof. Christian Schindelhauer Faisal Aslam September 29, 2008 Erklärung Hiermit erkläre ich, dass ich die vorliegende Arbeit selbständig verfasst habe, keine anderen als die angegebenen Quellen und Hilfsmittel verwendet habe und alle Stellen, die wörtlich oder sinngemäß aus veröffentlichten Schriften entnommen wurden, als solche kenntlich gemacht habe. Darüber hinaus erkläre ich, dass diese Arbeit nicht, auch nicht auszugsweise, bereits für eine andere Prüfung angefertigt wurde. Ort, Datum Unterschrift Acknowledgement I wish to thank all the people who supported me during my work on this bachelor thesis. First of all, I would like to thank Prof. Christian Schindelhauer for his support for the whole TakaTuka project and his valuable feedback. Faisal Aslam, who was my supervisor, always had an open ear and took the time to discuss outstanding issues, which was very productive. I also wish to thank everybody who has provided me feedback on this thesis itself, especially Jan Meyer and Benedikt Waldvogel for their suggestions on the text. 3 Abstract Goal of this bachelor thesis is to introduce multithreading support into the TakaTuka Java virtual machine. The TakaTuka project is an effort to provide a Java environment and devel- opment platform for sensor motes. As these motes offer only a limited amount of resources, special care has to be taken in order to minimize the requirements of the virtual machine in terms of memory and computation. The work is focused on basic threads functionality instead of implementing novel algorithms related to scheduling or locking.
    [Show full text]
  • UNIVERSITY of CALIFORNIA, IRVINE Supporting Fault Tolerance in the Internet of Things DISSERTATION Submitted in Partial Satisfac
    UNIVERSITY OF CALIFORNIA, IRVINE Supporting Fault Tolerance in the Internet of Things DISSERTATION submitted in partial satisfaction of the requirements for the degree of DOCTOR OF PHILOSOPHY in Electrical Engineering and Computer Science by Sen Zhou Dissertation Committee: Professor Kwei-Jay Lin, Chair Professor Pai Chou Professor Mohammad A. Al Faruque 2015 c 2015 Sen Zhou DEDICATION To my parents, Lihui Lian and Mulin Zhou ii TABLE OF CONTENTS LIST OF FIGURES v LIST OF ALGORITHMS vii LIST OF TABLES viii ACKNOWLEDGMENTS ix CURRICULUM VITAE x ABSTRACT OF THE DISSERTATION xii 1 Introduction 1 1.1 Service-Oriented Internet of Things . .1 1.2 Fault Tolerance in Service-Oriented IoT . .4 1.3 Contributions . .8 1.4 Dissertation Organization . .9 2 Related Work 10 2.1 Modeling IoT Systems . 10 2.2 Fault Tolerant Resource Management in IoT . 11 2.3 Data Fusion in IoT Systems . 13 2.4 Fault-Tolerant Clustering in IoT Systems . 14 2.5 Overview of the Wukong Middleware . 15 3 Improving the Availability of Services in IoT 20 3.1 Concept of Virtual Services . 21 3.2 Vitual Service Generation . 22 3.2.1 Linear Models . 23 3.2.2 Non-Linear Models . 25 3.2.3 Practical Issues . 27 3.3 Experimental Study . 27 3.3.1 Experiment Setup . 28 3.3.2 Generating Light Sensing Virtual Services . 29 3.3.3 Composing Presence Sensing Virtual Services . 32 iii 4 Mapping in IoT 35 4.1 Using Communication Cost for Inter-Device Cost . 35 4.2 Using Location Policy for Device Cost . 39 4.2.1 Geographical Modeling .
    [Show full text]
  • Memory and Energy Optimization Strategies for Multithreaded Operating System on the Resource-Constrained Wireless Sensor Node
    Sensors 2015, 15, 22-48; doi:10.3390/s150100022 OPEN ACCESS sensors ISSN 1424-8220 www.mdpi.com/journal/sensors Article Memory and Energy Optimization Strategies for Multithreaded Operating System on the Resource-Constrained Wireless Sensor Node Xing Liu 1, Kun Mean Hou 1,*, Christophe de Vaulx 1, Jun Xu 2, Jianfeng Yang 2,*, Haiying Zhou 3, Hongling Shi 1 and Peng Zhou 1 1 LIMOS Laboratory, CNRS UMR 6158, Blaise Pascal University, Les Cézeaux, BP 10125, Clermont-Ferrand 63173, France; E-Mails: [email protected] (X.L.); [email protected] (C.V.); [email protected] (H.S.); [email protected] (P.Z.) 2 Internet and Information Technology Laboratory, Electronic Information School, Wuhan University, Road LuoJia, Wuhan 430072, China; E-Mail: [email protected] 3 School of Electrical & Information, Hubei University of Automotive Technology, Shiyan 442002, China; E-Mail: [email protected] * Authors to whom correspondence should be addressed; E-Mails: [email protected] (K.M.H.); [email protected] (J.Y.); Tel.: +33-4-7340-5026 (K.M.H.); +86-135-0719-1603 (J.Y.). Academic Editor: Gilles Horowitz Received: 3 November 2014 / Accepted: 10 December 2014 / Published: 23 December 2014 Abstract: Memory and energy optimization strategies are essential for the resource-constrained wireless sensor network (WSN) nodes. In this article, a new memory-optimized and energy-optimized multithreaded WSN operating system (OS) LiveOS is designed and implemented. Memory cost of LiveOS is optimized by using the stack-shifting hybrid scheduling approach. Different from the traditional multithreaded OS in which thread stacks are allocated statically by the pre-reservation, thread stacks in LiveOS are allocated dynamically by using the stack-shifting technique.
    [Show full text]