bsc-projects-12.html
changeset 141 5c859bb0358b
parent 140 69fc08cfde32
child 143 e779f42c6fa8
equal deleted inserted replaced
140:69fc08cfde32 141:5c859bb0358b
   311   </p>
   311   </p>
   312 
   312 
   313 <li> <H4>[CU6] Implementation of a Distributed Clock-Synchronisation Algorithm developed at NASA</H4>
   313 <li> <H4>[CU6] Implementation of a Distributed Clock-Synchronisation Algorithm developed at NASA</H4>
   314   <p>
   314   <p>
   315   <B>Description:</B>
   315   <B>Description:</B>
   316   This
   316   There are many algorithms for synchronising clocks. This
   317   <A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">paper</A> 
   317   <A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">paper</A> 
   318   describes a new synchronisation algorithm for clock that communicate by exchanging
   318   describes a new algorithm for clocks that communicate by exchanging
   319   messages.
   319   messages and thereby reach a state in which (within some bound) all clocks are synchronised.
   320   </p>
   320   The point of this project is to implement this algorithm and simulate networks of clocks.
   321 
   321   </p>
   322   <B>Literature:</B> 
   322 
   323   The project implements the algorithm presented
   323   <B>Literature:</B> 
   324   <A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">here</A>.
   324   There is a wide range of literature on clock syncronisation algorithms. 
       
   325   Some pointers are given in this
       
   326   <A HREF="http://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120000054_2011025573.pdf">paper</A>,
       
   327   which describes the algorithm to be implemented in this project. Pointers
       
   328   are given also <A HREF="http://en.wikipedia.org/wiki/Clock_synchronization">here</A>.
   325   </p>
   329   </p>
   326 
   330 
   327   <p><B>Skills:</B> 
   331   <p><B>Skills:</B> 
   328   In order to implement a simulation of this algorithm, you need to tackle
   332   In order to implement a simulation of a network of clocks, you need to tackle
   329   concurrency. You can do this for example in the programming language
   333   concurrency. You can do this for example in the programming language
   330   <A HREF="http://www.scala-lang.org/">Scala</A>. 
   334   <A HREF="http://www.scala-lang.org/">Scala</A> with the help of the 
       
   335   <A HREF="http://akka.io">Akka</a> library. This library enables you to send messages
       
   336   between different <I>actors</I>. <A HREF="http://www.scala-lang.org/node/242">Here</A> 
       
   337   are some examples that explain how to implement exchanging messages between actors. 
   331   </p>
   338   </p>
   332 
   339 
   333 </ul>
   340 </ul>
   334 </TD>
   341 </TD>
   335 </TR>
   342 </TR>