A file system may employ an enhanced or performance-adjusted allocation
scheme when storing data to multiple storage devices. A file system may
monitor one or more performance characteristics of storage devices. The
file system may, in response to storage requests, select one or more of
the storage devices for storing data associated storage requests based on
differences among the respective monitored performance characteristics
for the storage devices. Additionally, the file system may determine an
allocation pattern for storing data to the storage devices and may modify
the determined allocation pattern based on a detected change in the
monitored performance characteristics of the storage devices. Further,
the file system may store data based on both the allocation pattern and
on data characteristics associated with a data storage request. The file
system may also incorporate input specifying either new performance
characteristics or a new allocation pattern.