Device Driven I/O for Implicit Paging Operations
In Linux, implicit paging operations (such as page cleaning or read-ahead) are initiated by the memory management system, and can often result in bursty usage of storage resources. We present a new method of performing paging operations that are "pulled" by the paging device instead. When there is available bandwidth, the device can request operations from the memory management system to be performed with a minimum of latency. With this pull-model of paging, we are able to take a more aggressive approach to issuing these implicit operations, while providing a scheme that is more adaptive to the state of the system. The final paper will present the results of benchmarking this new approach, as well as our experiences implementing it. The experimentation for this project has been conducted using K42, an open-source experimental operating system, designed to allow simple replacement of components with a minimum of disruption to unrelated areas of the OS. The presentation will cover relevant parts of K42 that have helped to explore this new model of paging, and opportunities for these ideas to be transferred to Linux.
Jeremy Kerr works for the IBM Linux Technology Center in Canberra ('OzLabs'), as an Open Source Software developer. His interests lie in operating systems research, kernel design and networking. Jeremy has contributed to a range of Open Source projects, such as nfsim (the netfilter simulation environment), K42 (a research operating system), patchwork (a web-based patch-tracking system) and Linux. He has previously spoken at linux.conf.au, the Ottawa Linux Symposium and the Netfilter Developers' Workshop.Coauthor: Orran Y Kreiger not in Database
Coauthor: Dilma Da Silva not in Database