CleanQ: a lightweight, uniform, formally specified interface for intra-machine data transfer

11/20/2019
by   Roni Haecki, et al.
0

We present CleanQ, a high-performance operating-system interface for descriptor-based data transfer with rigorous formal semantics, based on a simple, formally-verified notion of ownership transfer, with a fast reference implementation. CleanQ aims to replace the current proliferation of similar, but subtly diverse, and loosely specified, descriptor-based interfaces in OS kernels and device drivers. CleanQ has strict semantics that not only clarify both the implementation of the interface for different hardware devices and software usecases, but also enable composition of modules as in more heavyweight frameworks like Unix streams. We motivate CleanQ by showing that loose specifications derived from implementation lead to security and correctness bugs in production systems that a clean, formal, and easilyunderstandable abstraction helps eliminate. We further demonstrate by experiment that there is negligible performance cost for a clean design: we show overheads in the tens of cycles for operations, and comparable end-to-end performance to the highly-tuned Virtio and DPDK implementations on Linux.

READ FULL TEXT

page 5

page 10

research
11/01/2018

Formally Verified Hardware/Software Co-Design for Remote Attestation

In this work, we take the first step towards formal verification of RA b...
research
05/03/2019

A New Hierarchical Software Architecture Towards Safety-Critical Aspects of a Drone System

In this paper, a new hierarchical software architecture is proposed to i...
research
12/08/2018

A Verified Timsort C Implementation in Isabelle/HOL

Formal verification of traditional algorithms are of great significance ...
research
07/16/2021

Verified Mutable Data Structures

Malfunctions in software like airplane control systems or nuclear plant ...
research
01/26/2018

Modeling of languages for tensor manipulation

Numerical applications and, more recently, machine learning applications...
research
08/29/2022

Creating Interactive Visualizations of TopHat Programs

Many companies and institutions have automated their business process in...
research
12/10/2020

Securing the EDK II Image Loader

The Unified Extensible Firmware Interface (UEFI) is a standardised inter...

Please sign up or login with your details

Forgot password? Click here to reset