C programming: a modern approach
C programming: a modern approach
Linux Journal
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
An Empirical Analysis of C Preprocessor Use
IEEE Transactions on Software Engineering
Aspect-Oriented Programming of Sparse Matrix Code
ISCOPE '97 Proceedings of the Scientific Computing in Object-Oriented Parallel Environments
Improving evolvability of operating systems with aspectc
Improving evolvability of operating systems with aspectc
A study of the Linux kernel evolution
ACM SIGOPS Operating Systems Review
K42: an infrastructure for operating system research
ACM SIGOPS Operating Systems Review
Linux Kernel Development (2nd Edition) (Novell Press)
Linux Kernel Development (2nd Edition) (Novell Press)
SysObjC: C extension for development of object-oriented operating systems
Proceedings of the 3rd workshop on Programming languages and operating systems: linguistic support for modern operating systems
K42: building a complete operating system
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
A quantitative analysis of aspects in the eCos kernel
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
HOTOS'05 Proceedings of the 10th conference on Hot Topics in Operating Systems - Volume 10
Can we refactor conditional compilation into aspects?
Proceedings of the 8th ACM international conference on Aspect-oriented software development
On reconciling patches and aspects
Proceedings of the 8th workshop on Aspects, components, and patterns for infrastructure software
A model of refactoring physically and virtually separated features
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
An analysis of the variability in forty preprocessor-based software product lines
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
CiAO: an aspect-oriented operating-system family for resource-constrained embedded systems
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Aspect-aware operating system development
Proceedings of the tenth international conference on Aspect-oriented software development
Analyzing the discipline of preprocessor annotations in 30 million lines of C code
Proceedings of the tenth international conference on Aspect-oriented software development
The aspect-aware design and implementation of the CiAO operating-system family
Transactions on Aspect-Oriented Software Development IX
Hi-index | 0.00 |
In previous work, we presented a domain-specific version of C, called C4, which was used for capturing extensions to the Linux 2.6 kernel using AOSD techniques as an alternative to the conventional patching approach [10, 19]. The focus of that work was on introducing new extensions represented as aspects in system software such as the Linux kernel with a focus on readablility, compatibility, performance, and the preservation of existing development workflows. However, other AOSD researchers (e.g. Lohmann et al. [8]) state that "... Linux, as a monolithic system, provides a low number of join-points for aspects and that those available were semantically ambiguous." This worrisome statement motivated us to study the feasibility of applying AOSD techniques to refactor existing Linux kernel extensions. To gain insight we analyzed the AOSD-ness of a large number of configurable options available in the Linux kernel and evaluated whether they could be converted into aspects---and for the AOSD fan the preliminary results are promising.