Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Five general operations can be performed on a volume:

  • A volume can be opened (mounted). During the opening of a volume, file system control structures are read from the underlying device, parsed and verified.
  • Files can be accessed on a volume. A file is a linear data sequence (‘file contents’) associated with some logical, typically human-readable identifier (‘file name’). Additional properties, such as size, update date/time and access mode (e.g., read-only, write-only, read-write) may be associated with a file. File accesses constitute reading data from files, writing data to files, creating new files, renaming files, copying files, etc. File access is accomplished via file module-level functions, which are covered in Chapter 8, “Files”.
  • Directories can be accessed on a volume. A directory is a container for files and other directories. Operations include iterating through the contents of the directory, creating new directories, renaming directories, etc. Directory access is accomplished via directory module-level functions, which are covered in Chapter 9, “Directories”.
  • A volume can be formatted. (More specifically, high-level formatted.) Formatting writes the control information for a file system to the partition on which a volume is located.
  • A volume can be closed (unmounted). During the closing of a volume, any cached data is written to the underlying device and associated structures are freed.
  • For information about using volume names, see section 4-2 “μC/FS Device and Volume Names”. For FAT-specific volume functions, see Chapter 4, “File Systems: FAT”.

    Function

    Description

    Valid for Unmounted Volume?

    FSVol_CacheAssign()

    Assign cache to volume.

    Yes

    FSVol_CacheInvalidate()

    Invalidate cache for volume.

    No

    FSVol_CacheFlush()

    Flush cache for volume.

    No

    FSVol_Close()

    Close (unmount) volume.

    Yes

    FSVol_Fmt()

    Format volume.

    Yes

    FSVol_IsMounted()

    Determine whether volume is mounted.

    Yes

    FSVol_LabelGet()

    Get volume label.

    No

    FSVol_LabelSet()

    Set volume label.

    No

    FSVol_Open()

    Open (mount) volume.

    -----

    FSVol_Query()

    Get volume information.

    Yes

    FSVol_Rd()

    Read sector on volume.

    No

    FSVol_Refresh()

    Refresh a volume.

    No

    FSVol_Wr()

    Write sector on volume.

    No

    Table 7-2 Volume API functions

    • No labels