
UC Irvine UC Irvine Electronic Theses and Dissertations Title Scalable Runtime Support for Edge-To-Cloud Integration of Distributed Sensing Systems Permalink https://escholarship.org/uc/item/1kf615bq Author Chien, Tingchou Hung Brett Publication Date 2016 Peer reviewed|Thesis/dissertation eScholarship.org Powered by the California Digital Library University of California UNIVERSITY OF CALIFORNIA, IRVINE Scalable Runtime Support for Edge-To-Cloud Integration of Distributed Sensing Systems DISSERTATION submitted in partial satisfaction of the requirements for the degree of DOCTOR OF PHILOSOPHY in Electrical and Computer Engineering by Tingchou Hung Brett Chien Dissertation Committee: Professor Pai H. Chou, Chair Professor Nader Bagherzadeh Professor Mohammad Al Faruque 2016 © 2016 Tingchou Hung Brett Chien DEDICATION To my wife, Ke-Yi Chu, and my daughter, Mina. ii TABLE OF CONTENTS Page LIST OF FIGURES vi LIST OF TABLES viii LIST OF ALGORITHMS ix ACKNOWLEDGMENTS x CURRICULUM VITAE xi ABSTRACT OF THE DISSERTATION xiii 1 Introduction 1 1.1 Wearable Low Power Network-of-Things (NoT) . .1 1.2 Problem Statement . .3 1.2.1 Lightweight and Portability . .5 1.2.2 Appropriate Programming Model . .5 1.2.3 Low Power with Bluetooth Smart . .6 1.2.4 Need for Data Support . .7 1.3 Contribution . .7 2 Enix: A Lightweight Dynamic Operating System for Tightly Constrained Wireless Sensor Platforms 8 2.1 Related Work . .9 2.1.1 Programming Model . .9 2.1.2 Runtime OS support for WSN . 12 2.1.3 Virtual Memory . 13 2.1.4 File Systems for WSN . 14 2.2 Overview of Enix . 14 2.2.1 Runtime Kernel . 15 2.2.2 File System . 15 2.2.3 Dynamic Loading Library . 16 2.2.4 Utility Tools . 16 2.2.5 Code Size . 17 iii 2.3 Runtime Components in Enix . 17 2.3.1 Cooperative Threads and Scheduler . 18 2.3.2 Compiler-Assisted Virtual Memory . 21 2.3.3 Dynamic Loading and Run-time Reprogramming . 23 2.4 From Enix to Current Proprietary Schedulers . 27 2.5 Evaluation and Results . 31 2.5.1 Experimental Setup . 31 2.5.2 Context Switch Overhead of Different Schedulers . 33 2.5.3 Virtual Memory and EcoFS . 35 2.5.4 Efficiency of Enix Code Update Scheme . 37 3 EcoCast: An Interactive Framework for Parallel Execution of Wireless Sensor Nodes in Multi-Hop Networks 40 3.1 Related Work . 40 3.1.1 Remote Firmware Update . 40 3.1.2 Shell and Scripting Systems . 42 3.1.3 Routing protocols in WSNs . 43 3.1.4 Query systems . 44 3.2 System Overview . 44 3.2.1 Wireless Sensing Platform . 44 3.2.2 Execution Flow . 47 3.3 Scripting . 49 3.3.1 Scripting Language . 50 3.3.2 Esh Constructs . 54 3.3.3 Method Dispatching and Attribute Access . 56 3.4 Compilation and Linking . 59 3.4.1 Compilation from C . 59 3.4.2 Compilation from Python . 60 3.4.3 Incremental Linking . 61 3.4.4 Version Control and Patching Scripts . 62 3.5 Reprogramming and Execution . 63 3.5.1 Execution Mechanism on the Node . 63 3.5.2 Group Reprogramming of Nodes . 64 3.5.3 Group Execution of Functions on Nodes . 66 3.5.4 Background Job Management . 67 3.6 Python Bluetooth Low Energy Wrapper . 68 3.7 Evaluation . 74 3.7.1 Experimental Setup . 74 3.7.2 Functional Programming . 74 3.7.3 Multi-hop Networking . 78 3.7.4 Memory Footprint on the Node . 82 3.7.5 Discussion . 82 iv 4 A Modular Backend Computing System for Continuous Civil Structural Health Monitoring 83 4.1 Background . 83 4.1.1 Event Triggered v.s. Continous Monitoring . 83 4.1.2 PipeTECT system for SHM and Water Pipe Monitoring . 84 4.2 System . 85 4.2.1 DuraMote Smart Sensor . 85 4.2.2 Backend System . 88 4.3 Evaluation . 94 4.3.1 Lessons from Field Experiments . 95 4.3.2 Data Traffic Optimization . 96 4.3.3 Long-Term Installation at UC Irvine . 98 5 BlueRim: Rimware for Enabling Cloud Integration of Networks of Bluetooth Smart Devices 102 5.1 Related Work . 102 5.1.1 Cloud Systems . 103 5.1.2 HTTP Servers for Sensor Networks . 104 5.1.3 Application-Building Tools . 104 5.1.4 Device Management . 104 5.2 Concepts . 105 5.2.1 A Basic BLE Network of Things . 105 5.2.2 Rimware with Single Security Domain . 106 5.2.3 Rimware with Multiple Security Domains . 106 5.3 BlueRim: Cloud and Rimware . 108 5.3.1 Cloud Components in Rimware . 109 5.3.2 Integration of Rimware with Multiple Security Domains . 112 5.4 BlueRim: Physical Subsystem . 113 5.4.1 Host-Program Builder . 113 5.4.2 NoT Firmware Support . 115 5.5 Case Studies . 115 5.5.1 Infant ECG . 115 5.5.2 Home Automation . 116 6 Conclusion 117 Bibliography 120 v LIST OF FIGURES Page 1.1 Enix reference applications. .4 1.2 Relationship between Generic Cloud, Rimware and Network of Things . .6 2.1 Number of RF+MCU options for popular ISAs. 10 2.2 The block diagram of Enix. 15 2.3 An example Enix WSN application code: Sense and Transmit. 19 2.4 (a)-(c): Transformation and (d) support for position independent code. 25 2.5 Bridge library and Enix user programs. 26 2.6 Dispatcher on top on a existing schedulor. 27 2.7 Characteristic content format for memory operations. 28 2.8 Characteristic content format for function operations. 29 2.9 Access SFR and memory in the MCU. 29 2.10 Ram code: Upload and execute. 30 2.11 Calling existing function calls. 30 2.12 (a) EcoSpire node: 23 × 50 mm2; (b) EcoSpire simple node, 13 × 20 mm2...... 31 2.13 Power measurement modules. 32 2.14 SD card reading using different block lengths. 37 3.1 System overview. 45 3.2 Execution Flow of EcoCast. 47 3.3 Reprogramming scenario . 65 3.4 Function execution sketch . 66 3.5 Profile handler skeleton and a default profile handler implementation. 69 3.6 PyBLE usage . ..
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages141 Page
-
File Size-