The X-Kernel: An Architecture for Implementing Network Protocols
IEEE Transactions on Software Engineering
The Apertos reflective operating system: the concept and its implementation
OOPSLA '92 conference proceedings on Object-oriented programming systems, languages, and applications
Scheduler activations: effective kernel support for the user-level management of parallelism
ACM Transactions on Computer Systems (TOCS)
Towards an active network architecture
ACM SIGCOMM Computer Communication Review
Dynamic binding for an extensible system
OSDI '96 Proceedings of the second USENIX symposium on Operating systems design and implementation
Application performance and flexibility on exokernel systems
Proceedings of the sixteenth ACM symposium on Operating systems principles
HYDRA: the kernel of a multiprocessor operating system
Communications of the ACM
Information and control in gray-box systems
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
An empirical study of operating systems errors
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
Using aspectC to improve the modularity of path-specific customization in operating system code
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Towards robust OSes for appliances: a new approach based on domain-specific languages
EW 9 Proceedings of the 9th workshop on ACM SIGOPS European workshop: beyond the PC: new challenges for the operating system
Framework Design for End-to-End Optimization
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
Kea - A Dynamically Extensible and Configurable Operating System Kernel
ICCDS '96 Proceedings of the 3rd International Conference on Configurable Distributed Systems
Web cache prefetching as an aspect: towards a dynamic-weaving based solution
Proceedings of the 2nd international conference on Aspect-oriented software development
Capturing OS expertise in an event type system: the Bossa experience
EW 10 Proceedings of the 10th workshop on ACM SIGOPS European workshop
HOTOS'05 Proceedings of the 10th conference on Hot Topics in Operating Systems - Volume 10
Hi-index | 0.00 |
As OS code moves to new settings, it must be continually reshaped. Kernel code however, is notoriously brittle -- a small, seemingly localized change can break disparate parts of the system simultaneously. The problem is that the implementation of some system concerns are not modular because they naturally crosscut the system structure.Aspect-oriented programming proposes new mechanisms to enable the modular implementation of cross-cutting concerns. This paper evaluates aspect-oriented programming in the context of two crosscutting concerns in a FreeBSD 4.4 kernel -- page daemon activation and disk quotas. The ways in which aspects allowed us to make these implementations modular, the impact they have on comprehensibility and configurability, and the costs associated with supporting a prototype of an aspect-oriented runtime environment are presented.