arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 1409.5313cs.DC
收藏

用于具有延迟更新的软件传输内存的沙盒

Sandboxing for Software Transactional Memory with Deferred Updates

Holger Machens

摘要:

允许事务在共享数据的不一致状态上工作的软件事务存储器实现有引起应用可见错误(诸如存储器访问违规或无限循环)的风险。因此,许多实现依赖于事务的每次读取的重复增量验证,以始终保证共享数据的一致视图。由于这种急切的验证技术会产生大量的处理成本,因此已经发布了几项建议,以建立一个交易沙箱,透明地防止或抑制这些错误,从而减少飞行中验证的频率。基于延迟更新并考虑非托管语言的软件事务存储器中最全面的事务沙箱概念,集成了多种技术,如信号插入,带外验证以及静态和动态插装。后者包括在每个直接写入之前插入验证屏障,其寻址线程的执行堆栈并且可能由未验证的读取产生。本文主要是从审查这种沙箱的方法,它揭示了一些改进C/C++上的沙箱。基于对运行时环境和编译器的了解,已经开发了一个错误模型来识别应用程序可见错误的关键路线。这种分析导致堆栈保护的概念,不太频繁的验证,一种替代的带外验证技术,并揭示了额外的风险,所谓的放弃区域内没有仪器交易。

英文摘要:

Software transactional memory implementations which allow transactions to work on inconsistent states of shared data, risk to cause application visible errors such as memory access violations or endless loops. Hence, many implementations rely on repeated incremental validation of every read of the transaction to always guarantee for a consistent view of shared data. Because this eager validation technique generates significant processing costs several proposals have been published to establish a sandbox for transactions, which transparently prevents or suppresses those errors and thereby allows to reduce the frequency of in-flight validations. The most comprehensive sandboxing concept of transactions in software transactional memory based on deferred updates and considering unmanaged languages, integrates multiple techniques such as signal interposition, out-of-band validation and static and dynamic instrumentation. The latter comprises the insertion of a validation barrier in front of every direct write which addresses the execution stack of the thread and potentially results from unvalidated reads. This paper basically results from a review of this sandboxing approach, which revealed some improvements for sandboxing on C/C++. Based on knowledge about the runtime environment and the compiler an error model has been developed to identify critical paths to application visible errors. This analysis lead to a concept for stack protection with less frequent validation, an alternative out-of-band validation technique and revealed additional risks of so-called waivered regions without instrumentation inside transactions.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑