{'fraction_non_alphanumeric': 0.0175609756097561, 'fraction_numerical': 0.0, 'mean_word_length': 5.576923076923077, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Balancing Computation and Code Distribution Costs : The Case for Hybrid Execution in Sensor Networks

Virtual machines (VM) are promising as system software in networks of embedded systems and pervasive computing spaces. VMs facilitate the development of platformindependent applications with small footprints to enable low cost application distribution and evolution. A major impediment to their more widespread acceptance is the performance overhead of interpretation. Compiling VM bytecode to native instructions addresses this issue, but can increase footprint and code distribution costs. Thus, there is an important tradeoff between cost of computing, and cost of communication due to code distribution. In this paper, we describe a remote Just-In-Time (JIT) compilation service for the VM framework that is effective in combining interpretation with native execution to arrive at an efficient hybrid execution configuration. The principles apply to any VM or middleware used to develop applications in sensor networks.