55 research outputs found
Adding SMP support to fastpaths in an L4 microkernel
Fastpaths are a method of optimization which relies on treating the most commonly executed cases of certain functions in a privileged manner, such that behaviour is not modified, but execution time is reduced.Fastpaths play an important role on improving paravirtualization performance offered by an L4 microkernel.In this article we redesign two existing fastpaths in an L4 microkernel for the purpose of adding SMP support.We then put these fastpaths through a series of regression and performance tests to determine if the design is correct and what performance benefits we can expect by using them on a multiprocessor system
An implementation of Deflate in Coq
The widely-used compression format "Deflate" is defined in RFC 1951 and is
based on prefix-free codings and backreferences. There are unclear points about
the way these codings are specified, and several sources for confusion in the
standard. We tried to fix this problem by giving a rigorous mathematical
specification, which we formalized in Coq. We produced a verified
implementation in Coq which achieves competitive performance on inputs of
several megabytes. In this paper we present the several parts of our
implementation: a fully verified implementation of canonical prefix-free
codings, which can be used in other compression formats as well, and an elegant
formalism for specifying sophisticated formats, which we used to implement both
a compression and decompression algorithm in Coq which we formally prove
inverse to each other -- the first time this has been achieved to our
knowledge. The compatibility to other Deflate implementations can be shown
empirically. We furthermore discuss some of the difficulties, specifically
regarding memory and runtime requirements, and our approaches to overcome them
- …