Intermittently powered energy-harvesting devices enable new applications in inaccessible environments. Program executions must be robust to unpredictable power failures, introducing new challenges in programmability and correctness. One hard problem is that input operations have implicit constraints, embedded in the behavior of continuously powered executions, on when input values can be collected and used. This paper aims to develop a formal framework for enforcing these constraints. We identify two key properties -- freshness (i.e., uses of inputs must satisfy the same time constraints as in continuous executions) and temporal consistency (i.e., the collection of a set of inputs must satisfy the same time constraints as in continuous executions). We formalize these properties and show that they can be enforced using atomic regions. We develop Ocelot, an LLVM-based analysis and transformation tool targeting Rust, to enforce these properties automatically. Ocelot provides the programmer with annotations to express these constraints and infers atomic region placement in a program to satisfy them. We then formalize Ocelot's design and show that Ocelot generates correct programs with little performance cost or code changes.


翻译:断断续续的节能采集装置必须在无法进入的环境中进行新的应用。 方案执行必须针对无法预测的电力失灵而强有力, 从而在可编程和正确性方面带来新的挑战。 一个棘手的问题是投入操作存在隐含的限制, 嵌入式处决的行为, 嵌入于持续动力处决的行为, 以及何时可以收集和使用输入值。 本文旨在开发一个执行这些限制的正式框架 。 我们确定了两个关键属性 -- 新鲜性( 即投入的使用必须满足与持续处决相同的时间限制) 和时间一致性( 即收集一组投入必须满足与持续处决相同的时间限制 ) 。 我们将这些属性正式化, 并表明它们可以使用原子区域强制实施 。 我们开发了以 Rust 为目标的基于 LLVM 的分析和转换工具 Ocelot, 以便自动执行这些属性。 Ocelot 向程序员提供说明, 以表达这些限制, 并推断原子区域在程序中的位置以满足这些限制 。 我们随后正式确定 Ocelot 的设计并显示 Ocelot rot 生成正确的程序, 其执行成本或代码变化很小。

0
下载
关闭预览

相关内容

让 iOS 8 和 OS X Yosemite 无缝切换的一个新特性。 > Apple products have always been designed to work together beautifully. But now they may really surprise you. With iOS 8 and OS X Yosemite, you’ll be able to do more wonderful things than ever before.

Source: Apple - iOS 8
【KDD2021】图神经网络,NUS- Xavier Bresson教授
专知会员服务
66+阅读 · 2021年8月20日
【新书】Python编程基础,669页pdf
专知会员服务
196+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
105+阅读 · 2019年10月9日
MIT新书《强化学习与最优控制》
专知会员服务
280+阅读 · 2019年10月9日
最新BERT相关论文清单,BERT-related Papers
专知会员服务
53+阅读 · 2019年9月29日
已删除
将门创投
7+阅读 · 2019年10月10日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
meta learning 17年:MAML SNAIL
CreateAMind
11+阅读 · 2019年1月2日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
vae 相关论文 表示学习 1
CreateAMind
12+阅读 · 2018年9月6日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机视觉近一年进展综述
机器学习研究会
9+阅读 · 2017年11月25日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
9+阅读 · 2021年4月8日
Recent advances in deep learning theory
Arxiv
50+阅读 · 2020年12月20日
VIP会员
相关资讯
已删除
将门创投
7+阅读 · 2019年10月10日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
meta learning 17年:MAML SNAIL
CreateAMind
11+阅读 · 2019年1月2日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
disentangled-representation-papers
CreateAMind
26+阅读 · 2018年9月12日
vae 相关论文 表示学习 1
CreateAMind
12+阅读 · 2018年9月6日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
计算机视觉近一年进展综述
机器学习研究会
9+阅读 · 2017年11月25日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员