John S. Danaher

Learn More
— In this paper, we investigate the problem of highly available, massive-scale file distribution in the Internet. To this end, we conduct a large-scale measurement study of BitTorrent, a popular class of systems that uses swarms of actively down-loading peers to assist each other in file distribution. The first generation of BitTorrent systems used a(More)
JCilk extends the serial subset of the Java language by importing the fork-join primitives spawn and sync from the Cilk multithreaded language, thereby providing call-return semantics for multithreaded subcomputations. In addition, JCilk transparently integrates Java's exception handling with multithreading by extending the semantics of Java's try and catch(More)
JCilk extends the Java language to provide call-return semantics for multithreading, much as Cilk does for C. Java's built-in thread model does not support the passing of exceptions or return values from one thread back to the " parent " thread that created it. JCilk imports Cilk's fork-join primitives spawn and sync into Java to provide procedure-call(More)
  • 1