首页 > 最新文献

Proceedings of the 19th Workshop on Hot Topics in Operating Systems最新文献

英文 中文
Putting out the hardware dumpster fire 扑灭硬件垃圾桶的大火
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595903
B. Fiedler, D. Schwyn, Constantin Gierczak-Galle, David A. Cock, Timothy Roscoe
The immense hardware complexity of modern computers, both mobile phones and datacenter servers, is a seemingly endless source of bugs and vulnerabilities in system software. Classical OSes cannot address this, since they only run on a small subset of the machine. The issue is interactions within the entire ensemble of firmware blobs, co-processors, and CPUs that we term the de facto OS. The current "whac-a-mole" approach will not solve this problem, nor will clean-slate redesign: it is simply not possible to replace some firmware components and the engineering effort is too great. Our response, instead, is to build a high-level model of exactly what a given real hardware and software platform consists of, and captures for the first time the necessary and assumed trust relationships between the software contexts executing on different components (CPUs, devices, etc.). This principled but pragmatic approach allows us to make rigorous statements about the hodgepodge of soft- and firmware at the heart of modern computers. We expect these statements to be, at first, depressingly weak, but it may be the only way to identify changes that provably increase the trustworthiness of a real system, and quantify the benefits of these changes.
现代计算机(包括移动电话和数据中心服务器)的巨大硬件复杂性似乎是系统软件中错误和漏洞的无穷无尽的来源。传统的操作系统不能解决这个问题,因为它们只运行在机器的一个小子集上。问题是固件blob、协处理器和cpu(我们称之为事实上的操作系统)的整体内部的交互。当前的“打地鼠”方法并不能解决这个问题,重新设计也不能解决这个问题:更换一些固件组件是不可能的,而且工程上的努力太大了。相反,我们的回应是建立一个高级模型,准确地描述给定的真实硬件和软件平台由什么组成,并首次捕获在不同组件(cpu、设备等)上执行的软件上下文之间必要的和假定的信任关系。这种有原则但实用的方法使我们能够对现代计算机核心的软件和固件大杂烩做出严格的陈述。我们预计这些声明起初会令人沮丧地薄弱,但它可能是识别可证明增加真实系统可信度的变化并量化这些变化的好处的唯一方法。
{"title":"Putting out the hardware dumpster fire","authors":"B. Fiedler, D. Schwyn, Constantin Gierczak-Galle, David A. Cock, Timothy Roscoe","doi":"10.1145/3593856.3595903","DOIUrl":"https://doi.org/10.1145/3593856.3595903","url":null,"abstract":"The immense hardware complexity of modern computers, both mobile phones and datacenter servers, is a seemingly endless source of bugs and vulnerabilities in system software. Classical OSes cannot address this, since they only run on a small subset of the machine. The issue is interactions within the entire ensemble of firmware blobs, co-processors, and CPUs that we term the de facto OS. The current \"whac-a-mole\" approach will not solve this problem, nor will clean-slate redesign: it is simply not possible to replace some firmware components and the engineering effort is too great. Our response, instead, is to build a high-level model of exactly what a given real hardware and software platform consists of, and captures for the first time the necessary and assumed trust relationships between the software contexts executing on different components (CPUs, devices, etc.). This principled but pragmatic approach allows us to make rigorous statements about the hodgepodge of soft- and firmware at the heart of modern computers. We expect these statements to be, at first, depressingly weak, but it may be the only way to identify changes that provably increase the trustworthiness of a real system, and quantify the benefits of these changes.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"68 49","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134195593","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Towards Modern Development of Cloud Applications 迈向云应用的现代发展
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595909
S. Ghemawat, Robert Grandl, S. Petrovic, Michael J. Whittaker, Parveen Patel, Ivan Posva, Amin Vahdat
When writing a distributed application, conventional wisdom says to split your application into separate services that can be rolled out independently. This approach is well-intentioned, but a microservices-based architecture like this often backfires, introducing challenges that counteract the benefits the architecture tries to achieve. Fundamentally, this is because microservices conflate logical boundaries (how code is written) with physical boundaries (how code is deployed). In this paper, we propose a different programming methodology that decouples the two in order to solve these challenges. With our approach, developers write their applications as logical monoliths, offload the decisions of how to distribute and run applications to an automated runtime, and deploy applications atomically. Our prototype implementation reduces application latency by up to 15× and reduces cost by up to 9× compared to the status quo.
在编写分布式应用程序时,传统观点认为应该将应用程序拆分为可以独立推出的独立服务。这种方法的初衷是好的,但是像这样基于微服务的体系结构往往会适得其反,带来的挑战抵消了体系结构试图实现的好处。从根本上说,这是因为微服务将逻辑边界(如何编写代码)与物理边界(如何部署代码)混为一谈。在本文中,我们提出了一种不同的编程方法,将两者解耦,以解决这些挑战。使用我们的方法,开发人员将其应用程序编写为逻辑单体,将如何分发和运行应用程序的决策卸载到自动运行时,并自动部署应用程序。与现状相比,我们的原型实现将应用程序延迟减少了15倍,并将成本降低了9倍。
{"title":"Towards Modern Development of Cloud Applications","authors":"S. Ghemawat, Robert Grandl, S. Petrovic, Michael J. Whittaker, Parveen Patel, Ivan Posva, Amin Vahdat","doi":"10.1145/3593856.3595909","DOIUrl":"https://doi.org/10.1145/3593856.3595909","url":null,"abstract":"When writing a distributed application, conventional wisdom says to split your application into separate services that can be rolled out independently. This approach is well-intentioned, but a microservices-based architecture like this often backfires, introducing challenges that counteract the benefits the architecture tries to achieve. Fundamentally, this is because microservices conflate logical boundaries (how code is written) with physical boundaries (how code is deployed). In this paper, we propose a different programming methodology that decouples the two in order to solve these challenges. With our approach, developers write their applications as logical monoliths, offload the decisions of how to distribute and run applications to an automated runtime, and deploy applications atomically. Our prototype implementation reduces application latency by up to 15× and reduces cost by up to 9× compared to the status quo.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"61 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126596004","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
Software-Defined CPU Modes 软件定义的CPU模式
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595894
M. Roitzsch, Till Miemietz, Christian Von Elm, N. Asmussen
Our CPUs contain a compute instruction set, which regular applications use. But they also feature an intricate underworld of different CPU modes, combined with trap and exception handling to transition between these modes. These mechanisms are manifold and complex, yet the layering and functionality offered by the CPU modes is fixed. We have to take what CPU vendors provide, including potential security problems from unneeded modes. This paper explores the question, whether CPU modes could instead be defined entirely by software. We show how such a design would function and explore the advantages it enables. We believe that pushing all existing modes under a common design umbrella would enforce a cleaner structure and more control over exposed functionality. At the same time, the flexibility of software-defined modes enables interesting new use cases.
我们的cpu包含一个计算指令集,常规应用程序使用它。但它们也具有复杂的不同CPU模式,结合陷阱和异常处理在这些模式之间转换。这些机制是多种多样且复杂的,但是CPU模式提供的分层和功能是固定的。我们必须接受CPU供应商提供的东西,包括来自不必要模式的潜在安全问题。本文探讨的问题是,CPU模式是否可以完全由软件来定义。我们将展示这种设计将如何发挥作用,并探索它所带来的优势。我们相信,将所有现有的模式放在一个共同的设计保护伞下,将会加强一个更清晰的结构,并对暴露的功能有更多的控制。同时,软件定义模式的灵活性支持有趣的新用例。
{"title":"Software-Defined CPU Modes","authors":"M. Roitzsch, Till Miemietz, Christian Von Elm, N. Asmussen","doi":"10.1145/3593856.3595894","DOIUrl":"https://doi.org/10.1145/3593856.3595894","url":null,"abstract":"Our CPUs contain a compute instruction set, which regular applications use. But they also feature an intricate underworld of different CPU modes, combined with trap and exception handling to transition between these modes. These mechanisms are manifold and complex, yet the layering and functionality offered by the CPU modes is fixed. We have to take what CPU vendors provide, including potential security problems from unneeded modes. This paper explores the question, whether CPU modes could instead be defined entirely by software. We show how such a design would function and explore the advantages it enables. We believe that pushing all existing modes under a common design umbrella would enforce a cleaner structure and more control over exposed functionality. At the same time, the flexibility of software-defined modes enables interesting new use cases.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"6 6","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134259362","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Out of Hand for Hardware? Within Reach for Software! 硬件失控?触手可及的软件!
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595898
Zhihong Luo, Silvery Fu, Emmanuel Amaro, Amy Ousterhout, S. Ratnasamy, S. Shenker
Events that take 10s to 100s of ns like cache misses increasingly cause CPU stalls. However, hiding the latency of these events is challenging: hardware mechanisms suffer from the lack of flexibility, whereas prior software mechanisms fall short due to large overhead and limited event visibility. In this paper, we argue that with a combination of two emerging techniques - light-weight coroutines and sample-based profiling, hiding these events in software is within reach.
像缓存丢失这样耗时10秒到100秒的事件越来越多地导致CPU停滞。然而,隐藏这些事件的延迟是具有挑战性的:硬件机制缺乏灵活性,而先前的软件机制由于开销大和事件可见性有限而不足。在本文中,我们认为结合两种新兴技术——轻量级协同程序和基于样本的分析,在软件中隐藏这些事件是可以实现的。
{"title":"Out of Hand for Hardware? Within Reach for Software!","authors":"Zhihong Luo, Silvery Fu, Emmanuel Amaro, Amy Ousterhout, S. Ratnasamy, S. Shenker","doi":"10.1145/3593856.3595898","DOIUrl":"https://doi.org/10.1145/3593856.3595898","url":null,"abstract":"Events that take 10s to 100s of ns like cache misses increasingly cause CPU stalls. However, hiding the latency of these events is challenging: hardware mechanisms suffer from the lack of flexibility, whereas prior software mechanisms fall short due to large overhead and limited event visibility. In this paper, we argue that with a combination of two emerging techniques - light-weight coroutines and sample-based profiling, hiding these events in software is within reach.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133268010","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
NextGen-Malloc: Giving Memory Allocator Its Own Room in the House NextGen-Malloc:给内存分配器自己的空间
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595911
Ruihao Li, Qinzhe Wu, K. Kavi, Gayatri Mehta, N. Yadwadkar, L. John
Memory allocation and management have a significant impact on performance and energy of modern applications. We observe that performance can vary by as much as 72% in some applications based on which memory allocator is used. Many current allocators are multi-threaded to support concurrent allocation requests from different threads. However, such multi-threading comes at the cost of maintaining complex metadata that is tightly coupled and intertwined with user data. When memory management functions and other user programs run on the same core, the metadata used by management functions may pollute the processor caches and other resources. In this paper, we make a case for offloading memory allocation (and other similar management functions) from main processing cores to other processing units to boost performance, reduce energy consumption, and customize services to specific applications or application domains. To offload these multi-threaded fine-granularity functions, we propose to decouple the metadata of these functions from the rest of application data to reduce the overhead of inter-thread metadata synchronization. We draw attention to the following key questions to realize this opportunity: (a) What are the tradeoffs and challenges in offloading memory allocation to a dedicated core? (b) Should we use general-purpose cores or special-purpose cores for executing critical system management functions? (c) Can this methodology apply to heterogeneous systems (e.g., with GPUs, accelerators) and other service functions as well?
内存分配和管理对现代应用程序的性能和能耗有着重要的影响。我们观察到,在某些应用程序中,基于所使用的内存分配器,性能可能相差高达72%。许多当前的分配器都是多线程的,以支持来自不同线程的并发分配请求。然而,这种多线程的代价是维护与用户数据紧密耦合和交织在一起的复杂元数据。当内存管理函数和其他用户程序在同一核心上运行时,管理函数使用的元数据可能会污染处理器缓存和其他资源。在本文中,我们将内存分配(和其他类似的管理功能)从主处理核心卸载到其他处理单元,以提高性能,降低能耗,并为特定的应用程序或应用程序域定制服务。为了卸载这些多线程细粒度函数,我们建议将这些函数的元数据与其他应用程序数据解耦,以减少线程间元数据同步的开销。我们提请注意以下关键问题,以实现这一机会:(a)将内存分配卸载到专用核心的权衡和挑战是什么?(b)我们应该使用通用核还是专用核来执行关键的系统管理功能?(c)这种方法是否也适用于异构系统(例如,带有图形处理器、加速器)和其他业务功能?
{"title":"NextGen-Malloc: Giving Memory Allocator Its Own Room in the House","authors":"Ruihao Li, Qinzhe Wu, K. Kavi, Gayatri Mehta, N. Yadwadkar, L. John","doi":"10.1145/3593856.3595911","DOIUrl":"https://doi.org/10.1145/3593856.3595911","url":null,"abstract":"Memory allocation and management have a significant impact on performance and energy of modern applications. We observe that performance can vary by as much as 72% in some applications based on which memory allocator is used. Many current allocators are multi-threaded to support concurrent allocation requests from different threads. However, such multi-threading comes at the cost of maintaining complex metadata that is tightly coupled and intertwined with user data. When memory management functions and other user programs run on the same core, the metadata used by management functions may pollute the processor caches and other resources. In this paper, we make a case for offloading memory allocation (and other similar management functions) from main processing cores to other processing units to boost performance, reduce energy consumption, and customize services to specific applications or application domains. To offload these multi-threaded fine-granularity functions, we propose to decouple the metadata of these functions from the rest of application data to reduce the overhead of inter-thread metadata synchronization. We draw attention to the following key questions to realize this opportunity: (a) What are the tradeoffs and challenges in offloading memory allocation to a dedicated core? (b) Should we use general-purpose cores or special-purpose cores for executing critical system management functions? (c) Can this methodology apply to heterogeneous systems (e.g., with GPUs, accelerators) and other service functions as well?","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124522436","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
FIFO can be Better than LRU: the Power of Lazy Promotion and Quick Demotion FIFO优于LRU:懒升快降的力量
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595887
Juncheng Yang, Zimeng Qiu, Yazhuo Zhang, Yao Yue, K. V. Rashmi
LRU has been the basis of cache eviction algorithms for decades, with a plethora of innovations on improving LRU's miss ratio and throughput. While it is well-known that FIFO-based eviction algorithms provide significantly better throughput and scalability, they lag behind LRU on miss ratio, thus, cache efficiency. We performed a large-scale simulation study using 5307 block and web cache workloads collected in the past two decades. We find that contrary to what common wisdom suggests, some FIFO-based algorithms, such as FIFO-Reinsertion (or CLOCK), are, in fact, more efficient (have a lower miss ratio) than LRU. Moreover, we find that qick demotion --- evicting most new objects very quickly --- is critical for cache efficiency. We show that when enhanced by qick demotion, not only can state-of-the-art algorithms be more efficient, a simple FIFO-based algorithm can outperform five complex state-of-the-art in terms of miss ratio.
几十年来,LRU一直是缓存取出算法的基础,在提高LRU的未命中率和吞吐量方面有大量的创新。虽然众所周知,基于fifo的退出算法提供了更好的吞吐量和可伸缩性,但它们在失分率上落后于LRU,因此,缓存效率。我们使用过去二十年收集的5307块和web缓存工作负载进行了大规模的模拟研究。我们发现,与常识相反,一些基于fifo的算法,如fifo - reinsert(或CLOCK),实际上比LRU更有效(有更低的缺失率)。此外,我们发现快速降级——非常快地驱逐大多数新对象——对缓存效率至关重要。我们表明,当通过快速降级增强时,最先进的算法不仅更有效,而且基于fifo的简单算法在缺失率方面优于五种复杂的最先进算法。
{"title":"FIFO can be Better than LRU: the Power of Lazy Promotion and Quick Demotion","authors":"Juncheng Yang, Zimeng Qiu, Yazhuo Zhang, Yao Yue, K. V. Rashmi","doi":"10.1145/3593856.3595887","DOIUrl":"https://doi.org/10.1145/3593856.3595887","url":null,"abstract":"LRU has been the basis of cache eviction algorithms for decades, with a plethora of innovations on improving LRU's miss ratio and throughput. While it is well-known that FIFO-based eviction algorithms provide significantly better throughput and scalability, they lag behind LRU on miss ratio, thus, cache efficiency. We performed a large-scale simulation study using 5307 block and web cache workloads collected in the past two decades. We find that contrary to what common wisdom suggests, some FIFO-based algorithms, such as FIFO-Reinsertion (or CLOCK), are, in fact, more efficient (have a lower miss ratio) than LRU. Moreover, we find that qick demotion --- evicting most new objects very quickly --- is critical for cache efficiency. We show that when enhanced by qick demotion, not only can state-of-the-art algorithms be more efficient, a simple FIFO-based algorithm can outperform five complex state-of-the-art in terms of miss ratio.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130759424","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Fabric-Centric Computing Fabric-Centric计算
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595907
Ming Liu
Emerging memory fabrics and the resulting composable infrastructures have fundamentally challenged our conventional wisdom on how to build efficient rack/cluster-scale systems atop. This position paper proposes a new computing paradigm-called Fabric-Centric Computing (FCC)-that views the memory fabric as a first-class citizen to instantiate, orchestrate, and reclaim computations over composable infrastructures. We describe its design principles, report our early experiences, and discuss a new intermediate system stack proposal that harnesses the uniqueness of this cluster interconnect and realizes the vision of FCC.
新兴的存储结构和由此产生的可组合基础设施从根本上挑战了我们关于如何构建高效机架/集群规模系统的传统智慧。本文提出了一种新的计算范式——以结构为中心的计算(fabric - centric computing, FCC)——它将内存结构视为在可组合基础设施上实例化、编排和回收计算的一等公民。我们描述了它的设计原理,报告了我们的早期经验,并讨论了一种新的中间系统堆栈方案,该方案利用了这种集群互连的独特性,实现了FCC的愿景。
{"title":"Fabric-Centric Computing","authors":"Ming Liu","doi":"10.1145/3593856.3595907","DOIUrl":"https://doi.org/10.1145/3593856.3595907","url":null,"abstract":"Emerging memory fabrics and the resulting composable infrastructures have fundamentally challenged our conventional wisdom on how to build efficient rack/cluster-scale systems atop. This position paper proposes a new computing paradigm-called Fabric-Centric Computing (FCC)-that views the memory fabric as a first-class citizen to instantiate, orchestrate, and reclaim computations over composable infrastructures. We describe its design principles, report our early experiences, and discuss a new intermediate system stack proposal that harnesses the uniqueness of this cluster interconnect and realizes the vision of FCC.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114141364","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Automatic Kernel Offload Using BPF 使用BPF的自动内核卸载
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595888
Farbod Shahinfar, S. Miano, G. Siracusano, R. Bifulco, Aurojit Panda, G. Antichi
BPF support in Linux has made kernel extensions easier. Recent efforts have shown that using BPF to offload portions of server applications, e.g., memcached and service proxies, can improve application performance and efficiency. However, thus far, the community has not looked at the question of what parts of an application should be offloaded? This paper first shows that blindly offloading application functionality to the kernel is neither beneficial nor desirable, and care must be taken when deciding what to offload. Furthermore, when deciding what to offload, developers must consider not just the application, but also the workload being handled, and the kernel being targetted, Therefore, we advocate automating this decision process in a compiler, that can analyze application code, and produce two executables, a kernel offload and a userspace program, that jointly implement the application's functionality. This paper discusses the challenges that must be addressed to build such a compiler, and why they can be feasibly addressed.
Linux中的BPF支持使内核扩展变得更加容易。最近的研究表明,使用BPF卸载部分服务器应用程序(例如memcached和服务代理)可以提高应用程序的性能和效率。然而,到目前为止,社区还没有研究应用程序的哪些部分应该卸载的问题?本文首先表明,盲目地将应用程序功能卸载到内核中既没有好处,也不可取,在决定卸载哪些功能时必须小心。此外,在决定卸载什么时,开发人员不仅要考虑应用程序,还要考虑正在处理的工作负载和目标内核。因此,我们提倡在编译器中自动化这个决策过程,它可以分析应用程序代码,并产生两个可执行程序,一个内核卸载程序和一个用户空间程序,它们共同实现应用程序的功能。本文讨论了构建这样一个编译器必须解决的挑战,以及为什么可以切实解决这些挑战。
{"title":"Automatic Kernel Offload Using BPF","authors":"Farbod Shahinfar, S. Miano, G. Siracusano, R. Bifulco, Aurojit Panda, G. Antichi","doi":"10.1145/3593856.3595888","DOIUrl":"https://doi.org/10.1145/3593856.3595888","url":null,"abstract":"BPF support in Linux has made kernel extensions easier. Recent efforts have shown that using BPF to offload portions of server applications, e.g., memcached and service proxies, can improve application performance and efficiency. However, thus far, the community has not looked at the question of what parts of an application should be offloaded? This paper first shows that blindly offloading application functionality to the kernel is neither beneficial nor desirable, and care must be taken when deciding what to offload. Furthermore, when deciding what to offload, developers must consider not just the application, but also the workload being handled, and the kernel being targetted, Therefore, we advocate automating this decision process in a compiler, that can analyze application code, and produce two executables, a kernel offload and a userspace program, that jointly implement the application's functionality. This paper discusses the challenges that must be addressed to build such a compiler, and why they can be feasibly addressed.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129173052","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Access Control for Database Applications: Beyond Policy Enforcement 数据库应用程序的访问控制:超越策略强制
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595905
Wen Zhang, Aurojit Panda, S. Shenker
There have been many recent advances in enforcing finegrained access control for database-backed applications. However, operators face significant challenges both before and after an enforcement mechanism has been deployed. We identify three such challenges beyond enforcement and discuss possible solutions.
最近在对数据库支持的应用程序实施细粒度访问控制方面取得了许多进展。然而,在执行机制部署之前和之后,运营商都面临着巨大的挑战。我们确定了执法之外的三个挑战,并讨论了可能的解决方案。
{"title":"Access Control for Database Applications: Beyond Policy Enforcement","authors":"Wen Zhang, Aurojit Panda, S. Shenker","doi":"10.1145/3593856.3595905","DOIUrl":"https://doi.org/10.1145/3593856.3595905","url":null,"abstract":"There have been many recent advances in enforcing finegrained access control for database-backed applications. However, operators face significant challenges both before and after an enforcement mechanism has been deployed. We identify three such challenges beyond enforcement and discuss possible solutions.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116990170","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Programming Fully Disaggregated Systems 编程完全分解系统
Pub Date : 2023-06-22 DOI: 10.1145/3593856.3595889
Christoph Anneser, Lukas Vogel, F. Gruber, Maximilian Bandle, Jana Giceva
With full resource disaggregation on the horizon, it is unclear what the most suitable programming model is that enables dataflow developers to fully harvest the potential that recent hardware developments offer. In our vision, we propose to raise the abstraction level to allow developers to primarily reason about their dataflow and the requirements that need to be met by the underlying system in a declarative fashion. Underneath, the system works with typed memory regions and uses the notion of ownership that allows for more flexible memory management across the different compute devices and the tasks mapped onto them. This requires a holistic approach that crosses multiple layers of the system stack, opening exciting systems research questions.
随着全面的资源分解即将到来,目前还不清楚什么是最合适的编程模型,它使数据流开发人员能够充分利用最近硬件开发提供的潜力。在我们的设想中,我们建议提高抽象层次,以允许开发人员以声明的方式主要推断他们的数据流和需要由底层系统满足的需求。在底层,系统处理类型化内存区域,并使用所有权的概念,允许跨不同计算设备和映射到它们上的任务进行更灵活的内存管理。这需要一个整体的方法,跨越多个层次的系统堆栈,打开令人兴奋的系统研究问题。
{"title":"Programming Fully Disaggregated Systems","authors":"Christoph Anneser, Lukas Vogel, F. Gruber, Maximilian Bandle, Jana Giceva","doi":"10.1145/3593856.3595889","DOIUrl":"https://doi.org/10.1145/3593856.3595889","url":null,"abstract":"With full resource disaggregation on the horizon, it is unclear what the most suitable programming model is that enables dataflow developers to fully harvest the potential that recent hardware developments offer. In our vision, we propose to raise the abstraction level to allow developers to primarily reason about their dataflow and the requirements that need to be met by the underlying system in a declarative fashion. Underneath, the system works with typed memory regions and uses the notion of ownership that allows for more flexible memory management across the different compute devices and the tasks mapped onto them. This requires a holistic approach that crosses multiple layers of the system stack, opening exciting systems research questions.","PeriodicalId":330470,"journal":{"name":"Proceedings of the 19th Workshop on Hot Topics in Operating Systems","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-06-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132266212","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
期刊
Proceedings of the 19th Workshop on Hot Topics in Operating Systems
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1