• DocumentCode
    1663458
  • Title

    Transparent distributed threads for Java

  • Author

    Haumacher, Bernhard ; Moschny, Thomas ; Reuter, Jürgen ; Tichy, Walter F.

  • Author_Institution
    Karlsruhe Univ., Germany
  • fYear
    2003
  • Abstract
    Remote method invocation in Java RMI allows the flow of control to pass across local Java threads and thereby span multiple virtual machines. However, the resulting distributed threads do not strictly follow the paradigm of their local Java counterparts for at least three reasons. Firstly, the absence of a global thread identity causes problems when reentering monitors. Secondly, blocks synchronized on remote objects do not work properly. Thirdly, the thread interruption mechanism for threads executing a remote call is broken. These problems make multi-threaded distributed programming complicated and error prone. We present a two-level solution: On the library level, we extend KaRMI (Philippsen et al. (2000)), a fast replacement for RMI, with global thread identities for eliminating problems with monitor reentry. Problem with synchronization on remote objects are solved with a facility for remote monitor acquisition. Our interrupt forwarding mechanism enables the application to get full control over its distributed threads. On the language level, we integrate these extensions with JavaParty´s transparent remote objects (Philippsen et al. (1997)) to get transparent distributed threads. We finally evaluate our approach with benchmarks that show costs and benefits of our overall design.
  • Keywords
    Java; distributed programming; interrupts; multi-threading; remote procedure calls; software performance evaluation; synchronisation; Java RMI; JavaParty transparent remote objects; KaRMI; benchmarks; global thread identities; interrupt forwarding mechanism; monitor reentry; multi-threaded distributed programming; remote method invocation; remote monitor acquisition; synchronization; transparent distributed threads; Communication system control; Distributed control; Java; Libraries; Network interfaces; Operating systems; Scalability; Virtual machining; Workstations; Yarn;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium, 2003. Proceedings. International
  • ISSN
    1530-2075
  • Print_ISBN
    0-7695-1926-1
  • Type

    conf

  • DOI
    10.1109/IPDPS.2003.1213261
  • Filename
    1213261