ROOT: replaying multithreaded traces with resource-oriented ordering
Anticipatory scheduling: a disk scheduling framework to overcome deceptive idleness in synchronous I/O