Smart scene management for IoT-based constrained devices using checkpointing

Typical devices of the Internet of Things are usually under-powered, and have limited RAM. This is due to energy and cost concerns. Yet, IoT applications require increasingly complex programs with increasingly large amounts of data. In principle, an application could manage the increasing data within the limited RAM by saving and loading data from the file system as needed. But managing the use of RAM in this way is both time-consuming and error-prone for the code developer. We propose instead a novel architecture in which different semantic scenes are implemented as independent operating system processes. As the need arises to switch from one scene to another, the currently running process, which represents the current scene, is checkpointed and a process representing the new scene is restarted from a checkpoint image. This solution employs checkpointing to provide a simpler framework for the end programmer, while at the same time resulting in higher performance. For example, experiments show that restarting an old process from a checkpoint image is about 25 times faster than starting a new process. When using an mmap-based optimization (deferring the paging in of virtual memory pages until runtime), restarting an old process is about 500 times faster. Overall, checkpoint and restart each execute in less than 0.2 seconds on a Raspberry Pi B.

[1]  Gene Cooperman,et al.  Transparent checkpoint-restart over infiniband , 2014, HPDC '14.

[2]  Gene Cooperman,et al.  DMTCP: Transparent checkpointing for cluster computations and the desktop , 2007, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[3]  Kwang-Cheng Chen,et al.  Machine-to-machine communications: Technologies and challenges , 2014, Ad Hoc Networks.

[4]  Jason Duell,et al.  Berkeley Lab Checkpoint/Restart (BLCR) for Linux Clusters , 2006 .

[5]  Antonio Iera,et al.  The Internet of Things: A survey , 2010, Comput. Networks.

[6]  Miron Livny,et al.  Checkpoint and Migration of UNIX Processes in the Condor Distributed Processing System , 1997 .

[7]  Lida Xu,et al.  The internet of things: a survey , 2014, Information Systems Frontiers.

[8]  David J. Yates,et al.  Towards Fault-Tolerant Energy-Efficient High Performance Computing in the Cloud , 2012, 2012 IEEE International Conference on Cluster Computing.

[9]  C. V. Ramamoorthy,et al.  Semantic Computing: Sheu/Semantic Computing , 2010 .

[10]  Ryutaro Ichise,et al.  Ontologies for Advanced Driver Assistance Systems , 2015 .

[11]  Anurag Agarwal,et al.  The Internet of Things—A survey of topics and trends , 2014, Information Systems Frontiers.

[12]  Gene Cooperman,et al.  Design and Implementation for Checkpointing of Distributed Resources Using Process-Level Virtualization , 2016, 2016 IEEE International Conference on Cluster Computing (CLUSTER).

[13]  C. V. Ramamoorthy,et al.  Semantic Computing , 2017, Intelligent Information Processing.

[14]  Franck Cappello,et al.  Toward Exascale Resilience: 2014 update , 2014, Supercomput. Front. Innov..