{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,1]],"date-time":"2026-04-01T14:21:02Z","timestamp":1775053262348,"version":"3.50.1"},"reference-count":67,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2005,2,2]],"date-time":"2005-02-02T00:00:00Z","timestamp":1107302400000},"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":["ACM Trans. Comput. Syst."],"published-print":{"date-parts":[[2005,2,2]]},"abstract":"<jats:p>\n            Despite decades of research in extensible operating system technology, extensions such as device drivers remain a significant cause of system failures. In Windows XP, for example, drivers account for 85% of recently reported failures.This article describes Nooks, a\n            <jats:italic>reliability subsystem<\/jats:italic>\n            that seeks to greatly enhance operating system (OS) reliability by isolating the OS from driver failures. The Nooks approach is practical: rather than guaranteeing complete fault tolerance through a new (and incompatible) OS or driver architecture, our goal is to prevent the\n            <jats:italic>vast majority<\/jats:italic>\n            of driver-caused crashes with\n            <jats:italic>little or no change<\/jats:italic>\n            to the existing driver and system code. Nooks isolates drivers within lightweight protection domains inside the kernel address space, where hardware and software prevent them from corrupting the kernel. Nooks also tracks a driver's use of kernel resources to facilitate automatic cleanup during recovery.To prove the viability of our approach, we implemented Nooks in the Linux operating system and used it to fault-isolate several device drivers. Our results show that Nooks offers a substantial increase in the reliability of operating systems, catching and quickly recovering from many faults that would otherwise crash the system. Under a wide range and number of fault conditions, we show that Nooks recovers automatically from 99% of the faults that otherwise cause Linux to crash.While Nooks was designed for drivers, our techniques generalize to other kernel extensions. We demonstrate this by isolating a kernel-mode file system and an in-kernel Internet service. Overall, because Nooks supports existing C-language extensions, runs on a commodity operating system and hardware, and enables automated recovery, it represents a substantial step beyond the specialized architectures and type-safe languages required by previous efforts directed at safe extensibility.\n          <\/jats:p>","DOI":"10.1145\/1047915.1047919","type":"journal-article","created":{"date-parts":[[2005,8,3]],"date-time":"2005-08-03T08:30:55Z","timestamp":1123057855000},"page":"77-110","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":116,"title":["Improving the reliability of commodity operating systems"],"prefix":"10.1145","volume":"23","author":[{"given":"Michael M.","family":"Swift","sequence":"first","affiliation":[{"name":"University of Washington, Seattle, WA"}]},{"given":"Brian N.","family":"Bershad","sequence":"additional","affiliation":[{"name":"University of Washington, Seattle, WA"}]},{"given":"Henry M.","family":"Levy","sequence":"additional","affiliation":[{"name":"University of Washington, Seattle, WA"}]}],"member":"320","published-online":{"date-parts":[[2005,2,2]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"Apache Project. 2000. Apache HTTP server version 2.0. Available online at http:\/\/httpd.apache.org.  Apache Project. 2000. Apache HTTP server version 2.0. Available online at http:\/\/httpd.apache.org."},{"key":"e_1_2_1_2_1","volume-title":"SPIN 2001, Workshop on Model Checking of Software. Lecturer Notes in Computer Science","volume":"2057","author":"Ball T.","unstructured":"Ball , T. and Rajamani , S. K . 2001. Automatically validating temporal safety properties of interfaces . In SPIN 2001, Workshop on Model Checking of Software. Lecturer Notes in Computer Science , vol. 2057 . Springer-Verlag, Berlin, Germany, 103--122. Ball, T. and Rajamani, S. K. 2001. Automatically validating temporal safety properties of interfaces. In SPIN 2001, Workshop on Model Checking of Software. Lecturer Notes in Computer Science, vol. 2057. Springer-Verlag, Berlin, Germany, 103--122."},{"key":"e_1_2_1_3_1","volume-title":"Proceedings of Workshop on Micro-Kernels and Other Kernel Architectures","author":"Bershad B. N.","year":"1992","unstructured":"Bershad , B. N. 1992 . The increasing irrelevance of IPC performance for microkernel-based operating systems . In Proceedings of Workshop on Micro-Kernels and Other Kernel Architectures ( Seattle, WA). 205--211. Bershad, B. N. 1992. The increasing irrelevance of IPC performance for microkernel-based operating systems. In Proceedings of Workshop on Micro-Kernels and Other Kernel Architectures (Seattle, WA). 205--211."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/77648.77650"},{"key":"e_1_2_1_5_1","volume-title":"Proceedings of the 15th ACM Symposium on Operating Systems Principles","author":"Bershad B. N.","unstructured":"Bershad , B. N. , Savage , S. , Pardyak , P. , Sirer , E. G. , Fiuczynski , M. E. , Becker , D. , Chambers , C. , and Eggers , S . 1995. Extensibility, safety and performance in the SPIN operating system . In Proceedings of the 15th ACM Symposium on Operating Systems Principles ( Copper Mountain, CO). 267--284. 10.1145\/224056.224077 Bershad, B. N., Savage, S., Pardyak, P., Sirer, E. G., Fiuczynski, M. E., Becker, D., Chambers, C., and Eggers, S. 1995. Extensibility, safety and performance in the SPIN operating system. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain, CO). 267--284. 10.1145\/224056.224077"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/2080.357392"},{"key":"e_1_2_1_7_1","unstructured":"Bovet D. P. and Cesati M. 2001. Understanding the Linux Kernel. O'Reilly Sebastopal CA.   Bovet D. P. and Cesati M. 2001. Understanding the Linux Kernel. O'Reilly Sebastopal CA."},{"key":"e_1_2_1_8_1","volume-title":"Proceedings of the Eighth IEEE HOTOS. 125--132","author":"Candea G.","unstructured":"Candea , G. and Fox , A . 2001. Recursive restartability: Turning the reboot sledgehammer into a scalpel . In Proceedings of the Eighth IEEE HOTOS. 125--132 . Candea, G. and Fox, A. 2001. Recursive restartability: Turning the reboot sledgehammer into a scalpel. In Proceedings of the Eighth IEEE HOTOS. 125--132."},{"key":"e_1_2_1_9_1","volume-title":"Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 12--25","author":"Chapin J.","unstructured":"Chapin , J. , Rosenblum , M. , Devine , S. , Lahiri , T. , Teodosiu , D. , and Gupta , A . 1995. Hive: Fault containment for shared-memory multiprocessors . In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 12--25 . 10.1145\/224056.224059 Chapin, J., Rosenblum, M., Devine, S., Lahiri, T., Teodosiu, D., and Gupta, A. 1995. Hive: Fault containment for shared-memory multiprocessors. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 12--25. 10.1145\/224056.224059"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/195792.195795"},{"key":"e_1_2_1_11_1","volume-title":"Proceedings of the Eighth IEEE HOTOS. 133--138","author":"Chen P.","unstructured":"Chen , P. and Noble , B . 2001. When virtual is better than real . In Proceedings of the Eighth IEEE HOTOS. 133--138 . Chen, P. and Noble, B. 2001. When virtual is better than real. In Proceedings of the Eighth IEEE HOTOS. 133--138."},{"key":"e_1_2_1_12_1","volume-title":"Proceedings of the 18th ACM Symposium on Operating Systems Principles (Lake Louise, Alta., Canada). 73--88","author":"Chou A.","year":"2034","unstructured":"Chou , A. , Yang , J. , Chelf , B. , Hallem , S. , and Engler , D . 2001. An empirical study of operating system errors . In Proceedings of the 18th ACM Symposium on Operating Systems Principles (Lake Louise, Alta., Canada). 73--88 . 10.1145\/50 2034 .502042 Chou, A., Yang, J., Chelf, B., Hallem, S., and Engler, D. 2001. An empirical study of operating system errors. In Proceedings of the 18th ACM Symposium on Operating Systems Principles (Lake Louise, Alta., Canada). 73--88. 10.1145\/502034.502042"},{"key":"e_1_2_1_13_1","volume-title":"Proceedings of the 1996 IEEE Symposium on Fault---Tolerant Computing (FTCS","author":"Christmansson J.","unstructured":"Christmansson , J. and Chillarege , R . 1996. Generation of an error set that emulates software faults---based on field data . In Proceedings of the 1996 IEEE Symposium on Fault---Tolerant Computing (FTCS , Sendai, Japan). 304--313. Christmansson, J. and Chillarege, R. 1996. Generation of an error set that emulates software faults---based on field data. In Proceedings of the 1996 IEEE Symposium on Fault---Tolerant Computing (FTCS, Sendai, Japan). 304--313."},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the ACM SIGPLAN '03 ACM Conference on Programming Language Design and Implementation","author":"Condit J.","unstructured":"Condit , J. , Harren , M. , McPeak , S. , Necula , G. C. , and Weimer , W . 2003. CCured in the real world . In Proceedings of the ACM SIGPLAN '03 ACM Conference on Programming Language Design and Implementation ( San Diego, CA). 232--244. 10.1145\/781131.781157 Condit, J., Harren, M., McPeak, S., Necula, G. C., and Weimer, W. 2003. CCured in the real world. In Proceedings of the ACM SIGPLAN '03 ACM Conference on Programming Language Design and Implementation (San Diego, CA). 232--244. 10.1145\/781131.781157"},{"key":"e_1_2_1_15_1","volume-title":"Inside Windows NT","author":"Custer H.","unstructured":"Custer , H. 1993. Inside Windows NT . Microsoft Press , Redmond, WA . Custer, H. 1993. Inside Windows NT. Microsoft Press, Redmond, WA."},{"key":"e_1_2_1_16_1","volume-title":"Proceedings of the ACM SIGPLAN '01 ACM Conference on Programming Language Design and Implementation","author":"DeLine R.","unstructured":"DeLine , R. and F\u00e4hndrich , M . 2001. Enforcing high-level protocols in low-level software . In Proceedings of the ACM SIGPLAN '01 ACM Conference on Programming Language Design and Implementation ( Snowbird, UT). 59--69. 10.1145\/378795.378811 DeLine, R. and F\u00e4hndrich, M. 2001. Enforcing high-level protocols in low-level software. In Proceedings of the ACM SIGPLAN '01 ACM Conference on Programming Language Design and Implementation (Snowbird, UT). 59--69. 10.1145\/378795.378811"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/356678.356680"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/365230.365252"},{"key":"e_1_2_1_19_1","volume-title":"Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation","author":"Engler D.","unstructured":"Engler , D. , Chelf , B. , Chou , A. , and Hallem , S . 2000. Checking system rules using system-specific, programmer-written compiler extensions . In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation ( San Diego, CA). 1--16. Engler, D., Chelf, B., Chou, A., and Hallem, S. 2000. Checking system rules using system-specific, programmer-written compiler extensions. In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation (San Diego, CA). 1--16."},{"key":"e_1_2_1_20_1","volume-title":"Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 251--266","author":"Engler D. R.","year":"1995","unstructured":"Engler , D. R. , Kaashoek , M. F. , and Jr ., J. O. 1995 . Exokernel: An operating system architecture for application-level resource management . In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 251--266 . 10.1145\/224056.224076 Engler, D. R., Kaashoek, M. F., and Jr., J. O. 1995. Exokernel: An operating system architecture for application-level resource management. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 251--266. 10.1145\/224056.224076"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1109\/PRDC.2000.897288"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/361011.361070"},{"key":"e_1_2_1_23_1","volume-title":"Proceedings of the 2003 International Conference on Dependable Systems and Networks (DSN'03","author":"Fetzer C.","unstructured":"Fetzer , C. and Xiao , Z . 2003. HEALERS: A toolkit for enhancing the robustness and security of existing applications . In Proceedings of the 2003 International Conference on Dependable Systems and Networks (DSN'03 , San Francisco, CA). 317--322. Fetzer, C. and Xiao, Z. 2003. HEALERS: A toolkit for enhancing the robustness and security of existing applications. In Proceedings of the 2003 International Conference on Dependable Systems and Networks (DSN'03, San Francisco, CA). 317--322."},{"key":"e_1_2_1_24_1","volume-title":"Proceedings of the 16th ACM Symposium on Operating Systems Principles. 38--51","author":"Ford B.","unstructured":"Ford , B. , Back , G. , Benson , G. , Lepreau , J. , Lin , A. , and Shivers , O . 1997. The Flux OSKit: A substrate for OS language and research . In Proceedings of the 16th ACM Symposium on Operating Systems Principles. 38--51 . 10.1145\/268998.266642 Ford, B., Back, G., Benson, G., Lepreau, J., Lin, A., and Shivers, O. 1997. The Flux OSKit: A substrate for OS language and research. In Proceedings of the 16th ACM Symposium on Operating Systems Principles. 38--51. 10.1145\/268998.266642"},{"key":"e_1_2_1_25_1","volume-title":"Proceedings of the Usenix Mach Symposium. 163--176","author":"Forin A.","unstructured":"Forin , A. , Golub , D. , and Bershad , B . 1991. An I\/O system for Mach . In Proceedings of the Usenix Mach Symposium. 163--176 . Forin, A., Golub, D., and Bershad, B. 1991. An I\/O system for Mach. In Proceedings of the Usenix Mach Symposium. 163--176."},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380201404"},{"key":"e_1_2_1_27_1","volume-title":"The role of Linux in reducing the cost of enterprise computing. IDC white paper","author":"Gillen A.","unstructured":"Gillen , A. , Kusnetzky , D. , and McLaron , S. 2002. The role of Linux in reducing the cost of enterprise computing. IDC white paper . International Data Corporation , Framingham, MA . Gillen, A., Kusnetzky, D., and McLaron, S. 2002. The role of Linux in reducing the cost of enterprise computing. IDC white paper. International Data Corporation, Framingham, MA."},{"key":"e_1_2_1_28_1","unstructured":"Gosling J. Joy B. and Steele G. 1996. The Java Language Specification. Addison-Wesley Reading MA.   Gosling J. Joy B. and Steele G. 1996. The Java Language Specification. Addison-Wesley Reading MA."},{"key":"e_1_2_1_29_1","volume-title":"Proceedings of the Fifth IEEE Symposium on Reliability in Distributed Software and Database Systems","author":"Gray J.","year":"1996","unstructured":"Gray , J. 1996 . Why do computers stop and what can be done about it? In Proceedings of the Fifth IEEE Symposium on Reliability in Distributed Software and Database Systems ( Los Angeles, CA). 3--12. Gray, J. 1996. Why do computers stop and what can be done about it? In Proceedings of the Fifth IEEE Symposium on Reliability in Distributed Software and Database Systems (Los Angeles, CA). 3--12."},{"key":"e_1_2_1_30_1","first-page":"1","article-title":"The Bluetooth radio system","volume":"7","author":"Haarsten J. C.","year":"2000","unstructured":"Haarsten , J. C. 2000 . The Bluetooth radio system . IEEE Personal Commun. Mag. 7 , 1 (Feb.), 28--36. Haarsten, J. C. 2000. The Bluetooth radio system. IEEE Personal Commun. Mag. 7, 1 (Feb.), 28--36.","journal-title":"IEEE Personal Commun. Mag."},{"key":"e_1_2_1_31_1","volume-title":"Proceedings of the 3rd USENIX Symposium on Operating Systems Design and Implementation","author":"Hand S. M.","year":"1999","unstructured":"Hand , S. M. 1999 . Self-paging in the Nemesis operating system . In Proceedings of the 3rd USENIX Symposium on Operating Systems Design and Implementation ( New Orleans, LA). 73--86. Hand, S. M. 1999. Self-paging in the Nemesis operating system. In Proceedings of the 3rd USENIX Symposium on Operating Systems Design and Implementation (New Orleans, LA). 73--86."},{"key":"e_1_2_1_32_1","volume-title":"Proceedings of the 16th ACM Symposium on Operating Systems Principles (Saint-Malo, France). 66--77","author":"H\u00e4rtig H.","unstructured":"H\u00e4rtig , H. , Hohmuth , M. , Liedtke , J. , Sch\u00f6berg , S. , and Wolter , J . 1997. The performance of &mu;-kernel-based systems . In Proceedings of the 16th ACM Symposium on Operating Systems Principles (Saint-Malo, France). 66--77 . 10.1145\/268998.266660 H\u00e4rtig, H., Hohmuth, M., Liedtke, J., Sch\u00f6berg, S., and Wolter, J. 1997. The performance of &mu;-kernel-based systems. In Proceedings of the 16th ACM Symposium on Operating Systems Principles (Saint-Malo, France). 66--77. 10.1145\/268998.266660"},{"key":"e_1_2_1_33_1","unstructured":"Hewlett Packard. 2001. Hewlett Packard Digital Entertainment Center. Go online to http:\/\/www.hp.com\/hpinfo\/newsroom\/press\/31oct01a.htm.  Hewlett Packard. 2001. Hewlett Packard Digital Entertainment Center. Go online to http:\/\/www.hp.com\/hpinfo\/newsroom\/press\/31oct01a.htm."},{"key":"e_1_2_1_34_1","volume-title":"Proceedings of the 8th ACM\/IEEE International Symposium on Computer Architecture. 341--348","author":"Houdek M. E.","unstructured":"Houdek , M. E. , Soltis , F. G. , and Hoffman , R. L . 1981. IBM System\/38 support for capability-based addressing . In Proceedings of the 8th ACM\/IEEE International Symposium on Computer Architecture. 341--348 . Houdek, M. E., Soltis, F. G., and Hoffman, R. L. 1981. IBM System\/38 support for capability-based addressing. In Proceedings of the 8th ACM\/IEEE International Symposium on Computer Architecture. 341--348."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.585157"},{"key":"e_1_2_1_36_1","volume-title":"The IA-32 Architecture Software Developer's Manual, Volume 1: Basic Architecture","author":"Intel Corporation","unstructured":"Intel Corporation . 2002. The IA-32 Architecture Software Developer's Manual, Volume 1: Basic Architecture . Intel Corporation, Santa Clara , CA. Available online at http:\/\/www.intel.com\/design\/pentium4\/manuals\/24547010.pdf. Intel Corporation. 2002. The IA-32 Architecture Software Developer's Manual, Volume 1: Basic Architecture. Intel Corporation, Santa Clara, CA. Available online at http:\/\/www.intel.com\/design\/pentium4\/manuals\/24547010.pdf."},{"key":"e_1_2_1_37_1","volume-title":"Netperf: A network performance benchmark, version 2.1. Available online at http:\/\/www.netperf.org.","author":"Jones R.","year":"1995","unstructured":"Jones , R. 1995 . Netperf: A network performance benchmark, version 2.1. Available online at http:\/\/www.netperf.org. Jones, R. 1995. Netperf: A network performance benchmark, version 2.1. Available online at http:\/\/www.netperf.org."},{"key":"e_1_2_1_38_1","volume-title":"Proceedings of the Fifth International Conference on Architectural Support for Programming Languages and Operating Systems. 175--186","author":"Koldinger E. J.","unstructured":"Koldinger , E. J. , Chase , J. S. , and Eggers , S. J . 1994. Architectural support for single address space operating systems . In Proceedings of the Fifth International Conference on Architectural Support for Programming Languages and Operating Systems. 175--186 . 10.1145\/143365.143508 Koldinger, E. J., Chase, J. S., and Eggers, S. J. 1994. Architectural support for single address space operating systems. In Proceedings of the Fifth International Conference on Architectural Support for Programming Languages and Operating Systems. 175--186. 10.1145\/143365.143508"},{"key":"e_1_2_1_39_1","volume-title":"Capability-Based Computer Systems","author":"Levy H. M.","unstructured":"Levy , H. M. 1984. Capability-Based Computer Systems . Digital Press , Burlington, MA . Available online at http:\/\/www.cs.washington.edu\/homes\/levy\/capabook. Levy, H. M. 1984. Capability-Based Computer Systems. Digital Press, Burlington, MA. Available online at http:\/\/www.cs.washington.edu\/homes\/levy\/capabook."},{"key":"e_1_2_1_40_1","volume-title":"Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 237--250","author":"Liedtke J.","year":"1995","unstructured":"Liedtke , J. 1995 . On &mu;-kernel construction . In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 237--250 . 10.1145\/224056.224075 Liedtke, J. 1995. On &mu;-kernel construction. In Proceedings of the 15th ACM Symposium on Operating Systems Principles (Copper Mountain Resort, CO). 237--250. 10.1145\/224056.224075"},{"key":"e_1_2_1_41_1","volume-title":"Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation","author":"Lowell D. E.","unstructured":"Lowell , D. E. , Chandra , S. , and Chen , P. M . 2000. Exploring failure transparency and the limits of generic recovery . In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation ( San Diego, CA). 289--303. Lowell, D. E., Chandra, S., and Chen, P. M. 2000. Exploring failure transparency and the limits of generic recovery. In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation (San Diego, CA). 289--303."},{"key":"e_1_2_1_42_1","volume-title":"Tech. Rep. CSE-TR-410-99. University of Michigan","author":"Lowell D. E.","year":"1998","unstructured":"Lowell , D. E. and Chen , P. M . 1998 . Discount checking: Transparent , low-overhead recovery for general applications. Tech. Rep. CSE-TR-410-99. University of Michigan , Axn Arbor, MI . Lowell, D. E. and Chen, P. M. 1998. Discount checking: Transparent, low-overhead recovery for general applications. Tech. Rep. CSE-TR-410-99. University of Michigan, Axn Arbor, MI."},{"key":"e_1_2_1_43_1","volume-title":"Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation","author":"M\u00e9rillon F.","unstructured":"M\u00e9rillon , F. , R\u00e9veill\u00e8re , L. , Consel , C. , Marlet , R. , and Muller , G . 2000. Devil: An IDL for hardware programming . In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation ( San Diego, CA). 17--30. M\u00e9rillon, F., R\u00e9veill\u00e8re, L., Consel, C., Marlet, R., and Muller, G. 2000. Devil: An IDL for hardware programming. In Proceedings of the 4th USENIX Symposium on Operating Systems Design and Implementation (San Diego, CA). 17--30."},{"key":"e_1_2_1_44_1","volume-title":"FAT: General overview of on-disk format, version 1.03","author":"Microsoft Corporation","year":"2000","unstructured":"Microsoft Corporation . 2000 . FAT: General overview of on-disk format, version 1.03 . Microsoft Corporation , Redmond, WA . Microsoft Corporation. 2000. FAT: General overview of on-disk format, version 1.03. Microsoft Corporation, Redmond, WA."},{"key":"e_1_2_1_45_1","volume-title":"First ACM Workshop on Internet Server Performance","author":"Mosberger D.","unstructured":"Mosberger , D. and Jin , T . 1998. httperf: A tool for measuring web server performance . In First ACM Workshop on Internet Server Performance ( Madison, WI). 59--67. Mosberger, D. and Jin, T. 1998. httperf: A tool for measuring web server performance. In First ACM Workshop on Internet Server Performance (Madison, WI). 59--67."},{"key":"e_1_2_1_46_1","volume-title":"Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation","author":"Necula G. C.","unstructured":"Necula , G. C. and Lee , P . 1996. Safe kernel extensions without run-time checking . In Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation ( Seattle, WA). 229--243. 10.1145\/238721.238781 Necula, G. C. and Lee, P. 1996. Safe kernel extensions without run-time checking. In Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation (Seattle, WA). 229--243. 10.1145\/238721.238781"},{"key":"e_1_2_1_47_1","volume-title":"Proceedings of the 1999 IEEE Symposium on Fault-Tolerant Computing (FTCS). 76--83","author":"Ng W. T.","unstructured":"Ng , W. T. and Chen , P. M . 1999. The systematic improvement of fault tolerance in the Rio file cache . In Proceedings of the 1999 IEEE Symposium on Fault-Tolerant Computing (FTCS). 76--83 . Ng, W. T. and Chen, P. M. 1999. The systematic improvement of fault tolerance in the Rio file cache. In Proceedings of the 1999 IEEE Symposium on Fault-Tolerant Computing (FTCS). 76--83."},{"key":"e_1_2_1_48_1","volume-title":"A Programmer's View of the Intel 432 System","author":"Organick E. I.","unstructured":"Organick , E. I. 1983. A Programmer's View of the Intel 432 System . McGraw Hill , New York, NY . Organick, E. I. 1983. A Programmer's View of the Intel 432 System. McGraw Hill, New York, NY."},{"key":"e_1_2_1_49_1","volume-title":"Tech. Rep. CSD-02-1175. UC Berkeley Computer Science.","author":"Patterson D.","year":"2002","unstructured":"Patterson , D. , Brown , A. , Broadwell , P. , Candea , G. , Chen , M. , Cutler , J. , Enriquez , P. , Fox , A. , K\u00fdc\u00fdman , E. , Merzbacher , M. , Oppenheimer , D. , Sastry , N. , Tetzlaff , W. , Traupman , J. , and Treuhaft , N . 2002 . Recovery-oriented computing (ROC): Motivation , definition, techniques, and case studies. Tech. Rep. CSD-02-1175. UC Berkeley Computer Science. Berkely, CA . Patterson, D., Brown, A., Broadwell, P., Candea, G., Chen, M., Cutler, J., Enriquez, P., Fox, A., K\u00fdc\u00fdman, E., Merzbacher, M., Oppenheimer, D., Sastry, N., Tetzlaff, W., Traupman, J., and Treuhaft, N. 2002. Recovery-oriented computing (ROC): Motivation, definition, techniques, and case studies. Tech. Rep. CSD-02-1175. UC Berkeley Computer Science. Berkely, CA."},{"key":"e_1_2_1_50_1","unstructured":"Project-UDI. 1999. Introduction to UDI version 1.0. Tech. rep. Project UDI. Visit Website www.projectudi.org.  Project-UDI. 1999. Introduction to UDI version 1.0. Tech. rep. Project UDI. Visit Website www.projectudi.org."},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1145\/361011.361067"},{"key":"e_1_2_1_52_1","volume-title":"Proceedings of the 13th ACM Symposium on Operating Systems Principles","author":"Schmuck F.","unstructured":"Schmuck , F. and Wylie , J . 1991. Experience with transactions in QuickSilver . In Proceedings of the 13th ACM Symposium on Operating Systems Principles ( Pacific Grove, CA). 239--253. 10.1145\/121132.121171 Schmuck, F. and Wylie, J. 1991. Experience with transactions in QuickSilver. In Proceedings of the 13th ACM Symposium on Operating Systems Principles (Pacific Grove, CA). 239--253. 10.1145\/121132.121171"},{"key":"e_1_2_1_53_1","volume-title":"Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation","author":"Seltzer M. I.","unstructured":"Seltzer , M. I. , Endo , Y. , Small , C. , and Smith , K. A . 1996. Dealing with disaster: Surviving misbehaved kernel extensions . In Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation ( Seattle, WA). 213--227. 10.1145\/238721.238779 Seltzer, M. I., Endo, Y., Small, C., and Smith, K. A. 1996. Dealing with disaster: Surviving misbehaved kernel extensions. In Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation (Seattle, WA). 213--227. 10.1145\/238721.238779"},{"key":"e_1_2_1_54_1","volume-title":"Vice president of Windows Core Technology","author":"Short R.","unstructured":"Short , R. 2003. Vice president of Windows Core Technology , Microsoft Corp. Private communication. Short, R. 2003. Vice president of Windows Core Technology, Microsoft Corp. Private communication."},{"key":"e_1_2_1_55_1","volume-title":"The SPECweb99 benchmark","author":"Standard Performance Evaluation Corporation","unstructured":"Standard Performance Evaluation Corporation . 1999. The SPECweb99 benchmark . Standard Performance Evaluation Corporation , Warrenton, VA . Visit Web site www.Apec.org. Standard Performance Evaluation Corporation. 1999. The SPECweb99 benchmark. Standard Performance Evaluation Corporation, Warrenton, VA. Visit Web site www.Apec.org."},{"key":"e_1_2_1_56_1","volume-title":"Proceedings of the 2001 USENIX Annual Technical Conference","author":"Sugerman J.","unstructured":"Sugerman , J. , Venkitachalam , G. , and Lim , B . 2001. Virtualizing I\/O devices on VMware workstation's hosted virtual machine monitor . In Proceedings of the 2001 USENIX Annual Technical Conference ( Boston, MA). Sugerman, J., Venkitachalam, G., and Lim, B. 2001. Virtualizing I\/O devices on VMware workstation's hosted virtual machine monitor. In Proceedings of the 2001 USENIX Annual Technical Conference (Boston, MA)."},{"key":"e_1_2_1_57_1","volume-title":"Proceedings of the 1991 IEEE Symposium on Fault-Tolerant Computing (FTCS-21)","author":"Sullivan M.","unstructured":"Sullivan , M. and Chillarege , R . 1991. Software defects and their impact on system availability---a study of field failures in operating systems . In Proceedings of the 1991 IEEE Symposium on Fault-Tolerant Computing (FTCS-21) . (Montreal, P. Q., Canada). 2--9. Sullivan, M. and Chillarege, R. 1991. Software defects and their impact on system availability---a study of field failures in operating systems. In Proceedings of the 1991 IEEE Symposium on Fault-Tolerant Computing (FTCS-21). (Montreal, P. Q., Canada). 2--9."},{"key":"e_1_2_1_58_1","volume-title":"Proceedings of the 17th International Conference on Very Large Data Bases. Morgan Kaufman Publishing","author":"Sullivan M.","unstructured":"Sullivan , M. and Stonebraker , M . 1991. Using write protected data structures to improve software fault tolerance in highly available database management systems . In Proceedings of the 17th International Conference on Very Large Data Bases. Morgan Kaufman Publishing , San Francisco, CA, 171--180. Sullivan, M. and Stonebraker, M. 1991. Using write protected data structures to improve software fault tolerance in highly available database management systems. In Proceedings of the 17th International Conference on Very Large Data Bases. Morgan Kaufman Publishing, San Francisco, CA, 171--180."},{"key":"e_1_2_1_59_1","unstructured":"Thurrott P. 2003. Windows 2000 server: The road to gold part two: Developing windows. Paul Thurrott's SuperSite for Windows.  Thurrott P. 2003. Windows 2000 server: The road to gold part two: Developing windows. Paul Thurrott's SuperSite for Windows."},{"key":"e_1_2_1_60_1","unstructured":"TiVo Corporation. 2001. TiVo digital video recorder. Go to www.tivo.com.  TiVo Corporation. 2001. TiVo digital video recorder. Go to www.tivo.com."},{"key":"e_1_2_1_61_1","unstructured":"van de Ven A. 1999. kHTTPd: Linux HTTP accelerator. Available online at http:\/\/www.fenrus.demon.nl\/.  van de Ven A. 1999. kHTTPd: Linux HTTP accelerator. Available online at http:\/\/www.fenrus.demon.nl\/."},{"key":"e_1_2_1_62_1","volume-title":"Proceedings of the 14th ACM Symposium on Operating Systems Principles","author":"Wahbe R.","unstructured":"Wahbe , R. , Lucco , S. , Anderson , T. E. , and Graham , S. L . 1993. Efficient software-based fault isolation . In Proceedings of the 14th ACM Symposium on Operating Systems Principles ( Asheville, NC). 203--216. 10.1145\/168619.168635 Wahbe, R., Lucco, S., Anderson, T. E., and Graham, S. L. 1993. Efficient software-based fault isolation. In Proceedings of the 14th ACM Symposium on Operating Systems Principles (Asheville, NC). 203--216. 10.1145\/168619.168635"},{"key":"e_1_2_1_63_1","unstructured":"Wheeler D. A. 2002. More than a gigabuck: Estimating GNU\/Linux's size. Available online at http:\/\/www.dwheeler.com\/sloc\/redhat71-v1\/redhat71sloc.html.  Wheeler D. A. 2002. More than a gigabuck: Estimating GNU\/Linux's size. Available online at http:\/\/www.dwheeler.com\/sloc\/redhat71-v1\/redhat71sloc.html."},{"key":"e_1_2_1_64_1","volume-title":"Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation","author":"Whitaker A.","unstructured":"Whitaker , A. , Shaw , M. , and Gribble , S. D . 2002. Denali: Lightweight virtual machines for distributed and networked applications . In Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation ( Boston, MA). 195--209. Whitaker, A., Shaw, M., and Gribble, S. D. 2002. Denali: Lightweight virtual machines for distributed and networked applications. In Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation (Boston, MA). 195--209."},{"key":"e_1_2_1_65_1","volume-title":"Proceedings of the Tenth International Conference on Architectural Support for Programming Languages and Operating Systems. 304--316","author":"Witchel E.","unstructured":"Witchel , E. , Cates , J. , and Asanovi\u0107 , K . 2002. Mondrian memory protection . In Proceedings of the Tenth International Conference on Architectural Support for Programming Languages and Operating Systems. 304--316 . 10.1145\/605397.605429 Witchel, E., Cates, J., and Asanovi\u0107, K. 2002. Mondrian memory protection. In Proceedings of the Tenth International Conference on Architectural Support for Programming Languages and Operating Systems. 304--316. 10.1145\/605397.605429"},{"key":"e_1_2_1_66_1","volume-title":"Proceedings of the International Conference on Reliable Software","author":"Wulf W. A.","year":"1975","unstructured":"Wulf , W. A. 1975 . Reliatble hardware-software architecture . In Proceedings of the International Conference on Reliable Software ( Los Angeles, CA). 122--130. 10.1145\/800027.808432 Wulf, W. A. 1975. Reliatble hardware-software architecture. In Proceedings of the International Conference on Reliable Software (Los Angeles, CA). 122--130. 10.1145\/800027.808432"},{"key":"e_1_2_1_67_1","volume-title":"Proceedings of the 1986 Summer USENIX Conference","author":"Young M.","unstructured":"Young , M. , Accetta , M. , Baron , R. , Bolosky , W. , Golub , D. , Rashid , R. , and Tevanian , A . 1986. Mach: A new kernel foundation for UNIX development . In Proceedings of the 1986 Summer USENIX Conference ( Atlanta, GA). 93--113. Young, M., Accetta, M., Baron, R., Bolosky, W., Golub, D., Rashid, R., and Tevanian, A. 1986. Mach: A new kernel foundation for UNIX development. In Proceedings of the 1986 Summer USENIX Conference (Atlanta, GA). 93--113."}],"container-title":["ACM Transactions on Computer Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1047915.1047919","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1047915.1047919","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T16:07:58Z","timestamp":1750262878000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1047915.1047919"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005,2,2]]},"references-count":67,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2005,2,2]]}},"alternative-id":["10.1145\/1047915.1047919"],"URL":"https:\/\/doi.org\/10.1145\/1047915.1047919","relation":{},"ISSN":["0734-2071","1557-7333"],"issn-type":[{"value":"0734-2071","type":"print"},{"value":"1557-7333","type":"electronic"}],"subject":[],"published":{"date-parts":[[2005,2,2]]},"assertion":[{"value":"2005-02-02","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}