Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implementation of Concurrent Access to File Systems in USB Devices GSPx 2004 Bogdan Vacaliuc.

Similar presentations


Presentation on theme: "Implementation of Concurrent Access to File Systems in USB Devices GSPx 2004 Bogdan Vacaliuc."— Presentation transcript:

1 Implementation of Concurrent Access to File Systems in USB Devices GSPx 2004 Bogdan Vacaliuc

2 2 Overview Advocacy Description of the problem Related Work Description of a solution Implementation Requirements Enhancements

3 3 Why do we need this? Intelligent devices produce/consume media content. MSDC is ubiquitous for USB devices. Implementing concurrent access enables: –Command/Control via file sharing. –Firmware Upgrades. –Exchange of data between host and device. … All without the need for OS-specific drivers …

4 4 The Concurrency Problem Host MSDC implicitly caches file system data and metadata. Device modifies data and metadata. Without synchronization, host modifications can supercede device modifications.

5 5 The System Model

6 6 Related Work Distributed File Systems –Granularity of File Object. –NFS, AFS –Sprite, SpritelyNFS, NQNFS Shared Block Devices –Granularity of Logical Block on Media –GPFS, GFS/OpenGFS –NBD, Shared SCSI

7 7 A Solution Primary Requirements –It must be simple –It must operate with existing host MSDC drivers Secondary Requirements –FAT File System –Shared Block Device approach

8 8 A Solution (cont.) Establish epochs of exclusive access to metadata on the device Define implicit criteria for obtaining exclusive access to the media by the host Define explicit criteria for releasing exclusive access by the host Implement fine-grain locking on accesses made by the device.

9 9 Serializing Access

10 10 Use Cases Client creates new file –Metadata is modified Client modifies file contents –File data is modified Client extends file –Both file and metadata are modified

11 11 Timeline of Typical Session

12 12 USB/MSDC Principles Command Block Wrapper (CBW) Command Status Word (CSW) Identify device as removable media Use Unit Attention condition to notify host of changed data

13 13 Implementation Requirements – Device Side Identify as removable media device Use Unit Attention condition to notify host of media content change Implement a structured block device and cache interface Implement file system locking which is exposed to the USB driver

14 14 Implementation Requirements – Host Side Implement eject media operation when file work is complete. Can be user-driven (explicit drive letter eject) Can be software-driven (close files and unmount/eject) Behavioral differences between OSes

15 15 The System Model

16 16 Summary Correct operation under concurrent access conditions is obtained by: –Implicit locking based on USB media access –Explicit release via media eject operation –Use of Unit Attention condition Features –No new driver added to host operating system –Minimal requirements on device (best practices)

17 17 Enhancements and Future Work Would like to remove explicit eject requirement on host –Use SCSI_RESERVE commands to manage locking epoch begin and end –Requires Installable File System (IFS) driver

18 18 Thank You


Download ppt "Implementation of Concurrent Access to File Systems in USB Devices GSPx 2004 Bogdan Vacaliuc."

Similar presentations


Ads by Google