•      Coqa: Concurrent Objects with Quantized Atomicity
    Coqa is a new language model for deeply embedding concurrent programming into objects. Programs written in Coqa have built-in the desirable behaviors of atomicity, mutual exclusion, and race freedom. A key property of our model is the notion of quantized atomicity: all concurrent program executions can be viewed as being divided into quantum regions of atomic execution, greatly reducing the number of interleavings to consider. Coqa project consists of a formal representation, CoqaKernel, and a prototype implementation, CoqaJava.

  •       Microkernel Virtual Machine (µKVM )
    A novel microkernel-based virtual machine with a new simple and declarative security framework. The architecture of the Microkernel Virtual Machine effectively removes the need for expensive runtime stack inspection, and applies the principle of least privilege to both library and application code elegantly and efficiently. The µKVM was developed on top of the Java on Unix/Solaris, with extensive changes to the Java Virtual Machine and its libraries.

  •       Consistent Distributed Commit: A Constant Overhead Solution
    Pulse Servers hold duplicates of a distributed database and perform transactions submitted by clients. Those servers guarantee the data consistency of multiple database replications despite of dynamic network changes like server partitions/mergers or crashes/recoveries.

  •       Cell--Dynamic Distributed Trusted Components
    A system that supports peer-to-peer, plugging-style and dynamic connections among components at run-time. Designed fully in object oriented style with UML and implemented in Java using Java reflection, RMI, class loader and XML.

  •       An English/Chinese Search Engine for the International Patent Classification
    The search engine provides rich access points, complete cross references and interactive user interface to help users to locate accurate IPC from numerous entries. Developed in Visual Basic and C on Windows NT.
            

  •       Distributed Ball Game
    An interactive game for multiple players on different LAN machines. This project involved sophisticated GUI design and was implemented in Java on Unix/Solaris platform. Java advanced features like RMI, JDBC, serialization, multi-thread, synchronization and socket communication were used.

  •      OpenGL Browser
    A tool for visual inspection and transformation of 3D textured models. Implemented in C++ on Unix/Solaris platform.

  •       OpenGL Library Recast
    Re-implemented a set of openGL libraries including object translations, lighting, rasterization, shading, visibility and antialiasing. Implemented in C++ on Unix/Solaris platform.

  •       Reliable Real Time Video Transfer System
    A system reliably delivers real time video to distributed machines via dynamically chosen routes to avoid congestion and broken links. A gravitational algorithm  is used at communication level to transfer network packets. Implemented in  C on Unix/Solaris platform.

  •       An Anonymous Online Digital Cash System
    A system emulates the real world cash transactions. It enforces strong protection of customer privacy. Implemented in Java using JCE, TCP/IP, Socket Programming, Public Key, blind signature scheme and AWT/Swing on Unix/Solaris platform.

  •       Fault-tolerant Distributed Mail Servers
    Designed and implemented mail servers that maintain email data consistency across distributed machines. Implemented in Java using TCP/IP, Socket Programming on Unix/Solaris platform.

  •       Linux Kernel Modifications
    Changed the Linux  process scheduler, page selection algorithm and added balanced binary tree index to the Linux directory structure, using C on Unix/Solaris platform.

  •      A Database System with Web Retrieval Interface
    Developed using Perl,Oracle, PL/SQL, HTML and HTTP on Unix/Solaris platform.

  •      Online Book Shopping Agent
    Implemented using Perl, CGI, HTTP and HTML on Unix/Solaris platform

HOME