Use this URL to cite or link to this record in EThOS: http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.706234
Title: Separation of concerns in concurrent programs using fine grained join points
Author: Xi, Chenchen
Awarding Body: University of Manchester
Current Institution: University of Manchester
Date of Award: 2012
Availability of Full Text:
Access from EThOS:
Access from Institution:
Abstract:
With the advent of multicore processors, there is an increasing amount of interest in building concurrent applications capable of fully utilising their features. Developing applications for these platforms to take full advantage of the power of multicore capabilities remains a complex, error-prone, and challenging endeavour. Unfortunately, concurrency is not uniformly and externally expressed in most existing application models. The result is that concurrency and thread management are hidden within objects or components and intermixed with their functionalities. After demonstrating the tangling of code that results from the interaction of these two major concerns, this thesis describes a method of improving the concurrent program by applying a novel technique to separate the concerns: aspect-oriented programming, which aims to encapsulate concerns that crosscut the main program flow in separate entities into aspects. The most mature aspect-oriented tool available at the time this project was being undertaken is AspectJ, which is an extension of Java. AspectJ can be used to write an aspect to a separate concern in a sequential program to avoid code tangling, but it is often inapplicable for concurrent programs. The problem lies in the fact that the points where parallelisation should occur are not natural join points in AspectJ (i.e. points where AspectJ can intervene). Consequently, this thesis proposes a set of fine-grained join points capable of completely handling concurrent programs. This model goes beyond present AspectJ models and demonstrates the need to recognise complex behaviour for an effective separation of concerns. Finally, aspects for implementing concurrent programs according to different schemes are presented, together with evaluation results. This highlights the flexibility of aspects for implementing concurrent programs, a flexibility which is always a cross-cutting concern with respect to the main concern of base applications.
Supervisor: Gurd, John Sponsor: Not available
Qualification Name: Thesis (Ph.D.) Qualification Level: Doctoral
EThOS ID: uk.bl.ethos.706234  DOI: Not available
Keywords: Synchronization ; Aspect Oriented Programming
Share: