Log In Sign Up

Semantics, Verification, and Efficient Implementations for Tristate Numbers

by   Harishankar Vishwanathan, et al.

Extended Berkeley Packet Filter(BPF)is an in-kernel, register-based virtual machine in the Linux operating system that allows non-superusers to execute code at specific points within the Linux kernel. To ensure that such user code is safe within the kernel, BPF relies on an in-kernel static analyzer that proves properties such as bounded memory access and the absence of illegal operations. This static analyzer uses an abstract domain, which it calls tnums (tristate numbers), to over-approximate the set of values that a variable may store. This abstract domain is implemented efficiently with bitwise and arithmetic operations. This paper formalizes the semantics and various properties of tnums and provides the first proofs of soundness and precision of arithmetic and logical operations with tnums. We describe a novel sound algorithm for multiplying two tnums that is more precise and efficient (runs 55


page 1

page 2

page 3

page 4


Synthesizing Safe and Efficient Kernel Extensions for Packet Processing

Extended Berkeley Packet Filter (BPF) has emerged as a powerful method t...

Towards platform-independent verification of the standard mathematical functions: the square root function

The paper presents (human-oriented) specification and (pen-and-paper) ve...

MOAT: Towards Safe BPF Kernel Extension

The Linux kernel makes considerable use of Berkeley Packet Filter (BPF) ...

On proving consistency of equational theories in Bounded Arithmetic

We consider pure equational theories that allow substitution but disallo...

Safe Deferred Memory Reclamation with Types

Memory management in lock-free data structures remains a major challenge...

Extracting efficient exact real number computation from proofs in constructive type theory

Exact real computation is an alternative to floating-point arithmetic wh...

Extended Addressing Machines for PCF, with Explicit Substitutions

Addressing machines have been introduced as a formalism to construct mod...