{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,14]],"date-time":"2026-05-14T07:19:30Z","timestamp":1778743170542,"version":"3.51.4"},"reference-count":41,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2007,6,1]],"date-time":"2007-06-01T00:00:00Z","timestamp":1180656000000},"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. Storage"],"published-print":{"date-parts":[[2007,6]]},"abstract":"<jats:p>An organization's data is often its most valuable asset, but today's file systems provide few facilities to ensure its safety. Databases, on the other hand, have long provided transactions. Transactions are useful because they provide atomicity, consistency, isolation, and durability (ACID). Many applications could make use of these semantics, but databases have a wide variety of nonstandard interfaces. For example, applications like mail servers currently perform elaborate error handling to ensure atomicity and consistency, because it is easier than using a DBMS. A transaction-oriented programming model eliminates complex error-handling code because failed operations can simply be aborted without side effects. We have designed a file system that exports ACID transactions to user-level applications, while preserving the ubiquitous and convenient POSIX interface. In our prototype ACID file system, called Amino, updated applications can protect arbitrary sequences of system calls within a transaction. Unmodified applications operate without any changes, but each system call is transaction protected. We also built a recoverable memory library with support for nested transactions to allow applications to keep their in-memory data structures consistent with the file system. Our performance evaluation shows that ACID semantics can be added to applications with acceptable overheads. When Amino adds atomicity, consistency, and isolation functionality to an application, it performs close to Ext3. Amino achieves durability up to 46% faster than Ext3, thanks to improved locality.<\/jats:p>","DOI":"10.1145\/1242520.1242521","type":"journal-article","created":{"date-parts":[[2007,6,6]],"date-time":"2007-06-06T14:37:11Z","timestamp":1181140631000},"page":"4","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":32,"title":["Extending ACID semantics to the file system"],"prefix":"10.1145","volume":"3","author":[{"given":"Charles P.","family":"Wright","sequence":"first","affiliation":[{"name":"IBM T. J. Watson Research Center"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Richard","family":"Spillane","sequence":"additional","affiliation":[{"name":"Stony Brook University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gopalan","family":"Sivathanu","sequence":"additional","affiliation":[{"name":"Stony Brook University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Erez","family":"Zadok","sequence":"additional","affiliation":[{"name":"Stony Brook University"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2007,6]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"Proceedings of the Annual USENIX Technical Conference","author":"Alexandrov A. D.","unstructured":"Alexandrov , A. D. , Ibel , M. , Schauser , K. E. , and Scheiman , C. J . 1997. Extending the operating system at the user level: The Ufo Global File System . In Proceedings of the Annual USENIX Technical Conference . Anaheim, CA. USENIX Association, 77--90. Alexandrov, A. D., Ibel, M., Schauser, K. E., and Scheiman, C. J. 1997. Extending the operating system at the user level: The Ufo Global File System. In Proceedings of the Annual USENIX Technical Conference. Anaheim, CA. USENIX Association, 77--90."},{"key":"e_1_2_1_2_1","unstructured":"Berliner B. and Polk J. 2001. Concurrent Versions System (CVS). www.cvshome.org.  Berliner B. and Polk J. 2001. Concurrent Versions System (CVS). www.cvshome.org."},{"key":"e_1_2_1_3_1","volume-title":"Tech. Rep. RFC","author":"Callaghan B.","year":"1995","unstructured":"Callaghan , B. , Pawlowski , B. , and Staubach , P . 1995 . NFS version 3 protocol specification. Tech. Rep. RFC 1813, Network Working Group . Callaghan, B., Pawlowski, B., and Staubach, P. 1995. NFS version 3 protocol specification. Tech. Rep. RFC 1813, Network Working Group."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/237090.237154"},{"key":"e_1_2_1_5_1","unstructured":"CollabNet Inc. 2004. Subversion. http:\/\/subversion.tigris.org.  CollabNet Inc. 2004. Subversion. http:\/\/subversion.tigris.org."},{"key":"e_1_2_1_6_1","volume-title":"Proceedings of the 4th Annual Linux Showcase and Conference","author":"Dike J.","year":"2000","unstructured":"Dike , J. 2000 . A user-mode port of the Linux kernel . In Proceedings of the 4th Annual Linux Showcase and Conference . Atlanta, GA. USENIX Association, 63--72. Dike, J. 2000. A user-mode port of the Linux kernel. In Proceedings of the 4th Annual Linux Showcase and Conference. Atlanta, GA. USENIX Association, 63--72."},{"key":"e_1_2_1_7_1","volume-title":"Proceedings of the Annual USENIX Conference on Large Installation Systems Administration","author":"Ellard D.","unstructured":"Ellard , D. and Seltzer , M . 2003. New NFS tracing tools and techniques for system analysis . In Proceedings of the Annual USENIX Conference on Large Installation Systems Administration . San Diego, CA. USENIX Association. Ellard, D. and Seltzer, M. 2003. New NFS tracing tools and techniques for system analysis. In Proceedings of the Annual USENIX Conference on Large Installation Systems Administration. San Diego, CA. USENIX Association."},{"key":"e_1_2_1_8_1","volume-title":"Proceedings of the 20th International Conference on Very Large Databases","author":"Gehani N. H.","unstructured":"Gehani , N. H. , Jagadish , H. V. , and Roome , W. D . 1994. OdeFS: A file system interface to an object-oriented database . In Proceedings of the 20th International Conference on Very Large Databases . Santiago, Chile. Springer-Verlag Heidelberg, Germany, 249--260. Gehani, N. H., Jagadish, H. V., and Roome, W. D. 1994. OdeFS: A file system interface to an object-oriented database. In Proceedings of the 20th International Conference on Very Large Databases. Santiago, Chile. Springer-Verlag Heidelberg, Germany, 249--260."},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/945445.945450"},{"key":"e_1_2_1_10_1","volume-title":"Proceedings of the Annual USENIX Technical Conference","author":"Ghormley D. P.","unstructured":"Ghormley , D. P. , Petrou , D. , Rodrigues , S. H. , and Anderson , T. E . 1998. SLIC: An extensibility system for commodity operating systems . In Proceedings of the Annual USENIX Technical Conference . Berkeley, CA. ACM, 39--52. Ghormley, D. P., Petrou, D., Rodrigues, S. H., and Anderson, T. E. 1998. SLIC: An extensibility system for commodity operating systems. In Proceedings of the Annual USENIX Technical Conference. Berkeley, CA. ACM, 39--52."},{"key":"e_1_2_1_11_1","volume-title":"Fwd: Re: {patch 1\/4} UML Support - Ptrace: adds the host SYSEMU support, for UML and general usage. www.uwsg.iu.edu\/hypermail\/linux\/kernel\/0507.3\/1992.html.","author":"Giarrusso P.","year":"2005","unstructured":"Giarrusso , P. 2005 . Fwd: Re: {patch 1\/4} UML Support - Ptrace: adds the host SYSEMU support, for UML and general usage. www.uwsg.iu.edu\/hypermail\/linux\/kernel\/0507.3\/1992.html. Giarrusso, P. 2005. Fwd: Re: {patch 1\/4} UML Support - Ptrace: adds the host SYSEMU support, for UML and general usage. www.uwsg.iu.edu\/hypermail\/linux\/kernel\/0507.3\/1992.html."},{"key":"e_1_2_1_12_1","volume-title":"Proceedings of the 6th USENIX UNIX Security Symposium","author":"Goldberg I.","unstructured":"Goldberg , I. , Wagner , D. , Thomas , R. , and Brewer , E . 1996. A secure environment for untrusted helper applications (confining the wily hacker) . In Proceedings of the 6th USENIX UNIX Security Symposium . San Jose, CA. USENIX Association, 1--13. Goldberg, I., Wagner, D., Thomas, R., and Brewer, E. 1996. A secure environment for untrusted helper applications (confining the wily hacker). In Proceedings of the 6th USENIX UNIX Security Symposium. San Jose, CA. USENIX Association, 1--13."},{"key":"e_1_2_1_13_1","doi-asserted-by":"crossref","unstructured":"Haardt M. and Coleman M. 1999. ptrace(2). Linux Programmer's Manual Section 2.  Haardt M. and Coleman M. 1999. ptrace(2). Linux Programmer's Manual Section 2.","DOI":"10.1016\/S1353-4858(99)90251-9"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/41457.37518"},{"key":"e_1_2_1_15_1","unstructured":"IEEE\/ANSI. 1996. Information Technology--Portable Operating System Interface (POSIX)--Part 1: System Application: Program Interface (API) {C Language}. Tech. rep. STD-1003.1 ISO\/IEC.  IEEE\/ANSI. 1996. Information Technology--Portable Operating System Interface (POSIX)--Part 1: System Application: Program Interface (API) {C Language}. Tech. rep. STD-1003.1 ISO\/IEC."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/168619.168626"},{"key":"e_1_2_1_17_1","unstructured":"Katcher J. 1997. PostMark: A new filesystem benchmark. Tech. rep. TR3022 Network Appliance. www.netapp.com\/tech_library\/3022.html.  Katcher J. 1997. PostMark: A new filesystem benchmark. Tech. rep. TR3022 Network Appliance. www.netapp.com\/tech_library\/3022.html."},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.4380201304"},{"key":"e_1_2_1_19_1","volume-title":"Database Design II: Relational Normalization Theory","author":"Lewis P.","year":"2002","unstructured":"Lewis , P. , Bernstein , A. , and Kifer , M . 2002 . Databases and Transaction Processing: An Application-Oriented Approach. Chapter 8: Database Design II: Relational Normalization Theory . Addison Wesley , 211--260. Lewis, P., Bernstein, A., and Kifer, M. 2002. Databases and Transaction Processing: An Application-Oriented Approach. Chapter 8: Database Design II: Relational Normalization Theory. Addison Wesley, 211--260."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/268998.266665"},{"key":"e_1_2_1_21_1","volume-title":"Proceedings of the Annual USENIX Technical Conference","author":"Mazi\u00e9res D.","year":"2001","unstructured":"Mazi\u00e9res , D. 2001 . A toolkit for user-level file systems . In Proceedings of the Annual USENIX Technical Conference . Boston, MA. USENIX Association, 261--274. Mazi\u00e9res, D. 2001. A toolkit for user-level file systems. In Proceedings of the Annual USENIX Technical Conference. Boston, MA. USENIX Association, 261--274."},{"key":"e_1_2_1_22_1","volume-title":"Proceedings of the Annual USENIX Technical Conference, FREENIX Track","author":"McKusick M. K.","unstructured":"McKusick , M. K. and Ganger , G. R . 1999. Soft updates: A technique for eliminating most synchronous writes in the fast filesystem . In Proceedings of the Annual USENIX Technical Conference, FREENIX Track . Monterey, CA. USENIX Association, 1--18. McKusick, M. K. and Ganger, G. R. 1999. Soft updates: A technique for eliminating most synchronous writes in the fast filesystem. In Proceedings of the Annual USENIX Technical Conference, FREENIX Track. Monterey, CA. USENIX Association, 1--18."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/989.990"},{"key":"e_1_2_1_24_1","unstructured":"Microsoft Corporation. 2004. Microsoft MSDN WinFS Documentation. http:\/\/msdn.microsoft.com\/data\/winfs\/.  Microsoft Corporation. 2004. Microsoft MSDN WinFS Documentation. http:\/\/msdn.microsoft.com\/data\/winfs\/."},{"key":"e_1_2_1_25_1","unstructured":"Murphy N. Tonkelowitz M. and Vernal M. 2002. The design and implementation of the database file system. www.eecs.harvard.edu\/~vernal\/learn\/cs261r\/index.shtml.  Murphy N. Tonkelowitz M. and Vernal M. 2002. The design and implementation of the database file system. www.eecs.harvard.edu\/~vernal\/learn\/cs261r\/index.shtml."},{"key":"e_1_2_1_26_1","unstructured":"MySQL AB. 2005. MySQL: The world's most popular open source database. www.mysql.org.  MySQL AB. 2005. MySQL: The world's most popular open source database. www.mysql.org."},{"key":"e_1_2_1_27_1","volume-title":"Proceedings of the","author":"Olson M. A.","year":"1993","unstructured":"Olson , M. A. 1993 . The design and implementation of the inversion file system . In Proceedings of the Winter 1993 USENIX Technical Conference. San Diego, CA. USENIX, 205--217. Olson, M. A. 1993. The design and implementation of the inversion file system. In Proceedings of the Winter 1993 USENIX Technical Conference. San Diego, CA. USENIX, 205--217."},{"key":"e_1_2_1_28_1","unstructured":"Oracle Corporation. 2000. Oracle Internet File System Archive Documentation. http:\/\/otn.oracle.com\/documentation\/ifs_arch.html.  Oracle Corporation. 2000. Oracle Internet File System Archive Documentation. http:\/\/otn.oracle.com\/documentation\/ifs_arch.html."},{"key":"e_1_2_1_29_1","volume-title":"Proceedings of the ACM Workshop on Hot Topics in Operating Systems (HotOS IX)","author":"Purohit A.","unstructured":"Purohit , A. , Wright , C. , Spadavecchia , J. , and Zadok , E . 2003. Develop in user-land, run in kernel mode . In Proceedings of the ACM Workshop on Hot Topics in Operating Systems (HotOS IX) . Lihue, HI. USENIX Association, 109--114. Purohit, A., Wright, C., Spadavecchia, J., and Zadok, E. 2003. Develop in user-land, run in kernel mode. In Proceedings of the ACM Workshop on Hot Topics in Operating Systems (HotOS IX). Lihue, HI. USENIX Association, 109--114."},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/121132.121137"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/319151.319159"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/174613.174615"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1145\/121132.121171"},{"key":"e_1_2_1_34_1","volume-title":"Proceedings of the 16th International Conference on Very Large Databases","author":"Seltzer M.","unstructured":"Seltzer , M. and Stonebraker , M . 1990. Transaction support in read optimized and write optimized file systems . In Proceedings of the 16th International Conference on Very Large Databases . Brisbane, Australia. Morgan Kaufmann, 174--185. Seltzer, M. and Stonebraker, M. 1990. Transaction support in read optimized and write optimized file systems. In Proceedings of the 16th International Conference on Very Large Databases. Brisbane, Australia. Morgan Kaufmann, 174--185."},{"key":"e_1_2_1_35_1","volume-title":"Proceedings of the Winter USENIX Technical Conference","author":"Seltzer M.","unstructured":"Seltzer , M. and Yigit , O . 1991. A new hashing package for UNIX . In Proceedings of the Winter USENIX Technical Conference . Dallas, TX. USENIX Association, 173--184. Seltzer, M. and Yigit, O. 1991. A new hashing package for UNIX. In Proceedings of the Winter USENIX Technical Conference. Dallas, TX. USENIX Association, 173--184."},{"key":"e_1_2_1_36_1","volume-title":"Proceedings of the Annual USENIX Technical Conference","author":"Seltzer M. I.","unstructured":"Seltzer , M. I. , Ganger , G. R. , McKusick , M. K. , Smith , K. A. , Soules , C. A. N. , and Stein , C. A . 2000. Journaling versus soft updates: Asynchronous Metadata protection in file systems . In Proceedings of the Annual USENIX Technical Conference . San Diego, CA. USENIX Association, 71--84. Seltzer, M. I., Ganger, G. R., McKusick, M. K., Smith, K. A., Soules, C. A. N., and Stein, C. A. 2000. Journaling versus soft updates: Asynchronous Metadata protection in file systems. In Proceedings of the Annual USENIX Technical Conference. San Diego, CA. USENIX Association, 71--84."},{"key":"e_1_2_1_37_1","unstructured":"Sendmail Consortium. 2004. Sendmail home page. www.sendmail.org.  Sendmail Consortium. 2004. Sendmail home page. www.sendmail.org."},{"key":"e_1_2_1_38_1","unstructured":"Sendmail Inc. 2004. Sendmail Advanced Message Server. www.sendmail.com\/products\/mailcenter\/sams\/.  Sendmail Inc. 2004. Sendmail Advanced Message Server. www.sendmail.com\/products\/mailcenter\/sams\/."},{"key":"e_1_2_1_39_1","unstructured":"Sleepycat Software Inc. 2004. Berkeley DB Reference Guide 4.3.27 Ed. http:\/\/www.oracle.com\/technology\/documentation\/berkeley-db\/db\/api_c\/frame.html.  Sleepycat Software Inc. 2004. Berkeley DB Reference Guide 4.3.27 Ed. http:\/\/www.oracle.com\/technology\/documentation\/berkeley-db\/db\/api_c\/frame.html."},{"key":"e_1_2_1_40_1","unstructured":"Szeredi M. 2005. Filesystem in userspace. http:\/\/fuse.sourceforge.net.  Szeredi M. 2005. Filesystem in userspace. http:\/\/fuse.sourceforge.net."},{"key":"e_1_2_1_41_1","volume-title":"Proceedings of the 2nd IEEE International Security In Storage Workshop (SISW03)","author":"Wright C. P.","unstructured":"Wright , C. P. , Dave , J. , and Zadok , E . 2003. Cryptographic file systems performance: What you don't know can hurt you . In Proceedings of the 2nd IEEE International Security In Storage Workshop (SISW03) . Washington, DC. IEEE Computer Society, 47--61. Wright, C. P., Dave, J., and Zadok, E. 2003. Cryptographic file systems performance: What you don't know can hurt you. In Proceedings of the 2nd IEEE International Security In Storage Workshop (SISW03). Washington, DC. IEEE Computer Society, 47--61."}],"container-title":["ACM Transactions on Storage"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1242520.1242521","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1242520.1242521","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T17:38:56Z","timestamp":1750268336000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1242520.1242521"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2007,6]]},"references-count":41,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2007,6]]}},"alternative-id":["10.1145\/1242520.1242521"],"URL":"https:\/\/doi.org\/10.1145\/1242520.1242521","relation":{},"ISSN":["1553-3077","1553-3093"],"issn-type":[{"value":"1553-3077","type":"print"},{"value":"1553-3093","type":"electronic"}],"subject":[],"published":{"date-parts":[[2007,6]]},"assertion":[{"value":"2007-06-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}