Date of Award

Winter 2006

Project Type


Program or Major

Computer Science

Degree Name

Master of Science

First Advisor

Phil Hatcher


XAM is an application programming interface (API) currently being standardized by the Storage Networking Industry Association (SNIA). XAM stands for "eXtensible Access Method". The XAM API will allow application developers to store content on a new class of storage systems known as "fixed-content" storage systems. This new class of storage system is optimized for the storage and retrieval of unstructured data that changes infrequently.

While it is anticipated that SNIA will eventually ratify a XAM application programmer's interface (API), it is important that the new API presents an interface that is useful yet offers the richness of the XAM protocol to the developer. An ideal goal for the XAM API would be to become as ubiquitous and familiar to developers as the block file system function calls such as fread(), fwrite(), remove(), etc.

This thesis will describe a XAM simulation framework that allows for the building of XAM applications without the need for actual XAM hardware. It will also compare the XAM API to the familiar block file system API. The XAM simulation can form the basis of a robust framework for continuing XAM research; the results of comparing XAM to file system applications will be fed back into the SNIA community.