Implementation of concurrent access to file systems in usb devices
Download
1 / 18

Implementation of Concurrent Access to File Systems in USB Devices - PowerPoint PPT Presentation


  • 69 Views
  • Uploaded on
  • Presentation posted in: General

Implementation of Concurrent Access to File Systems in USB Devices. GSPx 2004 Bogdan Vacaliuc. Overview. Advocacy Description of the problem Related Work Description of a solution Implementation Requirements Enhancements. Why do we need this?.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha

Download Presentationdownload

Implementation of Concurrent Access to File Systems in USB Devices

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Implementation of concurrent access to file systems in usb devices

Implementation of Concurrent Access to File Systems in USB Devices

GSPx 2004

Bogdan Vacaliuc


Overview

Overview

  • Advocacy

  • Description of the problem

  • Related Work

  • Description of a solution

  • Implementation Requirements

  • Enhancements

2


Why do we need this

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 …

3


The concurrency problem

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.

4


The system model

The System Model

5


Related work

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

6


A solution

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

7


A solution cont

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.

8


Serializing access

Serializing Access

9


Use cases

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

10


Timeline of typical session

Timeline of Typical Session

11


Usb msdc principles

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

12


Implementation requirements device side

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

13


Implementation requirements host side

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 OS’es

14


The system model1

The System Model

15


Summary

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)

16


Enhancements and future work

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

17


Thank you

Thank You

18


ad
  • Login