Isolation in Rust: What is Missing?

Isolation in Rust: What is Missing?
复制标题

Rust 中的隔离:缺少什么?

DOI:
10.1145/3477113.3487272
复制
发表时间:
2021
期刊:
Proceedings of the 11th Workshop on Programming Languages and Operating Sys
影响因子:
--
通讯作者:
Zellweger, Gerd
Zellweger, Gerd
中科院分区:
--
文献类型:
--
作者:
Burtsev, Anton;Appel, Dan;Detweiler, David;Huang, Tianjiao;Li, Zhaofeng;Narayanan, Vikram;Zellweger, Gerd

文献摘要

参考文献

被引文献

相似文献

Rust是第一种实用的编程语言,它有可能在语言级别提供对不可信计算的细粒度隔离。零开销安全的组合,即,没有托管运行时和垃圾收集的安全性,以及独特的所有权原则,使得能够在具有严格性能预算的系统中实现隔离,例如,数据库、网络处理框架、浏览器甚至操作系统内核。不幸的是,Rust在设计时并没有考虑到隔离。今天,在Rust中实现隔离是可能的,但需要复杂的,临时的,并且可以说是容易出错的机制来在语言之外执行它。我们研究了最近几个在Rust中实现隔离的系统,但这些系统都在努力克服语言的缺点。作为我们分析的结果,我们确定了一系列机制,这些机制可以使Rust生态系统中的一等公民隔离,并为实现它们提供了建议。
Rust is the first practical programming language that has the potential to provide fine-grained isolation of untrusted computations at the language level. A combination of zero-overhead safety, i.e., safety without a managed runtime and garbage collection, and a unique ownership discipline enable isolation in systems with tight performance budgets, e.g., databases, network processing frameworks, browsers, and even operating system kernels.Unfortunately, Rust was not designed with isolation in mind. Today, implementing isolation in Rust is possible but requires complex, ad hoc, and arguably error-prone mechanisms to enforce it outside of the language. We examine several recent systems that implement isolation in Rust but struggle with the shortcomings of the language. As a result of our analysis we identify a collection of mechanisms that can enable isolation as a first class citizen in the Rust ecosystem and suggest directions for implementing them.
J-Kernel:基于功能的 Java 操作系统
DOI: 10.1007/3-540-48749-2_17
发表时间: 2001
影响因子: --
作者:
T. V. Eicken;Chi;G. Czajkowski;C. Hawblitzel;Deyu Hu;Daniel Spoonhower
通讯作者: Daniel Spoonhower
了解硬件和基于语言的 IPC 机制的开销
DOI: 10.1145/3477113.3487275
发表时间: 2021
期刊: Proceedings of the 11th Workshop on Programming Languages and Operating Sys
影响因子: --
作者:
Li, Zhaofeng;Huang, Tianjiao;Narayanan, Vikram;Burtsev, Anton
通讯作者: Burtsev, Anton
DOI: --
发表时间: 2018-10
期刊: --
影响因子: --
作者:
C. Kulkarni;S. Moore;Mazhar Naqvi;Tian Zhang;R. Ricci;Ryan Stutsman
通讯作者: C. Kulkarni;S. Moore;Mazhar Naqvi;Tian Zhang;R. Ricci;Ryan Stutsman
SawMill 多服务器方法
DOI: 10.1145/566726.566751
发表时间: 2000
期刊: Proceedings of the 9th workshop on ACM SIGOPS European workshop: beyond the PC: new challenges for the operating system
影响因子: --
作者:
A. Gefflaut;T. Jaeger;Yoonho Park;J. Liedtke;Kevin Elphinstone;Volkmar Uhlig;Jonathon Tidswell;Luke Deller;Lars Reuther
通讯作者: Lars Reuther
使用高级编程语言编写网络驱动程序的案例
DOI: 10.1109/ancs.2019.8901892
发表时间: 2019
期刊: 2019 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS)
影响因子: --
作者:
Paul Emmerich;Simon Ellmann;Fabian Bonk;A. Egger;Esaú García Sánchez;T. Günzel;Sebastian Di Luzio;Alexandru Obada;Maximilian Stadlmeier;Sebastian Voit;G. Carle
通讯作者: G. Carle