{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,17]],"date-time":"2026-03-17T18:35:24Z","timestamp":1773772524512,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":46,"publisher":"ACM","license":[{"start":{"date-parts":[[2012,3,3]],"date-time":"2012-03-03T00:00:00Z","timestamp":1330732800000},"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":[],"published-print":{"date-parts":[[2012,3,3]]},"DOI":"10.1145\/2150976.2150987","type":"proceedings-article","created":{"date-parts":[[2012,3,6]],"date-time":"2012-03-06T08:18:26Z","timestamp":1331021906000},"page":"87-98","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":40,"title":["Understanding modern device drivers"],"prefix":"10.1145","author":[{"given":"Asim","family":"Kadav","sequence":"first","affiliation":[{"name":"University of Wisconsin-Madison, Madison, WI, USA"}]},{"given":"Michael M.","family":"Swift","sequence":"additional","affiliation":[{"name":"University of Wisconsin-Madison, Madison, WI, WI, USA"}]}],"member":"320","published-online":{"date-parts":[[2012,3,3]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/2043556.2043574"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1218063.1217943"},{"key":"e_1_3_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/34.993558"},{"key":"e_1_3_2_1_4_1","volume-title":"USENIX ATC","author":"Boyd-Wickizer S.","year":"2010","unstructured":"S. Boyd-Wickizer and N. Zeldovich . Tolerating malicious device drivers in linux . In USENIX ATC , 2010 . S. Boyd-Wickizer and N. Zeldovich. Tolerating malicious device drivers in linux. In USENIX ATC, 2010."},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629581"},{"key":"e_1_3_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/1755913.1755932"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/319344.319161"},{"key":"e_1_3_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/502034.502042"},{"key":"e_1_3_2_1_9_1","volume-title":"OSDI","author":"David F. M.","year":"2008","unstructured":"F. M. David : Improving reliability through operating system structure . In OSDI , 2008 . F. M. David et al. CuriOS: Improving reliability through operating system structure. In OSDI, 2008."},{"key":"e_1_3_2_1_10_1","unstructured":"Digi International. AnywhereUSB. http:\/\/www.digi.com\/products\/usb\/anywhereusb.jsp.  Digi International. AnywhereUSB. http:\/\/www.digi.com\/products\/usb\/anywhereusb.jsp."},{"key":"e_1_3_2_1_11_1","volume-title":"Statistical shape analysis","author":"Dryden I.","year":"1998","unstructured":"I. Dryden and K. Mardia . Statistical shape analysis , volume 4 . Wiley New York , 1998 . I. Dryden and K. Mardia. Statistical shape analysis, volume 4. Wiley New York, 1998."},{"key":"e_1_3_2_1_12_1","volume-title":"OASIS Workhop","author":"Fraser K.","year":"2004","unstructured":"K. Fraser Safe hardware access with the Xen virtual machine monitor . In OASIS Workhop , 2004 . K. Fraser et al. Safe hardware access with the Xen virtual machine monitor. In OASIS Workhop, 2004."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1869459.1869475"},{"key":"e_1_3_2_1_14_1","volume-title":"LISA","author":"Ganapathi A.","year":"2006","unstructured":"A. Ganapathi , V. Ganapathi , and D. A. Patterson . Windows xp kernel crash analysis . In LISA , 2006 . A. Ganapathi, V. Ganapathi, and D. A. Patterson. Windows xp kernel crash analysis. In LISA, 2006."},{"key":"e_1_3_2_1_15_1","volume-title":"HOTOS11","author":"Ganapathy V.","year":"2007","unstructured":"V. Ganapathy , A. Balakrishnan , M. M. Swift , and S. Jha . Microdrivers: A new architecture for device drivers . In HOTOS11 , 2007 . V. Ganapathy, A. Balakrishnan, M. M. Swift, and S. Jha. Microdrivers: A new architecture for device drivers. In HOTOS11, 2007."},{"key":"e_1_3_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1353534.1346303"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2043106.2043111"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629582"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/1618525.1618536"},{"key":"e_1_3_2_1_20_1","volume-title":"USENIX ATC","author":"Kuznetsov V.","year":"2010","unstructured":"V. Kuznetsov , V. Chipounov , and G. Candea . Testing closed-source binary device drivers with DDT . In USENIX ATC , 2010 . V. Kuznetsov, V. Chipounov, and G. Candea. Testing closed-source binary device drivers with DDT. In USENIX ATC, 2010."},{"key":"e_1_3_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11390-005-0654-4"},{"key":"e_1_3_2_1_22_1","volume-title":"OSDI","author":"Li Z.","year":"2004","unstructured":"Z. Li , S. Lu , S. Myagmar , and Y. Zhou . CP-Miner: A tool for finding copy-paste and related bugs in operating system code . In OSDI , 2004 . Z. Li, S. Lu, S. Myagmar, and Y. Zhou. CP-Miner: A tool for finding copy-paste and related bugs in operating system code. In OSDI, 2004."},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2043556.2043568"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1508284.1508279"},{"key":"e_1_3_2_1_25_1","volume-title":"OSDI","author":"M\u00e9rillon F.","year":"2000","unstructured":"F. M\u00e9rillon , L. R\u00e9veill\u00e8re , C. Consel , R. Marlet , and G. Muller . Devil: An IDL for hardware programming . In OSDI , 2000 . F. M\u00e9rillon, L. R\u00e9veill\u00e8re, C. Consel, R. Marlet, and G. Muller. Devil: An IDL for hardware programming. In OSDI, 2000."},{"key":"e_1_3_2_1_26_1","unstructured":"Microsoft Corp. Web services on devices. http:\/\/msdn.microsoft.com\/en-us\/library\/ aa826001%28v=vs.85%29.aspx.  Microsoft Corp. Web services on devices. http:\/\/msdn.microsoft.com\/en-us\/library\/ aa826001%28v=vs.85%29.aspx."},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.5555\/647478.727796"},{"key":"e_1_3_2_1_28_1","volume-title":"An introduction to driver quality. Microsoft WinHec Presentation DDT301","author":"Orgovan V.","year":"2003","unstructured":"V. Orgovan and M. Tricker . An introduction to driver quality. Microsoft WinHec Presentation DDT301 , 2003 . V. Orgovan and M. Tricker. An introduction to driver quality. Microsoft WinHec Presentation DDT301, 2003."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/1357010.1352618"},{"key":"e_1_3_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1508293.1508303"},{"key":"e_1_3_2_1_31_1","volume-title":"USENIX ATC","author":"Renzelmann M. J.","year":"2009","unstructured":"M. J. Renzelmann and M. M. Swift . Decaf: Moving device drivers to a modern language . In USENIX ATC , June 2009 . M. J. Renzelmann and M. M. Swift. Decaf: Moving device drivers to a modern language. In USENIX ATC, June 2009."},{"key":"e_1_3_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/1519065.1519095"},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629583"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1851276.1851283"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1950365.1950382"},{"key":"e_1_3_2_1_36_1","volume-title":"Operating System Concepts","author":"Silberschatz A.","year":"2009","unstructured":"A. Silberschatz , P. B. Galvin , and G. Gagne . Operating System Concepts . John Wiley and Sons , eighth edition, 2009 . A. Silberschatz, P. B. Galvin, and G. Gagne. Operating System Concepts. John Wiley and Sons, eighth edition, 2009."},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/1218063.1217941"},{"key":"e_1_3_2_1_38_1","volume-title":"OSDI","author":"Swift M. M.","year":"2004","unstructured":"M. M. Swift , M. Annamalai , B. N. Bershad , and H. M. Levy . Recovering device drivers . In OSDI , 2004 . M. M. Swift, M. Annamalai, B. N. Bershad, and H. M. Levy. Recovering device drivers. In OSDI, 2004."},{"key":"e_1_3_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/1047915.1047919"},{"key":"e_1_3_2_1_40_1","volume-title":"OSDI","year":"2006","unstructured":"\u00dalfar Erlingsson et al. Xfi: software guards for system address spaces . In OSDI , 2006 . \u00dalfar Erlingsson et al. Xfi: software guards for system address spaces. In OSDI, 2006."},{"key":"e_1_3_2_1_41_1","unstructured":"USB Implementors Forum. Universal serial bus mass storage class specification overview. http:\/\/www.usb.org\/developers\/devclass_docs\/usb_msc_overview_1.2.pdf 2003.  USB Implementors Forum. Universal serial bus mass storage class specification overview. http:\/\/www.usb.org\/developers\/devclass_docs\/usb_msc_overview_1.2.pdf 2003."},{"key":"e_1_3_2_1_42_1","unstructured":"USB Implementors Forum. Universal serial bus 3.0 specification. http:\/\/www.usb.org\/developers\/docs\/usb_30_spec_071311.zip 2011.  USB Implementors Forum. Universal serial bus 3.0 specification. http:\/\/www.usb.org\/developers\/docs\/usb_30_spec_071311.zip 2011."},{"key":"e_1_3_2_1_43_1","unstructured":"D. A. Wheeler. Sloccount. http:\/\/www.dwheeler.com\/sloccount\/.  D. A. Wheeler. Sloccount. http:\/\/www.dwheeler.com\/sloccount\/."},{"key":"e_1_3_2_1_44_1","volume-title":"OSDI","author":"Williams D.","year":"2008","unstructured":"D. Williams , P. Reynolds , K. Walsh , E. G. Sirer , and F. B. Schneider . Device driver safety through a reference validation mechanism . In OSDI , 2008 . D. Williams, P. Reynolds, K. Walsh, E. G. Sirer, and F. B. Schneider. Device driver safety through a reference validation mechanism. In OSDI, 2008."},{"key":"e_1_3_2_1_46_1","unstructured":"Xen.org. Writing xen drivers: Using xenbus and xenstore. http:\/\/wiki.xensource.com\/xenwiki\/XenBus 2006.  Xen.org. Writing xen drivers: Using xenbus and xenstore. http:\/\/wiki.xensource.com\/xenwiki\/XenBus 2006."},{"key":"e_1_3_2_1_47_1","volume-title":"OSDI","author":"Zhou F.","year":"2006","unstructured":"F. Zhou : Safe and recoverable extensions using language-based techniques . In OSDI , 2006 . F. Zhou et al. SafeDrive: Safe and recoverable extensions using language-based techniques. In OSDI, 2006."}],"event":{"name":"ASPLOS'12: Seventeenth International Conference on Architectural Support for Programming Languages and Operating Systems","location":"London England, UK","acronym":"ASPLOS'12","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGOPS ACM Special Interest Group on Operating Systems","SIGARCH ACM Special Interest Group on Computer Architecture"]},"container-title":["Proceedings of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2150976.2150987","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2150976.2150987","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T05:54:44Z","timestamp":1750226084000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2150976.2150987"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,3,3]]},"references-count":46,"alternative-id":["10.1145\/2150976.2150987","10.1145\/2150976"],"URL":"https:\/\/doi.org\/10.1145\/2150976.2150987","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/2248487.2150987","asserted-by":"object"},{"id-type":"doi","id":"10.1145\/2189750.2150987","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2012,3,3]]},"assertion":[{"value":"2012-03-03","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}