Advanced Programming Languages

Advanced Programming Languages

General Information

This course will introduce advanced programming language concepts (especially with Java and .Net families), parallel languages, autonomous computing with component technologies, component grid technologies, Lab. Experiments, etc. We will also emphasize on the aspects of interfacing component software with advanced network technologies. This course will include software projects for students to experience languages.

The main topics include:
¨ Java programming languages
¨ JavaBean, EJB, and Javaspace
¨ Java proxy and serialization
¨ Clustered EJB
¨ Supporting RMI over fast network protocols
¨ Supporting RMI over wireless protocols
¨ JVM, KVM, GC, and JIT
¨ Overviews of JMS and JXTA
¨ Java chip and compilation issues.
¨ Introduction to Intel IXP 1200 Network Processor
¨ Introduction to Intel IXP 2400 Network Processor
¨ Introduction to Intel IXP 2800 Network Processor
¨ Grid service over Network Processor.
¨ Support .Net remoting over InfiniBand.
¨ Support .Net remoting over Meta-clusters with Network Processors.
¨ CCA and OGSA.
¨ Parallel programming languages: OpenMP.
¨ Parallel Programming Tools, such as PVM and MPI.
¨ Multi-media languages: Brook, StreamC, Baker.
¨ Compiler optimization issues.


Languages and Softwares Used

C, C++, Java, C#, .NET, Fortran 90, HPF(High-Performance Fortran), PVM, MPI, Open MP


Reference Book
  1. Building Scalable and High-Performance Java Web Applications Using J2EE Technology, Greg Barish, Addison Wesley, ISBN: 0-201-72956-3.
  2. “Compiling for the .NET Common Language Runtime”, by John Gough, Prentice Hall, 2001.
  3. Network Systems Design Using Network Processors, by Douglas E. Comer, Prentice Hall, 2003, ISBN: 0131417924
  4. Intel Internet Exchange Architecture and Applications: A Practical Guide to Intel's Network Processors, by Bill Carlson, Intel Press, 2003, ISBN: 0970284632.
  5. IXP1200 Programming, by Erik J. Johnson, and Aaron R. Kunze, Intel Press, 2002, ISBN: 097128878X.
  6. Network Processor Design: Issues and Practices, by Patrick Crowley (Editor), et al, Morgan Kaufmann, 2002, ISBN: 1558608753.
Click here to download the files:-


Java, JavaBean, JVM
  1. Java Beans. Download
  2. Dynamic Proxies. Download
  3. Java Reflection and Serialization. Download, Download
  4. Java Virtual Machine. Download, Download, Download
  5. Java Assembly Language.

Network processor
  1. Introduction to IXP 425 Network processor
  2. Introduction to IXP1200 Network processor Download
  3. Baker language

RMI, EJB
  1. RMI Fundamentals. Download
  2. Introduction to J2EE and EJB. Download
  3. Transaction in EJB.Download
  4. JMS/EJB clustering.Download
  5. KaRMI. Download
  6. RMI Porting -- VIA RMI. Download

Bluetooth, Inifiband, Jini
  1. Java and Bluetooth Integration. Download
  2. An Introduction to the InfiniBand Architecture. Download
  3. Jini.

.Net and C#
  1. Programming with C# and .NET. Download
  2. Context and Remoting.

Tools
  1. PowerPoint File Viewer. Download
  2. Acrobat Reader 5.0. Download
  3. GSview 4.3. Download




Readings and Handouts

JavaBean
  1. Bean Builder Homepage. Download

Network processor
  1. Analytical Models and performance evaluations for Network Processors Download
  2. Network Security processor Download
  3. Advanced Routing Technologies Download
  4. QOS Issues in Servers for wireless communications Download
  5. QOS System Designs Download
  6. Design, Implementation and Performance of a Content-Based Switch Download

JXTA
  1. Jxta.org Download

Enterprise JavaBean and VIA
  1. Enterprise JavaBeans Specification, Version 2.0. Download
  2. Mastering Enterprise JavaBeans, 2nd Edition. Download
  3. Virtual Interface Architecture Specification, Version 1.0. Download
  4. InfiniBand Architecture Specification Volume 1, Release 1.0.a. Download
  5. InfiniBand Architecture Specification Volume 2, Release 1.0.a. Download

JavaVM and JIT
  1. T. Suganuma......, "Overview of the IBM Java Just-in-Time Compiler" Download

Bluetooth
  1. Bluetooth Specifications Book v1.1. Download
  2. Bluetooth Profiles Book v1.1. Download

Infiniband
  1. Infiniband Trade Association Download

Jini
  1. Jini Specifications v1.2. Download
  2. JavaSpaces Specifications. Download

Architecture Description Language
  1. Technische Universitat Berlin, "Beyond Tool-Specific Machine Descriptions", Berlin Germany. Download
dg