Using aspectC to improve the modularity of path-specific customization in operating system code
Abstract
Layered architecture in operating system code is often compromised by execution path-specific customizations such as prefetching, page replacement and scheduling strategies. Pathspecific customizations are difficult to modularize in a layered architecture because they involve dynamic context passing and layer violations. Effectively they are vertically integrated slices through the layers. An initial experiment using an aspect-oriented programming language to refactor prefetching in the FreeBSD operating system kernel shows significant benefits, including easy (un)pluggability of prefetching modes, independent development of prefetching modes, and overall improved comprehensibility. Keywords aspect-oriented programming, software modularity, operating system design 1.
BibTeX
@inproceedings{Coady-al:FSE01,
author = {Yvonne Coady and
Gregor Kiczales and
Michael J. Feeley and
Greg Smolyn},
title = {Using {aspectC} to improve the modularity of path-specific customization in operating system code},
booktitle = {{ESEC/SIGSOFT} {FSE}},
pages = {88--98},
publisher = {{ACM}},
year = {2001},
}