copyright c. 2007 Akash Tiwari
GRADUATE COURSES
Distributed Operating Systems (Dr. Randy Y. C. Chow), Database Management Systems (Dr. Markus Schneider), Advance Data Structures (Dr. Sartaj Sahni).
Analysis of Algorithms (Dr. Arunava Banerjee), Database System Implementation (Dr.Chris Jermaine), Automated Verfication (Dr. Tuba Yavuz)
GRADUATE PROJECTS
1. Implementing a Heap File
Heap File Manager implementation required loading large amount of data from text files into the database system, applying queries on the stored file to retrieve specific and bulk records. Other functions included getting next record to the current pointer, and etc.. (Problem) (Solution)
2. Implementing a Sorted File
An improvement on the previously developed heap file manager is a Sorted File Manager. This gives us much faster query output and is very much suitable for bulk record search, search and delete operations for single and multiple records can be done much efficiently using binary search algorithm in log(n) complexity. (Problem) (Solution)
1. Your Java application must take 'number of threads' as command line parameter to the program. We
will assume that there is a top level “shared resource” which all threads will be competing to access.
The mutual exclusion will be achieved using a number of semaphores which will be assumed to be
logically arranged in a full binary tree hierarchy. These semaphores will be logically treated as internal
nodes of the binary tree and the threads will be treated as leaf nodes of this logical binary tree. (Problem) (Solution)
2. Developed a distributed client/server implementation for concurrent readers and exclusive writer. The implementation consisted of a server that maintains a shared object for read and write accesses and several reader/writer clients on remote machines communicating with the server using socket on TCP/IP protocol suite. (Problem) (Solution)
3. The group management protocol dealt with group leader selection, allowing individuals to join a particular group based on simple majority voting and will deal with a member leaving the group. The leader election algorithm was “bully algorithm”. (Problem) (Solution)
4. In this project, we will implement the token-based distributed mutual exclusion algorithm with a logical ring topology as discussed in class. Processes in this algorithm form a logical ring where a token circulates in the ring. A process is allowed to execute its critical section only if it possesses the token. When the process has finished the critical section (if any), it passes the token to the successor node in the ring. The logical ring structure is attractive because it is simple, fair, and deadlock-free. (Problem) (Solution)
5. In this project you will implement the Basic Gossip Protocol for Data and File Replication. If updates are less frequent than reads and the order of the updates can be relaxed, updates can be lazily propagated among the replicas. In the gossip architecture, both read and update operations are directed by a file service agent (FSA) to any replica manager (RM). The FSA shields the replication details from the end-users / clients. Although there are two approaches to Gossip Update Propagation namely “Basic Gossip Protocol” and “Causal Order Gossip Algorithm” for the purposes of this project you will be limited to “Basic Gossip Algorithm”. (Problem) (Solution)
Performance evaluation of Priority queue data structures
Implemented efficient priority queue data structures and compared their performances with large sets of
data inputs. Data structures included binomial heap and leftist tree.(Problem) (Sample Input) (Sample Output) (Solution).
TheWeb-Based Bibliographic Information System “BibIS”
The handling of bibliographic references includes tasks like acquiring, storing, retrieving, changing, and
searching bibliographic data as well as user management, project management, transformation of
biographical data into different output formats, and thematic category organization, all for an easy
reference management system.(Problem) (Solution)