The CLP( R ) language and system
ACM Transactions on Programming Languages and Systems (TOPLAS)
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
AspectC++: an aspect-oriented extension to the C++ programming language
CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
Just-in-time aspects: efficient dynamic weaving for Java
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
A Framework for the Detection and Resolution of Aspect Interactions
GPCE '02 Proceedings of the 1st ACM SIGPLAN/SIGSOFT conference on Generative Programming and Component Engineering
A Formal Definition of Crosscuts
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Process-Algebraic Foundations of Aspect-Oriented Programming
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
MDL: A Language And Compiler For Dynamic Program Instrumentation
PACT '97 Proceedings of the 1997 International Conference on Parallel Architectures and Compilation Techniques
CATP: A Context-Aware Transportation Protocol for HTTP
ICDCSW '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
Proceedings of the 3rd international conference on Aspect-oriented software development
Josh: an open AspectJ-like language
Proceedings of the 3rd international conference on Aspect-oriented software development
High-performance benchmarking with web polygraph
Software—Practice & Experience - Special issue: Web technologies
Squid: The Definitive Guide
Dynamic probes and generalised kernel hooks interface for linux
ALS'00 Proceedings of the 4th annual Linux Showcase & Conference - Volume 4
A workload characterization study of the 1998 World Cup Web site
IEEE Network: The Magazine of Global Internetworking
Adding trace matching with free variables to AspectJ
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Dynamic Adaptation of the Squid Web Cache with Arachne
IEEE Software
Explicitly distributed AOP using AWED
Proceedings of the 5th international conference on Aspect-oriented software development
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
Aspect-oriented programming for reactive systems: Larissa, a proposal in the synchronous framework
Science of Computer Programming - Special issue: Foundations of aspect-oriented programming
A flexible architecture for pointcut-advice language implementations
Proceedings of the 1st workshop on Virtual machines and intermediate languages for emerging modularization mechanisms
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
Making trace monitors feasible
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
Application-specific models and pointcuts using a logic metalanguage
Computer Languages, Systems and Structures
Test-based pointcuts for robust and fine-grained join point specification
Proceedings of the 7th international conference on Aspect-oriented software development
Support for distributed adaptations in aspect-oriented middleware
Proceedings of the 7th international conference on Aspect-oriented software development
AspectC2C: a symmetric aspect extension to the C language
ACM SIGPLAN Notices
Towards easing the diagnosis of bugs in OS code
Proceedings of the 4th workshop on Programming languages and operating systems
Proceedings of the 2008 AOSD workshop on Aspects, components, and patterns for infrastructure software
Runtime Verification of C Programs
TestCom '08 / FATES '08 Proceedings of the 20th IFIP TC 6/WG 6.1 international conference on Testing of Software and Communicating Systems: 8th International Workshop
A High-level Aspect-oriented-based Framework for Software Security Hardening
Information Security Journal: A Global Perspective
Debugging and testing middleware with aspect-based control-flow and causal patterns
Proceedings of the 9th ACM/IFIP/USENIX International Conference on Middleware
Ksplice: automatic rebootless kernel updates
Proceedings of the 4th ACM European conference on Computer systems
Journal of Systems and Software
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
Application-specific models and pointcuts using a logic meta language
ISC'06 Proceedings of the 14th international conference on Advances in smalltalk
An aspect-oriented framework for operating system evolution
Proceedings of the 2010 ACM Symposium on Applied Computing
Debugging aspect-enabled programs
SC'07 Proceedings of the 6th international conference on Software composition
Unification of static and dynamic AOP for evolution in embedded software systems
SC'07 Proceedings of the 6th international conference on Software composition
On the semantics of matching trace monitoring patterns
RV'07 Proceedings of the 7th international conference on Runtime verification
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
Aspect-oriented instrumentation with GCC
RV'10 Proceedings of the First international conference on Runtime verification
Modeling the car crash crisis management system using HiLA
Transactions on aspect-oriented software development VII
Modeling the car crash crisis management system using HiLA
Transactions on aspect-oriented software development VII
Modularization of distributed web services using aspects with explicit distribution (AWED)
ODBASE'06/OTM'06 Proceedings of the 2006 Confederated international conference on On the Move to Meaningful Internet Systems: CoopIS, DOA, GADA, and ODBASE - Volume Part II
ANIS: a negotiated integration of services in distributed environments
ODBASE'06/OTM'06 Proceedings of the 2006 Confederated international conference on On the Move to Meaningful Internet Systems: CoopIS, DOA, GADA, and ODBASE - Volume Part II
A model of components with non-regular protocols
SC'05 Proceedings of the 4th international conference on Software Composition
Tracechecks: defining semantic interfaces with temporal logic
SC'06 Proceedings of the 5th international conference on Software Composition
Managing the evolution of aspect-oriented software with model-based pointcuts
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
FATES'06/RV'06 Proceedings of the First combined international conference on Formal Approaches to Software Testing and Runtime Verification
A fine-grained join point model for more reusable aspects
APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
HiLA: high-level aspects for UML state machines
MODELS'09 Proceedings of the 2009 international conference on Models in Software Engineering
An expressive aspect composition language for UML state diagrams
MODELS'07 Proceedings of the 10th international conference on Model Driven Engineering Languages and Systems
Enhancing UML state machines with aspects
MODELS'07 Proceedings of the 10th international conference on Model Driven Engineering Languages and Systems
InterAspect: aspect-oriented instrumentation with GCC
Formal Methods in System Design
Hi-index | 0.01 |
C applications, in particular those using operating system level services, frequently comprise multiple crosscutting concerns: network protocols and security are typical examples of such concerns. While these concerns can partially be addressed during design and implementation of an application, they frequently become an issue at runtime, e.g., to avoid server downtime. A deployed network protocol might not be efficient enough and may thus need to be replaced. Buffer overflows might be discovered that imply critical breaches in the security model of an application. A prefetching strategy may be required to enhance performance.While aspect-oriented programming seems attractive in this context, none of the current aspect systems is expressive and efficient enough to address such concerns. This paper presents a new aspect system to provide a solution to this problem. While efficiency considerations have played an important part in the design of the aspect language, the language allows aspects to be expressed more concisely than previous approaches. In particular, it allows aspect programmers to quantify over sequences of execution points as well as over accesses through variable aliases. We show how the former can be used to modularize the replacement of network protocols and the latter to prevent buffer overflows. We also present an implementation of the language as an extension of Arachne, a dynamic weaver for C applications. Finally, we present performance evaluations supporting that Arachne is fast enough to extend high performance applications, such as the Squid web cache.