cfscq extending a verified file system with concurrency
play

CFSCQ: Extending a verified file system with concurrency Tej - PowerPoint PPT Presentation

SRC #14 CFSCQ: Extending a verified file system with concurrency Tej Chajed advised by Frans Kaashoek and Nickolai Zeldovich 1 Goal: verify a concurrent file system Existing verified file systems are sequential e.g. , FSCQ,


  1. SRC #14 CFSCQ: Extending a verified file system with concurrency Tej Chajed advised by Frans Kaashoek and Nickolai Zeldovich 1

  2. Goal: verify a concurrent file system • Existing verified file systems are sequential • e.g. , FSCQ, Yggdrasil, BilbyFS • All real file systems are concurrent • e.g. , ext4, btrfs 2

  3. CFSCQ re-uses FSCQ 
 (a verified sequential file system) • FSCQ: 75,000 lines • CFSCQ: +6,000 lines • Concurrency verified separately from sequential behavior 3

  4. What can we achieve without modifying proofs? • Make disk reads asynchronous • Run read-only system calls on multiple cores • Leverage FSCQ code, spec, and proof for bulk of concurrent implementation 4

  5. Asynchronous reads allow system calls to read from memory while disk is reading CPU Disk rename read other syscall rename 5

  6. Asynchronous reads allow system calls to read from memory while disk is reading CPU Disk rename rollback writes read other syscall rename restarts 6

  7. Read-only system calls run on separate cores Core1 Core2 read stat stat 7

  8. Read-only system calls run on separate cores Core1 Core2 Core3 read-only read stat rename updates stat 7

  9. Read-only system calls run on separate cores Core1 Core2 Core3 read-only snapshot initial state read stat rename updates stat 7

  10. Read-only system calls run on separate cores Core1 Core2 Core3 read-only snapshot initial state read stat rename updates stat update state 7

  11. Read-only system calls run on separate cores Core1 Core2 Core3 read-only snapshot initial state read stat rename updates stat with write lock update state 7

  12. Progress • Verified asynchronous disk reads and multicore ✔ concurrent reads • Asynchronous disk reads improve throughput with ✔ slow I/O • Working on performance and scalability of multicore reads 8

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend