| Previous Approach | Problems |
| Disk scheduling [17,18,23,28,36,38] | Needs many requests, |
| hard to implement in OS | |
| Write-anywhere file systems [14,25,31] | Gaining acceptance, |
| synchronous workloads | |
| Eager writing [10,34] | Drive complexity, |
| lack of FS information | |
| Higher-level interfaces [1,8,13] | Drive complexity, |
| gaining acceptance |
In contrast to previous approaches, range writes divide the responsibilities of performing fast writes across both file system and disk; this tandem approach is reminiscent of scheduler activations [3], in which a cooperative approach to thread scheduling was shown to be superior to either a pure user-level or kernel-level approach. The file system does what it does best: make coarse-grained layout decisions, manage free space, track block ownership, and so forth. The disk does what it does best: take advantage of low-level knowledge (e.g., head position, actual physical layout) to improve performance. The small change required does not greatly complicate either system or significantly change the interface between them, thus increasing the chances of deployment.