Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Daniel Fryer

dblp:122/4836 · DBLP profile ↗
← Back
10ranked-venue papers
4as first author
0since 2021 · last 2020
0000-0001-6032-0522ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 7 · 4 first-authorSoftware engineering, systems software and programming languages · 3Databases, data management, data science and information retrieval · 3 · 2 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
6 papers
Storage systems · 92% Embedded and real-time systems · 8%
Software engineering, system software, and programming languages
4 papers
Program verification · 59% Programming languages and type systems · 23% Operating systems · 18%

Topics — the 11 heaviest of 13, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
file systems
1.252020
Spiffy: Enabling File-System Aware Storage Applications · ACM Trans. Storage 2020
Spiffy: Enabling File-System Aware Storage Applications · FAST 2018
Checking the Integrity of Transactional Mechanisms · ACM Trans. Storage 2014
Storage systems › file systems
file-system metadata
0.412020
Spiffy: Enabling File-System Aware Storage Applications · ACM Trans. Storage 2020
Storage systems › data auditing
data integrity verification
0.422014
Checking the Integrity of Transactional Mechanisms · ACM Trans. Storage 2014
Checking the integrity of transactional mechanisms · FAST 2014
Storage systems
transaction support
0.422014
Checking the Integrity of Transactional Mechanisms · ACM Trans. Storage 2014
Checking the integrity of transactional mechanisms · FAST 2014
Storage systems
crash consistency
0.322014
Checking the Integrity of Transactional Mechanisms · ACM Trans. Storage 2014
Recon: Verifying file system consistency at runtime · ACM Trans. Storage 2012
Embedded and real-time systems › runtime monitoring
runtime verification
0.322012
Recon: Verifying file system consistency at runtime · ACM Trans. Storage 2012
Recon: verifying file system consistency at runtime · FAST 2012
Program verification
verification
0.212014
Checking the integrity of transactional mechanisms · FAST 2014
Program verification › dynamic verification
runtime verification
0.112012
Recon: verifying file system consistency at runtime · FAST 2012
Storage systems › file systems
file system consistency
0.112012
Recon: verifying file system consistency at runtime · FAST 2012
Storage systems › file systems › distributed file system
metadata consistency
0.112012
Recon: Verifying file system consistency at runtime · ACM Trans. Storage 2012
Programming languages and type systems › specification language
annotation language
0.112020
Spiffy: Enabling File-System Aware Storage Applications · ACM Trans. Storage 2020

Methods — techniques the papers use, named apart from their topics

metadata parsing · 0.9annotation language · 0.9runtime checker · 0.2
YearPublicationVenuePosition
2020 Spiffy: Enabling File-System Aware Storage Applications
abstract
Many file-system applications such as defragmentation tools, file-system checkers, or data recovery tools, operate at the storage layer. Today, developers of these file-system aware storage applications require detailed knowledge of the file-system format, which requires significant time to learn, often by trial and error, due to insufficient documentation or specification of the format. Furthermore, these applications perform ad-hoc processing of the file-system metadata, leading to bugs and vulnerabilities. We propose Spiffy, an annotation language for specifying the on-disk format of a file system. File-system developers annotate the data structures of a file system, and we use these annotations to generate a library that allows identifying, parsing, and traversing file-system metadata, providing support for both offline and online storage applications. This approach simplifies the development of storage applications that work across different file systems because it reduces the amount of file-system--specific code that needs to be written. We have written annotations for the Linux Ext4, Btrfs, and F2FS file systems, and developed several applications for these file systems, including a type-specific metadata corruptor, a file-system converter, an online storage layer cache that preferentially caches files for certain users, and a runtime file-system checker. Our experiments show that applications built with the Spiffy library for accessing file-system metadata can achieve good performance and are robust against file-system corruption errors.
Kuei Sun, Daniel Fryer, Russell Wang, Joseph Chu, Matthew Lakier, Angela Demke Brown, Ashvin Goel
ACM Trans. Storage2
2018 Spiffy: Enabling File-System Aware Storage Applications
Kuei Sun, Daniel Fryer, Joseph Chu, Matthew Lakier, Angela Demke Brown, Ashvin Goel
FAST2
2017 Understanding Rack-Scale Disaggregated Storage
Sergey Legtchenko, Hugh Williams, Kaveh Razavi, Austin Donnelly, Richard Black, Andrew Douglas, Nathanael Cheriere, Daniel Fryer, Kai Mast, Angela Demke Brown, Ana Klimovic, Andy Slowey, Antony I. T. Rowstron
HotStorage8
2014 Checking the integrity of transactional mechanisms
Daniel Fryer, Dai Qin, Jack Sun, Kah Wai Lee, Angela Demke Brown, Ashvin Goel
FAST1
2014 Robust Consistency Checking for Modern Filesystems
Kuei Sun, Daniel Fryer, Dai Qin, Angela Demke Brown, Ashvin Goel
RV2
2014 Checking the Integrity of Transactional Mechanisms
abstract
Data corruption is the most common consequence of file-system bugs. When such corruption occurs, offline check and recovery tools must be used, but they are error prone and cause significant downtime. Previously we showed that a runtime checker for the Ext3 file system can verify that metadata updates are consistent, helping detect corruption in metadata blocks at transaction commit time. However, corruption can still occur when a bug in the file system’s transactional mechanism loses, misdirects, or corrupts writes. We show that a runtime checker must enforce the atomicity and durability properties of the file system on every write, in addition to checking transactions at commit time, to provide the strong guarantee that every block write will maintain file system consistency. We identify the invariants that need to be enforced on journaling and shadow paging file systems to preserve the integrity of committed transactions. We also describe the key properties that make it feasible to check these invariants for a file system. Based on this characterization, we have implemented runtime checkers for Ext3 and Btrfs. Our evaluation shows that both checkers detect data corruption effectively, and they can be used during normal operation with low overhead.
Daniel Fryer, Dai Qin, Jack Sun, Kah Wai Lee, Angela Demke Brown, Ashvin Goel
ACM Trans. Storage1
2013 Annotation for automation: rapid generation of file system tools
abstract
Today file system tools and file-system aware storage applications are tightly coupled with file system implementations. Developing these applications is challenging because it requires detailed knowledge of the file system format, and the code for interpreting file system metadata has to be written manually. This code is complex and file-system specific, and so the application requires significant re-engineering to support different file systems.
Kuei Sun, Daniel Fryer, Angela Demke Brown, Ashvin Goel
PLOS@SOSP2
2012 Recon: verifying file system consistency at runtime
Daniel Fryer, Kuei Sun, Rahat Mahmood, Tinghao Cheng, Shaun Benjamin, Ashvin Goel, Angela Demke Brown
FAST1
2012 Recon: Verifying file system consistency at runtime
abstract
File system bugs that corrupt metadata on disk are insidious. Existing reliability methods, such as checksums, redundancy, or transactional updates, merely ensure that the corruption is reliably preserved. Typical workarounds, based on using backups or repairing the file system, are painfully slow. Worse, the recovery may result in further corruption. We present Recon, a system that protects file system metadata from buggy file system operations. Our approach leverages file systems that provide crash consistency using transactional updates. We define declarative statements called consistency invariants for a file system. These invariants must be satisfied by each transaction being committed to disk to preserve file system integrity. Recon checks these invariants at commit, thereby minimizing the damage caused by buggy file systems. The major challenges to this approach are specifying invariants and interpreting file system behavior correctly without relying on the file system code. Recon provides a framework for file-system specific metadata interpretation and invariant checking. We show the feasibility of interpreting metadata and writing consistency invariants for the Linux ext3 file system using this framework. Recon can detect random as well as targeted file-system corruption at runtime as effectively as the offline e2fsck file-system checker, with low overhead.
Daniel Fryer, Kuei Sun, Rahat Mahmood, Tinghao Cheng, Shaun Benjamin, Ashvin Goel, Angela Demke Brown
ACM Trans. Storage1
2011 Using declarative invariants for protecting file-system integrity
abstract
We have been developing a framework, called Recon, that uses runtime checking to protect the integrity of file-system metadata on disk. Recon performs consistency checks at commit points in transaction-based file systems. We define declarative statements called consistency invariants for a file system, which must be satisfied by each transaction being committed to disk. By checking each transaction before it commits, we prevent any corruption to file-system metadata from reaching the disk.
Jack Sun, Daniel Fryer, Ashvin Goel, Angela Demke Brown
PLOS@SOSP2