This thesis addresses the problem of implementing mixed-media storage systems. In this work a mixed-media file system is defined to be a system that stores both conventional (best-effort) file data and real-time continuous-media data. Continuous-media data is usually bulky, and servers storing and retrieving many streams simultaneously require high throughput and capacity. To design a system that can support such bandwidth requirements, a thorough understanding is required of current I/O technology. An overview is given of commodity hardware that can be used for this purpose and performance experiments are presented that show how to use this hardware efficiently.