{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:32:20Z","timestamp":1750307540770,"version":"3.41.0"},"reference-count":22,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2009,7,31]],"date-time":"2009-07-31T00:00:00Z","timestamp":1248998400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGOPS Oper. Syst. Rev."],"published-print":{"date-parts":[[2009,7,31]]},"abstract":"<jats:p>A commodity I\/O device has no support for virtualization. A VMM can assign such a device to a single guest with direct, fast, but insecure access by the guest's native device driver. Alternatively, the VMMcan build virtual devices on top of the physical device, allowing it to be multiplexed across VMs, but with lower performance. We propose a technique that provides an intermediate option. In virtual passthrough I\/O (VPIO), the guest interacts directly with the physical device most of the time, achieving high performance, as in passthrough I\/O. Additionally, the guest\/device interactions drive a model that in turn identifies (1) when the physical device can be handed off to another VM, and (2) if the guest programs the device to behave illegitimately. In this paper, we describe the VPIO model, and present preliminary results in using it to support two commodity network cards within the Palacios VMM we are building. We believe that an appropriate model for an I\/O device could be produced by the hardware vendor as part of the design, implementation, and testing process.<\/jats:p>","DOI":"10.1145\/1618525.1618535","type":"journal-article","created":{"date-parts":[[2009,9,22]],"date-time":"2009-09-22T14:09:47Z","timestamp":1253628587000},"page":"83-94","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":27,"title":["Investigating virtual passthrough I\/O on commodity devices"],"prefix":"10.1145","volume":"43","author":[{"given":"Lei","family":"Xia","sequence":"first","affiliation":[{"name":"Northwestern University"}]},{"given":"Jack","family":"Lange","sequence":"additional","affiliation":[{"name":"Northwestern University"}]},{"given":"Peter","family":"Dinda","sequence":"additional","affiliation":[{"name":"Northwestern University"}]},{"given":"Chang","family":"Bae","sequence":"additional","affiliation":[{"name":"Northwestern University"}]}],"member":"320","published-online":{"date-parts":[[2009,7,31]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"http:\/\/sourceforge.net\/projects\/iperf.  http:\/\/sourceforge.net\/projects\/iperf."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1168857.1168860"},{"key":"e_1_2_1_3_1","unstructured":"AMD CORPORATION.AMD64 virtualization codenamed \"pacific\" technology: Secure virtual machine architecture reference manual May 2005.  AMD CORPORATION.AMD64 virtualization codenamed \"pacific\" technology: Secure virtual machine architecture reference manual May 2005."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/945445.945462"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1254810.1254830"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.5555\/1413370.1413390"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/971300.971411"},{"key":"e_1_2_1_8_1","unstructured":"INTEL CORPORATION. Intel virtualization technology specification for the ia-32 intel architecture April 2005.  INTEL CORPORATION. Intel virtualization technology specification for the ia-32 intel architecture April 2005."},{"volume-title":"L. Cray CNL. In FastOS PI Meeting and Workshop (June","year":"2007","author":"KAPLAN","key":"e_1_2_1_9_1"},{"volume-title":"Catamount. In Proceedings of the 2005 Cray Users' Group Annual Technical Conference (May","year":"2005","author":"KELLY S.","key":"e_1_2_1_10_1"},{"key":"e_1_2_1_12_1","unstructured":"LAWTON K. Bochs: The open source ia-32 emulation project. http:\/\/bochs.sourceforge.net.  LAWTON K. Bochs: The open source ia-32 emulation project. http:\/\/bochs.sourceforge.net."},{"volume-title":"Proceedings of the Symposium on Operating Systems Design and Implementation","year":"2004","author":"LEVASSEUR J.","key":"e_1_2_1_13_1"},{"volume-title":"Proceedings of the USENIX Annual Technical Conference (May","year":"2006","author":"LIU J.","key":"e_1_2_1_14_1"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065034"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1272366.1272390"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.v21:6"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.2007.346208"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1375527.1375554"},{"volume-title":"Proceedings of the USENIX Annual Technical Conference (June","year":"2001","author":"SUGERMAN J.","key":"e_1_2_1_20_1"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2005.163"},{"volume-title":"Proceedings of the 8th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2008)","year":"2008","author":"WILLIAMS D.","key":"e_1_2_1_22_1"},{"volume-title":"Proceedings of the Workshop on I\/O Virtualization at OSDI (December","year":"2008","author":"XIA L.","key":"e_1_2_1_23_1"}],"container-title":["ACM SIGOPS Operating Systems Review"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1618525.1618535","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1618525.1618535","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T12:23:23Z","timestamp":1750249403000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1618525.1618535"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2009,7,31]]},"references-count":22,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2009,7,31]]}},"alternative-id":["10.1145\/1618525.1618535"],"URL":"https:\/\/doi.org\/10.1145\/1618525.1618535","relation":{},"ISSN":["0163-5980"],"issn-type":[{"type":"print","value":"0163-5980"}],"subject":[],"published":{"date-parts":[[2009,7,31]]},"assertion":[{"value":"2009-07-31","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}