Show simple item record

dc.contributor.author
Hance, Travis
dc.contributor.author
Lattuada, Andrea
dc.contributor.author
Hawblitzel, Chris
dc.contributor.author
Howell, Jon
dc.contributor.author
Johnson, Rob
dc.contributor.author
Parno, Bryan
dc.date.accessioned
2021-08-05T09:34:14Z
dc.date.available
2021-08-05T03:02:08Z
dc.date.available
2021-08-05T09:34:14Z
dc.date.issued
2020-11
dc.identifier.isbn
978-1-939133-19-9
en_US
dc.identifier.uri
http://hdl.handle.net/20.500.11850/499516
dc.description.abstract
To verify distributed systems, prior work introduced a methodology for verifying both the code running on individual machines and the correctness of the overall system when those machines interact via an asynchronous distributed environment. The methodology requires neither domain-specific logic nor tooling. However, distributed systems are only one instance of the more general phenomenon of systems code that interacts with an asynchronous environment. We argue that the software of a storage system can (and should!) be viewed similarly. We evaluate this approach in VeriSafeKV, a key-value store based on a state-of-the-art B^ε-tree. In building VeriSafeKV, we introduce new techniques to scale automated verification to larger code bases, still without introducing domain-specific logic or tooling. In particular, we show a discipline that keeps the automated verification development cycle responsive. We also combine linear types with dynamic frames to relieve the programmer from most heap-reasoning obligations while enabling them to break out of the linear type system when needed. VeriSafeKV exhibits similar query performance to unverified databases. Its insertion performance is 15× faster than unverified BerkeleyDB and 6× slower than RocksDB.
en_US
dc.language.iso
en
en_US
dc.publisher
USENIX Association
en_US
dc.title
Storage Systems are Distributed Systems (So Verify Them That Way!)
en_US
dc.type
Conference Paper
ethz.book.title
Proceedings of the14th USENIX Symposium on Operating Systems Design and Implementation (OSDI '20)
en_US
ethz.pages.start
99
en_US
ethz.pages.end
115
en_US
ethz.event
14th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2020)
en_US
ethz.event.location
Online
en_US
ethz.event.date
November 4-6, 2020
en_US
ethz.notes
Conference lecture held on November 4, 2020. Due to the Coronavirus (COVID-19) the conference was conducted virtually.
en_US
ethz.identifier.wos
ethz.publication.place
Berkeley, CA
en_US
ethz.publication.status
published
en_US
ethz.identifier.url
https://www.usenix.org/conference/osdi20/presentation/hance
ethz.date.deposited
2021-08-05T03:02:31Z
ethz.source
WOS
ethz.eth
yes
en_US
ethz.availability
Metadata only
en_US
ethz.rosetta.installDate
2021-08-05T09:34:21Z
ethz.rosetta.lastUpdated
2021-08-05T09:34:21Z
ethz.rosetta.versionExported
true
ethz.COinS
ctx_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.atitle=Storage%20Systems%20are%20Distributed%20Systems%20(So%20Verify%20Them%20That%20Way!)&rft.date=2020-11&rft.spage=99&rft.epage=115&rft.au=Hance,%20Travis&Lattuada,%20Andrea&Hawblitzel,%20Chris&Howell,%20Jon&Johnson,%20Rob&rft.isbn=978-1-939133-19-9&rft.genre=proceeding&rft.btitle=Proceedings%20of%20the14th%20USENIX%20Symposium%20on%20Operating%20Systems%20Design%20and%20Implementation%20(OSDI%20'20)
 Search print copy at ETH Library

Files in this item

FilesSizeFormatOpen in viewer

There are no files associated with this item.

Publication type

Show simple item record