Skip to main content
Back to USENIX
  • Conferences
  • Students
Sign in

USENIX Conference Policies

  • Event Code of Conduct
  • Conference Network Policy
  • Statement on Environmental Responsibility Policy

CpU: Component Composition for Systems Software

Knit is a new component definition and linking language for systems code. Knit helps make C code more understandable and reusable by third parties, helps eliminate much of the performance overhead of componentization, detects subtle errors in component composition that cannot be caught with normal component type systems, and provides a foundation for developing future analyses over C-based components, such as cross-component optimization. The language is especially designed for use with component kits, where standard linking tools provide inadequate support for component configuration. In particular, we developed Knit for use with the OSKit, a large collection of components for building low-level systems. However, Knit is not OSKit-specific, and we have implemented parts of the Click modular router in terms of Knit components to illustrate the expressiveness and flexibility of our language. This paper provides an overview of the Knit language and its applications.

Alastair Reid, University of Utah

Matthew Flatt, University of Utah

Leigh Stoller, University of Utah

Eric Eide, University of Utah

BibTeX
@inproceedings {271129,
author = {Alastair Reid and Matthew Flatt and Leigh Stoller and Eric Eide},
title = {{CpU}: Component Composition for Systems Software},
booktitle = {Fourth Symposium on Operating Systems Design and Implementation (OSDI 2000)},
year = {2000},
address = {San Diego, CA },
url = {https://www.usenix.org/conference/osdi-2000/cpu-component-composition-systems-software},
publisher = {USENIX Association},
month = oct
}
Download

Links

Paper: 
http://www.usenix.org/events/osdi2000/full_papers/reid/reid.pdf
Paper (HTML): 
http://www.usenix.org/events/osdi2000/full_papers/reid/reid_html/index.html
  • Log in or register to post comments

© USENIX
EIN 13-3055038

  • Privacy Policy
  • Contact Us