Topics in Concurrent and Distributed Computing
Vijay Garg Summer 2005
Instructor: Prof. Vijay Garg ; Office: ENS 516 ; Phone: 471-9424 ; e-mail: garg@ece.utexas.edu;
URL: http://www.ece.utexas.edu/~garg
Prerequisites: Graduate standing
Textbook: Concurrent and Distributed Computing in Java by Vijay K. Garg, Wiley & Sons, 2004.
All students registered for this course will be given this book.
Course Contents: This course is an individual study course designed for students to learn concurrent and distributed programming aspects of Java. This course does not have any overlap with Distributed Systems course offered in Fall 2005 which is based around principles and algorithms in Distributed Systems.
This course has two parts. The first part covers the basics of concurrent and distributed programming in Java. The second part consists of more advanced and current topics in distributed computing: grid computing, peer-to-peer computing, and collaborative software, sensor networks, ad-hoc networks, model checking Java programs.
In the first part, the students will be expected to learn the following topics:
1. Multithreaded Programming in Java: threads, semaphores, monitors, wait and notify
2. Lock-free and Wait-free synchronization in Java
3. Networking in Java using UDP/TCP Sockets,
4. Java RMI
The first part of the course requires students to read and understand the first six chapters of the textbook. I will provide with some sample programming assignments which students can use to test their learning. These assignments will only serve as self-examination tools and will not be graded.
The second part of the course will require students to write a term paper on one of the current topics in distributed systems such as:
1. Peer-to-peer computing
2. Grid computing
3. Collaborative software
4. Sensor networks
5. Ad-hoc networks
6. Model checking Multithreaded/Distributed Java programs
7. Web Services
8. Distributed Simulation
9. Network Security
The students may choose other topic as well as long as it deals with concurrent and distributed aspects of software systems. The term paper may be done individually or in a group of 2 team members. The term paper should be typed and at most twelve pages long. An optional appendix may be attached if it is important for understanding the paper.
Deadline to submit the Term project interim report (2 pages): July 18. The interim report should list all the resources (references) that will be used for the final paper.
Deadline to submit the final Term Paper: August 11
Directory that will contain handouts (assignments etc.) for the course
Disabilities statement: "The University of Texas at Austin provides upon request appropriate academic accommodations for qualified students with disabilities. For more information, contact the Office of the Dean of Students at 471-6259, 471-4641 TTY."
|