Limiting trust in the storage stack
We propose a framework for examining trust in the storage stack based on different levels of trustworthiness present across different channels of information flow. We focus on corruption in one of the channels, the data channel and as a case study, we apply type-aware corruption techniques to examine Windows NTFS behavior when on-disk pointers are corrupted. We find that NTFS does not verify on-disk pointers thoroughly before using them and that even established error handling techniques like replication are often used ineffectively. Our study indicates the need to more carefully examine how trust is managed within modern file systems.
Current algorithms for reader-writer synchronization do not scale for readers: readers cannot acquire locks in parallel. The authors describe two new algorithms that allow parallelism among readers during lock acquisition; this is achieved by distributing the lock state among different processors, and by trading reader throughput for writer throughput. Their experiments show that when reads are a large percentage of lock requests, the throughput of each of their algorithms scales significantly better than current algorithms. >