ΛΗΚΥΘΟΣ
    • English
    • Ελληνικά
  • English 
    • English
    • Ελληνικά
  • Login
View Item 
  •   LEKYTHOS Home
  • Κυπριακή ερευνητική παραγωγή / Cyprus research production
  • Αρχείο Μεταπτυχιακών διατριβών
  • Πανεπιστήμιο Κύπρου
  • Τμήμα Πληροφορικής
  • View Item
  •   LEKYTHOS Home
  • Κυπριακή ερευνητική παραγωγή / Cyprus research production
  • Αρχείο Μεταπτυχιακών διατριβών
  • Πανεπιστήμιο Κύπρου
  • Τμήμα Πληροφορικής
  • View Item
JavaScript is disabled for your browser. Some features of this site may not work without it.

Enchancing the tempo compiler to support java-sockets/TCP -based communication

Thumbnail
View/Open
Μεταπτυχιακή εργασία (1.238Mb)
Date
2011-06
Author
Ploutarchou, Christos C.
Πλούταρχου, Χρίστος
Metadata
Show full item record
Abstract
The term automated implementation of distributed algorithms refers to the process during which an algorithm written in Input/Output Automata (IOA) and/or Timed IOA is automatically translated to executable code. The Tempo toolkit provides a connection with the IOA compiler and using particular plug-ins makes the above feasible. In that way, simple algorithms such as LCR Leader Election or even more complex such as Lamport's Paxos algorithm for the consensus problem can be translated very easily from TIOA to Java executable code using the toolkit, with the generated code preserving and keeping the correctness of the specification. The mediator between IOA compiler and Tempo is the Eclipse environment, which under the certain configuration and setup, is used for the desired translation. So far, the generated code by the toolkit was able to run on several workstations that were communicating via the Message Passing Interface. Even though MPI is very powerful, it has certain limitations and restrictions such as that is suitable for WANs, nor it supports dynamic ad hoc connections. Hence, there was an urgency of finding a mechanism to overcome those limitations and enhance the toolkit with more capabilities. In this Thesis we enhance the Tempo toolkit to support Java TCP connections between the communicating nodes. For this purpose, we created several classes imitating the behavior of the .Net package of Java. For certain reasons, which will be mentioned later, classes such as Socket and ServerSocket could not be used directly and hence we ended up creating our own classes.To provide evidence of the correctness of our implementation we firstly tested the model using a very simple algorithm that uses two communicating nodes. The first machine, A, was a Sender and the other one, B, was the Receiver, managing successfully to send a message from A to B and print that in B. Then, we tested our implementation with the well known Paxos algorithm. The algorithm was translated and run correctly suggesting that our implementation does what it should; this is a strong indication that Tempo has been successfully enhanced to support Java/TCP Sockets.
URI
http://hdl.handle.net/10797/13021
Collections
  • Τμήμα Πληροφορικής [73]

DSpace software copyright © 2002-2015  DuraSpace
Contact Us | Send Feedback
 

 

Browse

All of DSpaceCommunities & CollectionsBy Issue DateAuthorsTitlesSubjectsThis CollectionBy Issue DateAuthorsTitlesSubjects

My Account

Login

DSpace software copyright © 2002-2015  DuraSpace
Contact Us | Send Feedback