A quarter century of UNIX
The design and implementation of the 4.4BSD operating system
The design and implementation of the 4.4BSD operating system
Fine-grained dynamic instrumentation of commodity operating system kernels
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Structuring operating system aspects: using AOP to improve OS structure modularity
Communications of the ACM
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
Open Sources: Voices from the Open Source Revolution
Open Sources: Voices from the Open Source Revolution
Java Virtual Machine Specification
Java Virtual Machine Specification
The Vision of Autonomic Computing
Computer
Back to the future: a retroactive study of aspect evolution in operating system code
Proceedings of the 2nd international conference on Aspect-oriented software development
Web cache prefetching as an aspect: towards a dynamic-weaving based solution
Proceedings of the 2nd international conference on Aspect-oriented software development
Specifying the Semantics of Machine Instructions
IWPC '98 Proceedings of the 6th International Workshop on Program Comprehension
Aspect-Oriented System Structure
HOTOS '01 Proceedings of the Eighth Workshop on Hot Topics in Operating Systems
Virtual machine support for dynamic join points
Proceedings of the 3rd international conference on Aspect-oriented software development
LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation
Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization
The Design and Implementation of the FreeBSD Operating System
The Design and Implementation of the FreeBSD Operating System
Organic computing: on the feasibility of controlled emergence
Proceedings of the 2nd IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
Using AOP to develop architectural-neutral operating system components
Proceedings of the 11th workshop on ACM SIGOPS European workshop
Dynamic instrumentation of production systems
ATEC '04 Proceedings of the annual conference on USENIX Annual Technical Conference
Dynamic Adaptation of the Squid Web Cache with Arachne
IEEE Software
A dynamic aspect-oriented system for OS kernels
Proceedings of the 5th international conference on Generative programming and component engineering
A quantitative analysis of aspects in the eCos kernel
Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
Dynamic weaving for runtime adaptation in middleware
MAI '07 Proceedings of the 1st workshop on Middleware-application interaction: in conjunction with Euro-Sys 2007
Using common off-the-shelf tools to implement dynamic aspects
ACM SIGPLAN Notices
An approach to detecting failures automatically
Fourth international workshop on Software quality assurance: in conjunction with the 6th ESEC/FSE joint meeting
Epi-aspects: aspect-oriented conscientious software
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Database-aware test coverage monitoring
ISEC '08 Proceedings of the 1st India software engineering conference
Support for distributed adaptations in aspect-oriented middleware
Proceedings of the 7th international conference on Aspect-oriented software development
An extensible and lightweight architecture for adaptive server applications
Software—Practice & Experience
A High-level Aspect-oriented-based Framework for Software Security Hardening
Information Security Journal: A Global Perspective
Journal of Systems and Software
Support for M-Commerce Software Autonomy
Proceedings of the 2008 conference on Techniques and Applications for Mobile Commerce: Proceedings of TAMoCo 2008
Dynamic AspectC++: Generic Advice at Any Time
Proceedings of the 2009 conference on New Trends in Software Methodologies, Tools and Techniques: Proceedings of the Eighth SoMeT_09
An aspect-oriented framework for operating system evolution
Proceedings of the 2010 ACM Symposium on Applied Computing
Unification of static and dynamic AOP for evolution in embedded software systems
SC'07 Proceedings of the 6th international conference on Software composition
Transactions on aspect-oriented software development IV
AspectC++: An integrated approach for static and dynamic adaptation of system software
Knowledge-Based Systems
Weaving the fabric of the control loop through aspects
SOAR'09 Proceedings of the First international conference on Self-organizing architectures
Applying dependability aspects on top of "aspectized" software layers
Proceedings of the tenth international conference on Aspect-oriented software development
An evaluation of the adaptation capabilities in programming languages
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
JavaCtx: seamless toolchain integration for context-oriented programming
Proceedings of the 3rd International Workshop on Context-Oriented Programming
Sustainable system infrastructure and big bang evolution: can aspects keep pace?
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
An expressive aspect language for system applications with arachne
Transactions on Aspect-Oriented Software Development I
TOSKANA: a toolkit for operating system kernel aspects
Transactions on Aspect-Oriented Software Development II
Context-oriented programming: A software engineering perspective
Journal of Systems and Software
Exploiting dynamic weaving for self-managed agents in the iot
MATES'12 Proceedings of the 10th German conference on Multiagent System Technologies
An Analysis of Language-Level Support for Self-Adaptive Software
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Hi-index | 0.00 |
To master the complexity of software systems in the presence of unexpected events potentially affecting system operation, the Autonomic Computing Initiative [16] aims to build systems that have the ability to control and organize themselves to meet unforeseen changes in the hard- and software environment.The basic principles employed by autonomic computing are self-configuration, self-optimization, self-healing and self-protection. Typically, these principles are cross-cutting concerns, so an obvious approach to their realization in software is to use aspect-oriented programming (AOP). Since autonomic systems have to adapt their behavior to changing runtime conditions, a dynamic AOP approach is required to implement autonomic computing functionality.This paper introduces the TOSKANA toolkit for deploying dynamic aspects into an operating system kernel as a central part of a computer system having an overview of current system operation and resource usage. TOSKANA provides before, after and around advice for in-kernel functions and supports the specification of pointcuts as well as the implementation of aspects themselves as dynamically exchangeable kernel modules. The use of TOSKANA is demonstrated by several examples indicating the cross-cutting nature of providing autonomic computing functionality in an operating system kernel. Performance results are presented to characterize the aspect deployment overhead incurred by using TOSKANA.