skip to main content
10.1145/1774088.1774133acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

An aspect-oriented framework for operating system evolution

Published: 22 March 2010 Publication History

Abstract

This paper presents an aspect-oriented framework which enables dynamically weaving aspects into operating system in order to adjust its functionalities during system operation. The framework is designed based on the notion of dynamic aspect weaving in Aspect-Oriented Programming (AOP) arena, which can achieve modulating, at runtime, the behavior of an existing program by injecting a piece of code (called advice in AOP terminology) at selected location (called join point) of the program. It is useful in making program adaptable, especially for non-stopping systems of which, in general, going off-line for maintenance and undertaking system restart is either unacceptable or too expensive. The design of this framework includes a join point model and management functions on aspects. The join point model supports weaving multiple aspects to the same join point and the chained execution of advices of the same type. The management functions provide the creation, deployment, and runtime management of aspects, in addition to sequencing the execution of advices. An example implementation of this framework working on Linux operating system is described in this paper, which demonstrates both the feasibility and the effectiveness of this framework.

References

[1]
Walter Cazzola, James O. Coplien, Ahmed Ghoneim and Gunter Saake. Framework Patterns for the Evolution of Nonstoppable Software Systems. In Proceedings of the the 1st Nordic Conference on Pattern Languages of Programs (VikingPLoP'02), September 2002.
[2]
Tom Mens, Jim Buckley, Matthias Zenger, and Awais Rashid. Towards a Taxonomy of Software Evolution. In Proceedings of the 2nd International Workshop on Unanticipated Software Evolution (USE 2003), April 2003.
[3]
Walter Cazzola, Sonia Pini and Massimo Ancona. AOP for Software Evolution: A DEsign Oriented Approach. In Proceedings of the 10th Annual ACM Symposium on Applied Computing (SAC'05), pages 1356--1360, March 2005.
[4]
Gregor Kiczales, John Lamping, Anurag Menhdhekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. Aspect oriented programming. In ECOOP, volume 1241, pages 220--242. Springer-Verlag, 1997.
[5]
J. O. Kephart and D. M. Chess. "The Vision of Autonomic Computing". In IEEE Computer 01/2003, pages 43--50. IEEE Press, 2003.
[6]
Michael Engel and Bernd Freisleben. Supporting autonomic computing functionality via dynamic operating system kernel aspects. In AOSD '05, pages 51--62. ACM Press, 2005.
[7]
H. Masuhara, G. Kiczales, and C. Dutchyn. A Compilation and Optimization Model for Aspect-Oriented Programs. In Proc. CC 2003, LNCS-2622, pages 46--60. Springer, 2003.
[8]
Bryan Buck and Jeffrey K. Hollingsworth. An API for runtime code patching. The International Journal of High Performance Computing Applications, 14(4):317--329, 2000.
[9]
Yvonne Coady, Gregor Kiczales, Michael J. Feeley, Greg Smolyn: Using aspectC to improve the modularity of path-specific customization in operating system code. ESEC/SIGSOFT FSE 2001: 88--98.
[10]
Michael Engel and Bernd Freisleben. Using a LowLevel Virtual Machine to improve dynamic aspect support in operating system kernels. In 4th AOSD workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS), AOSD, 2005.
[11]
Rémi Douence, Thomas Fritz, Nicolas Loriant, Jean-Marc Menaud, Marc Ségura-Devillechaise, and Mario Südholt. An expressive aspect language for system applications with Arachne. In AOSD, pages 27--38. ACM Press, 2005.
[12]
Yoshisato Yanagisawa, Kenichi Kourai, Shigeru Chiba: A dynamic aspect-oriented system for OS kernels. GPCE 2006.
[13]
A. Tamches and B. P. Miller. Fine-grained dynamic instrumentation of commodity operating system kernels. In Operating Systems Design and Implementation, 1999.
[14]
Daniel Bovet and Marco Cesati. Understanding the Linux Kernel, 3rd Ed. ISBN 0596005652, O'Reilly Media, 2005.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '10: Proceedings of the 2010 ACM Symposium on Applied Computing
March 2010
2712 pages
ISBN:9781605586397
DOI:10.1145/1774088
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 March 2010

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. AOP
  2. aspect weaving
  3. aspect-oriented programming
  4. dynamic weaving
  5. operating system
  6. software evolution

Qualifiers

  • Research-article

Funding Sources

Conference

SAC'10
Sponsor:
SAC'10: The 2010 ACM Symposium on Applied Computing
March 22 - 26, 2010
Sierre, Switzerland

Acceptance Rates

SAC '10 Paper Acceptance Rate 364 of 1,353 submissions, 27%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 165
    Total Downloads
  • Downloads (Last 12 months)1
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Mar 2025

Other Metrics

Citations

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media