Progress-based regulation of low-importance processes
Proceedings of the seventeenth ACM symposium on Operating systems principles
SEDA: an architecture for well-conditioned, scalable internet services
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Building adaptive distributed applications with middleware and aspects
Proceedings of the 3rd international conference on Aspect-oriented software development
A method for transparent admission control and request scheduling in e-commerce web sites
Proceedings of the 13th international conference on World Wide Web
A User-Level Framework for Scheduling within Service Execution Environments
SCC '04 Proceedings of the 2004 IEEE International Conference on Services Computing
Empowering configurable QoS management in real-time systems
Proceedings of the 4th international conference on Aspect-oriented software development
Adaptive overload control for busy internet servers
USITS'03 Proceedings of the 4th conference on USENIX Symposium on Internet Technologies and Systems - Volume 4
User-level resource-constrained sandboxing
WSS'00 Proceedings of the 4th conference on USENIX Windows Systems Symposium - Volume 4
Aspect-oriented programming beyond dependency injection
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Electronic Notes in Theoretical Computer Science (ENTCS)
Proceedings of the 8th workshop on Aspects, components, and patterns for infrastructure software
Application-Level Scheduling Using AOP
Transactions on Aspect-Oriented Software Development V
Extending AspectJ for separating regions
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Model-driven development for early aspects
Information and Software Technology
Enabling software evolution via AOP and reflection: report on the workshop RAM-SE at ECOOP 2007
ECOOP'07 Proceedings of the 2007 conference on Object-oriented technology
An aspect-oriented CPU resource reservation framework integrated in MDE tools
Proceedings of the 8th international workshop on Advanced modularization techniques
Hi-index | 0.00 |
Achieving sufficient execution performance is a challenging goal of software development. Unfortunately, violating performance requirements is often revealed at a late stage of the development. Fixing a performance problem at such a late stage is difficult in terms of cost and time. To solve this problem, this paper presents QoSWeaver, which provides aspect-oriented application-level scheduling. QoSWeaver weaves scheduling code written in an aspect into application code. The scheduling code gets an application thread to voluntarily yield its execution to implement a scheduling policy. The idea of scheduling at the application level is not new, but aspect-oriented programming makes it more realistic by separation of scheduling code. QoSWeaver also provides a profile-based pointcut generator, which automatically generates pointcuts for fine-grained scheduling. To investigate the ability of QoSWeaver for implementing practical scheduling policies, we used QoSWeaver for tuning the performance of a river monitoring system named Kasendas. For reliable examination, Kasendas was originally developed by an outside corporation and then it was tuned by the authors with QoSWeaver. The authors could successfully improve the performance of Kasendas under heavy workload and the work of the performance tuning was not large.