 |
 |
Software Projects |
These are a collection of software projects that I have contributed
to which I feel are a good representation of the depth and breadth
of my programming capabilities. Some of them are personal projects
of my own and others are group projects.
Below you will find a brief description of each project and
a copy of the source code to the project if available. Additional
software dependencies required in order to compile and run the
provided source code are listed as well. |
|
 |
|
 |
Simple UNIX Shell |
 |
 |
This is a basic UNIX command shell. It supports the
assignment and interpolation of both local and environment
variables, input/output redirection, pipes, backticked
strings, single as well as double quoted strings, changing
directories, and execution of commands. The syntax is
based on that of the Bourne Again Shell (BASH) and is
defined using lex and yacc. The project is written in
C and was developed under Solaris and Linux.
Software Dependencies: Yacc and Lex (Solaris yacc/lex,
BSD yacc, GNU Bison, and GNU Flex are known to work). |
|
 |
 |
Jungle Simulation |
 |
 |
This was a group project that I worked on with 3 other
students. The project includes a multithreaded server
which acts as the 'Jungle' and several autonomous clients
which act as the 'animals'. The client and server communicate
via Sun RPC. Clients can use RPCs to query the server
for information and to take actions (move around the world,
eat grass, eat other animals, etc.) I was personally responsible
for development of the display and main threads of the
server. The display thread give the server user a visualization
of the jungle world. It uses the Evas 1 graphics library
which supports several rendering backends such as Xlib,
Imlib 2, and OpenGL. Event handling is abstracted using
the ECore library. The project is written in C and was
developed under Linux.
Software Dependencies: Evas 1 (with a combination of either
Xlib, Imlib 2, or OpenGL libraries), Ecore (>= 0.0.2),
Sun RPC compliant facilities (properly mapped via portmap).
|
|
 |
 |
Read-only EXT2 Filesystem
Library |
 |
 |
This is the start of a library for the read-only access
of a file image of an EXT2 filesystem. It is currently
only capable of reading in the super block, group descriptors,
and directory entries of the filesystem. This project
is written in C and was developed under Linux and Solaris. |
|
 |
|
|
|
|
 |
|