You are here: Home Research Technical Reports ECECS-TR-2006-7, The Galaxy Toolkit: Providing Windows Explorer Access To Custom Data
Document Actions

ECECS-TR-2006-7, The Galaxy Toolkit: Providing Windows Explorer Access To Custom Data


ECECS-TR-2006-7

The Galaxy Toolkit: Providing Windows Explorer Access To Custom Data

In this paper, we describe the Galaxy Toolkit used to build Windows Explorer interfaces to various types of data. For example, this toolkit can be used to build a /proc-like view of local Windows processes, a read-write interface to a database, or an interface to DHTs such as OpenHash. Toolkit users can create Windows Explorer interfaces to their data using multiple languages, including Java, C# and C++.

Instead of interposing on traditional filesystem interfaces, such as the VFS layer or as an NFS loopback server, the Galaxy Toolkit interposes on the Shell Namespace Extension (NSE) interface - an interface unique to the Windows platform. At this level of interposition, the Galaxy Toolkit is able to perform some specialized performance optimizations (including whole file and folder copies), but does not provide total transparency to the end user since standard command line tools are not supported.

As an example, we have created an NFSv2 client in Java which performs between 53% and 186% faster than the Microsoft NFSv2 client for medium file reads/writes and small file writes, but which is 26% slower than the Microsoft NFSv2 client for small file reads. Based on our performance and feature assessment of the NSE interface, we find that our Galaxy toolkit is best suited for building Windows Explorer interfaces to datastores containing medium-to-large files. This toolkit is open source and released under the GPL (v2).


Chad Yoshikawa
Fred Annexstein
Kenneth A. Berman

filesystem
toolkit
windows

2006-07-27 00:00