An efficient implementation of Java's remote method invocation
Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Dynamic layout of distributed applications in FarGo
Proceedings of the 21st international conference on Software engineering
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Efficient Java RMI for parallel programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Concurrent Programming in Java: Design Principles and Patterns
Concurrent Programming in Java: Design Principles and Patterns
AdJava: automatic distribution of Java applications
ACSC '02 Proceedings of the twenty-fifth Australasian conference on Computer science - Volume 4
PANGAEA: An Automatic Distribution Front-End for JAVA
Proceedings of the 11 IPPS/SPDP'99 Workshops Held in Conjunction with the 13th International Parallel Processing Symposium and 10th Symposium on Parallel and Distributed Processing
A Bytecode Translator for Distributed Execution of ``Legacy'' Java Software
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
J-Orchestra: Automatic Java Application Partitioning
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
DADO: enhancing middleware to support crosscutting features in distributed, heterogeneous systems
Proceedings of the 25th International Conference on Software Engineering
Transparent Distributed Threads for Java
IPDPS '03 Proceedings of the 17th International Symposium on Parallel and Distributed Processing
cJVM: A Single System Image of a JVM on a Cluster
ICPP '99 Proceedings of the 1999 International Conference on Parallel Processing
Distributed real-time specification for Java: a status report (digest)
JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
A distribution definition language for the automated distribution of Java objects
Proceedings of the 2nd workshop on Domain specific aspect languages
Deadline missing predictor based on aperiodic server queue length for distributed systems
Computer Communications
Queryll: Java database queries through bytecode rewriting
Proceedings of the ACM/IFIP/USENIX 2006 International Conference on Middleware
J-Orchestra: Enhancing Java programs with distribution capabilities
ACM Transactions on Software Engineering and Methodology (TOSEM)
Language design for distributed objects
Proceedings of the 1st International Workshop on Distributed Objects for the 21st Century
Queryll: Java database queries through bytecode rewriting
Middleware'06 Proceedings of the 7th ACM/IFIP/USENIX international conference on Middleware
Refactoring android Java code for on-demand computation offloading
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Hi-index | 0.00 |
Java middleware mechanisms, such as Java RMI or CORBA implementations, do not support thread coordination over the network: synchronizing on remote objects does not work correctly and thread identity is not preserved for executions spanning multiple machines. The current approaches dealing with the problem suffer from one of two weaknesses: either they require a new middleware mechanism, making them less portable, or they add overhead to the execution to propagate a thread identifier through all method calls. In this paper we present an approach that works with an unmodified middleware implementation, yet does not impose execution overhead. The key to our technique is the bytecode transformation of only stub routines, instead of the entire client application. We argue that this approach is portable and can be applied to mostly any middleware mechanism. At the same time, we show that, compared to past techniques, our approach eliminates an overhead of 5.5-12 applications from the SPEC JVM suite.