{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,27]],"date-time":"2026-02-27T03:45:17Z","timestamp":1772163917531,"version":"3.50.1"},"publisher-location":"New York, NY, USA","reference-count":42,"publisher":"ACM","license":[{"start":{"date-parts":[[2008,3,1]],"date-time":"2008-03-01T00:00:00Z","timestamp":1204329600000},"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":[[2008,3]]},"DOI":"10.1145\/1346281.1346303","type":"proceedings-article","created":{"date-parts":[[2008,3,12]],"date-time":"2008-03-12T18:35:48Z","timestamp":1205346948000},"page":"168-178","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":55,"title":["The design and implementation of microdrivers"],"prefix":"10.1145","author":[{"given":"Vinod","family":"Ganapathy","sequence":"first","affiliation":[{"name":"Rutgers University, Piscataway, NJ"}]},{"given":"Matthew J.","family":"Renzelmann","sequence":"additional","affiliation":[{"name":"University of Wisconsin-Madison, Madison, WI"}]},{"given":"Arini","family":"Balakrishnan","sequence":"additional","affiliation":[{"name":"Sun Microsystems, Santa Clara, CA"}]},{"given":"Michael M.","family":"Swift","sequence":"additional","affiliation":[{"name":"University of Wisconsin-Madison, Madison, WI"}]},{"given":"Somesh","family":"Jha","sequence":"additional","affiliation":[{"name":"University of Wisconsin-Madison, Madison, WI"}]}],"member":"320","published-online":{"date-parts":[[2008,3]]},"reference":[{"key":"e_1_3_2_2_1_1","volume-title":"Introduction to I\/O kit fundamentals","author":"Apple Inc.","year":"2006","unstructured":"Apple Inc. Introduction to I\/O kit fundamentals , 2006 . Apple Inc. Introduction to I\/O kit fundamentals, 2006."},{"key":"e_1_3_2_2_2_1","first-page":"1991","year":"1991","unstructured":"Francois Armand. Give a process to your drivers! In EurOpen Autumn 1991 , September 1991 . Francois Armand. Give a process to your drivers! In EurOpen Autumn 1991, September 1991.","journal-title":"EurOpen"},{"key":"e_1_3_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/503272.503274"},{"key":"e_1_3_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/77648.77650"},{"key":"e_1_3_2_2_5_1","volume-title":"USENIX Security","author":"Brumley D.","year":"2004","unstructured":"D. Brumley and D. Song . Privtrans: Automatically partitioning programs for privilege separation . In USENIX Security , 2004 . D. Brumley and D. Song. Privtrans: Automatically partitioning programs for privilege separation. In USENIX Security, 2004."},{"key":"e_1_3_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/1294261.1294265"},{"key":"e_1_3_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/502034.502042"},{"key":"e_1_3_2_2_8_1","unstructured":"P. Chubb. Get more device drivers out of the kernel! In Ottawa Linux Symp. 2004.  P. Chubb. Get more device drivers out of the kernel! In Ottawa Linux Symp. 2004."},{"key":"e_1_3_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/997163.997169"},{"key":"e_1_3_2_2_10_1","unstructured":"Information Networks Division. Netperf: A network performance benchmark. http:\/\/www.netperf.org.  Information Networks Division. Netperf: A network performance benchmark. http:\/\/www.netperf.org."},{"key":"e_1_3_2_2_11_1","volume-title":"A Linux framework for user-space devices","author":"Elson J.","year":"2004","unstructured":"J. Elson . FUSD : A Linux framework for user-space devices , 2004 . User manual for FUSD 1.0. J. Elson. FUSD: A Linux framework for user-space devices, 2004. User manual for FUSD 1.0."},{"key":"e_1_3_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.5555\/1251229.1251230"},{"key":"e_1_3_2_2_14_1","volume-title":"USENIX Symp. on Microkernels &amp; other kernel architectures","author":"Rozier M.","year":"1992","unstructured":"M. Rozier Overview of the Chorus distributed operating system . In USENIX Symp. on Microkernels &amp; other kernel architectures , 1992 . M. Rozier et al. Overview of the Chorus distributed operating system. In USENIX Symp. on Microkernels &amp; other kernel architectures, 1992."},{"key":"e_1_3_2_2_15_1","volume-title":"Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure","author":"Fraser K.","year":"2004","unstructured":"K. Fraser , S. Hand , R. Neugebauer , I. Pratt , A. Warfield , and M. Williamson . Safe hardware access with the Xen virtual machine monitor . In Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure , 2004 . K. Fraser, S. Hand, R. Neugebauer, I. Pratt, A. Warfield, and M. Williamson. Safe hardware access with the Xen virtual machine monitor. In Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure, 2004."},{"key":"e_1_3_2_2_16_1","volume-title":"HotOS","author":"Ganapathy V.","year":"2007","unstructured":"V. Ganapathy , A. Balakrishnan , M. M. Swift , and S. Jha . Microdrivers: A new architecture for device drivers . In HotOS , 2007 . V. Ganapathy, A. Balakrishnan, M. M. Swift, and S. Jha. Microdrivers: A new architecture for device drivers. In HotOS, 2007."},{"key":"e_1_3_2_2_17_1","volume-title":"OSDI","author":"Hunt G. C.","year":"1999","unstructured":"G. C. Hunt and M. L. Scott . The Coign automatic distributed partitioning system . In OSDI , 1999 . G. C. Hunt and M. L. Scott. The Coign automatic distributed partitioning system. In OSDI, 1999."},{"key":"e_1_3_2_2_18_1","volume-title":"Windriver cross platform device driver development environment. Technical report","year":"2002","unstructured":"Jungo. Windriver cross platform device driver development environment. Technical report , Jungo Corporation , February 2002 . http:\/\/www.jungo.com\/windriver.html. Jungo. Windriver cross platform device driver development environment. Technical report, Jungo Corporation, February 2002. http:\/\/www.jungo.com\/windriver.html."},{"key":"e_1_3_2_2_19_1","volume-title":"USENIX Mach III Symp.","author":"Lepreau J.","year":"1993","unstructured":"J. Lepreau , M. Hibler , B. Ford , J. Law , and D. B. Orr . In-kernel servers on Mach 3.0: Implementation and performance . In USENIX Mach III Symp. , 1993 . J. Lepreau, M. Hibler, B. Ford, J. Law, and D. B. Orr. In-kernel servers on Mach 3.0: Implementation and performance. In USENIX Mach III Symp., 1993."},{"key":"e_1_3_2_2_20_1","volume-title":"User-level device drivers: Achieved performance. Jour. Comp. Sci. and Tech., 20(5)","author":"Leslie B.","year":"2005","unstructured":"B. Leslie , P. Chubb , N. Fitzroy-Dale , S. Gotz , C. Gray , L. Macpherson , D. Potts , Y. Shen , K. Elphinstone , and G. Heiser . User-level device drivers: Achieved performance. Jour. Comp. Sci. and Tech., 20(5) , 2005 . B. Leslie, P. Chubb, N. Fitzroy-Dale, S. Gotz, C. Gray, L. Macpherson, D. Potts, Y. Shen, K. Elphinstone, and G. Heiser. User-level device drivers: Achieved performance. Jour. Comp. Sci. and Tech., 20(5), 2005."},{"key":"e_1_3_2_2_21_1","volume-title":"OSDI","author":"LeVasseur J.","year":"2004","unstructured":"J. LeVasseur , V. Uhlig , J. Stoess , and S. Gotz . Unmodified device driver reuse and improved system dependability via virtual machines . In OSDI , 2004 . J. LeVasseur, V. Uhlig, J. Stoess, and S. Gotz. Unmodified device driver reuse and improved system dependability via virtual machines. In OSDI, 2004."},{"key":"e_1_3_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/224056.224075"},{"key":"e_1_3_2_2_23_1","volume-title":"A specific domain language for network interface cards","author":"Manolitzas A.","year":"2001","unstructured":"A. Manolitzas . A specific domain language for network interface cards , 2001 . A. Manolitzas. A specific domain language for network interface cards, 2001."},{"key":"e_1_3_2_2_24_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_2_25_1","volume-title":"May","year":"2006","unstructured":"Microsoft. Architecture of the user-mode driver framework , May 2006 . Version 0.7. Microsoft. Architecture of the user-mode driver framework, May 2006. Version 0.7."},{"key":"e_1_3_2_2_26_1","unstructured":"Microsoft Corp. Wdm: Introduction to windows driver model. http:\/\/www.microsoft.com\/whdc\/archive\/wdm.mspx.  Microsoft Corp. Wdm: Introduction to windows driver model. http:\/\/www.microsoft.com\/whdc\/archive\/wdm.mspx."},{"key":"e_1_3_2_2_27_1","unstructured":"Microsoft Corporation. Windows XP embedded with service pack 1 reliability. http:\/\/msdn2.microsoft.com\/enus\/library\/ms838661.aspx January 2003.  Microsoft Corporation. Windows XP embedded with service pack 1 reliability. http:\/\/msdn2.microsoft.com\/enus\/library\/ms838661.aspx January 2003."},{"key":"e_1_3_2_2_28_1","unstructured":"Microsoft Inc. Microsoft interface definition language.  Microsoft Inc. Microsoft interface definition language."},{"key":"e_1_3_2_2_29_1","doi-asserted-by":"publisher","DOI":"10.5555\/647478.727796"},{"key":"e_1_3_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1250734.1250746"},{"key":"e_1_3_2_2_31_1","volume-title":"HotOS","author":"Purohit A.","year":"2003","unstructured":"A. Purohit , C. P. Wright , J. Spadavecchia , and E. Zadok . Cosy: Develop in user-land, run in kernel-mode . In HotOS , 2003 . A. Purohit, C. P. Wright, J. Spadavecchia, and E. Zadok. Cosy: Develop in user-land, run in kernel-mode. In HotOS, 2003."},{"key":"e_1_3_2_2_32_1","volume-title":"Inside Windows","author":"Russionvich M. E.","year":"2000","unstructured":"M. E. Russionvich and D. A. Solomon . Inside Windows 2000 . Microsoft Press , Redmond, Washington , 2000. M. E. Russionvich and D. A. Solomon. Inside Windows 2000. Microsoft Press, Redmond, Washington, 2000."},{"key":"e_1_3_2_2_33_1","volume-title":"Inside Windows NT","author":"Solomon A.","year":"1998","unstructured":"David A. Solomon . Inside Windows NT . Microsoft Press , 1998 . David A. Solomon. Inside Windows NT. Microsoft Press, 1998."},{"key":"e_1_3_2_2_34_1","unstructured":"Sun Microsystems. Java idl. http:\/\/java.sun.com\/products\/jdk\/idl.  Sun Microsystems. Java idl. http:\/\/java.sun.com\/products\/jdk\/idl."},{"key":"e_1_3_2_2_35_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_2_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/1047915.1047919"},{"key":"e_1_3_2_2_37_1","volume-title":"July","author":"Torvalds L.","year":"2007","unstructured":"L. Torvalds . UIO: Linux patch for user-mode I\/O , July 2007 . L. Torvalds. UIO: Linux patch for user-mode I\/O, July 2007."},{"key":"e_1_3_2_2_38_1","volume-title":"Dept. of Computer Science","author":"Van Maren K. T.","year":"1999","unstructured":"K. T. Van Maren . The Fluke device driver framework. Master's thesis , Dept. of Computer Science , Univ. of Utah , December 1999 . K. T. Van Maren. The Fluke device driver framework. Master's thesis, Dept. of Computer Science, Univ. of Utah, December 1999."},{"key":"e_1_3_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/224056.224061"},{"key":"e_1_3_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1095810.1095814"},{"key":"e_1_3_2_2_41_1","volume-title":"Summer USENIX Conference","author":"Young M.","year":"1986","unstructured":"M. Young , M. Accetta , R. Baron , W. Bolosky , D. Golub , R. Rashid , and A. Tevanian . Mach: A new kernel foundation for UNIX development . In Summer USENIX Conference , 1986 . M. Young, M. Accetta, R. Baron, W. Bolosky, D. Golub, R. Rashid, and A. Tevanian. Mach: A new kernel foundation for UNIX development. In Summer USENIX Conference, 1986."},{"key":"e_1_3_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/566340.566343"},{"key":"e_1_3_2_2_43_1","volume-title":"OSDI","author":"Zhou F.","year":"2006","unstructured":"F. Zhou , J. Condit , Z. Anderson , I. Bagrak , R. Ennals , M. Harren , G. Necula , and E. Brewer . SafeDrive: Safe and recoverable extensions using language-based techniques . In OSDI , 2006 . F. Zhou, J. Condit, Z. Anderson, I. Bagrak, R. Ennals, M. Harren, G. Necula, and E. Brewer. SafeDrive: Safe and recoverable extensions using language-based techniques. In OSDI, 2006."}],"event":{"name":"ASPLOS08: Architectural Support for Programming Languages and Operating Systems","location":"Seattle WA USA","acronym":"ASPLOS08","sponsor":["SIGPLAN ACM Special Interest Group on Programming Languages","SIGOPS ACM Special Interest Group on Operating Systems","ACM Association for Computing Machinery","SIGARCH ACM Special Interest Group on Computer Architecture"]},"container-title":["Proceedings of the 13th international conference on Architectural support for programming languages and operating systems"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1346281.1346303","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1346281.1346303","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T09:38:57Z","timestamp":1750239537000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1346281.1346303"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2008,3]]},"references-count":42,"alternative-id":["10.1145\/1346281.1346303","10.1145\/1346281"],"URL":"https:\/\/doi.org\/10.1145\/1346281.1346303","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/1353534.1346303","asserted-by":"object"},{"id-type":"doi","id":"10.1145\/1353535.1346303","asserted-by":"object"},{"id-type":"doi","id":"10.1145\/1353536.1346303","asserted-by":"object"}]},"subject":[],"published":{"date-parts":[[2008,3]]},"assertion":[{"value":"2008-03-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}