io-fs-media Reference

Media filesystem interface

Synopsis:

io-fs-media [-a] [-b] [-cTYPE=num] [-ddriver,options] [-t] [-v] 

Options:

-a
Start all built-in drivers. In this release, only tmp is built in.
-b
Don't run in the background. This setting is used for debugging.
-c TYPE=num
Set the size for a cache type. You can specify multiple -c options to configure different caches. Each cache type (TYPE) can be one of:
  • attrs — number of attributes (default: 32)
  • bundles — number of 64 KB bundles (default: 2)
  • files — maximum number of files per filesystem (default: 1048576)
  • maps — number of extent mappings (default: 512)
  • meta — maximum size of the meta cache (default: 16 KB)
  • pages — number of 4 KB clusters (default: 256)
  • throngs — number of 1 MB throngs (default: 0)
  • wads — number of 256 KB wads (default: 0)
-ddriver,options
Start the specified driver with the specified options. This option prevents any built-in drivers from being started. The available drivers are:
  • tmp (built into io-fs-media)
  • MTP (iofs-pfs.so)
  • iAP1 (iofs-ipod.so)
Note: You should start each driver in its own process because io-fs-media is single-threaded.
-l log_path
Specify the path of the log output file.
-o fsys[=fppat],opt1[,opt2...]]
Override automount options for a particular filesystem. The filesystem type (fsys) is the first token in the argument string, and can be one of:
  • blk — Block filesystem
  • cd — CD-ROM filesystem
  • dos — DOS filesystem
  • et — Embedded transaction filesystem
  • ext — Linux Ext2 filesystem
  • nt — Windows NT filesystem
  • tmp — RAM filesystem
The filesystem type can be followed by =fppat, if you want to apply the options only to mountpoints matching a given file path pattern. For instance, -o dos=/fs/dos,format would format only the DOS filesystem mounted to /fs/dos instead of all DOS partitions. File paths are matched using fnmatch().
The list of option settings follows the filesystem type, with individual settings specified as key-value pairs with an equal sign (=) separating the key and value. Option settings are separated from each other by commas.
There are generic automount options that apply to most or all filesystem types; these options are listed in the mount_parse_generic_args() entry in the QNX Neutrino C Library Reference. There are also automount options that depend on the filesystem type. You can print all of a filesystem's supported options by specifying -o use.
-p priority
Set the internal pulse priority.
-s
Make rename, unlink, chown, and chmod synchronous.
-t
Print the built-in tables to stdout, then exit.
-v
Enable the verbose option for all mounted filesystems.

Description:

The io-fs-media filesystem interface makes distinct media devices and filesystems appear as POSIX-compliant filesystems under QNX Neutrino.

The io-fs-media service supports these media devices and filesystems:

RAM filesystem (tmp)
The tmp driver is statically linked to the io-fs-media binary and supports a temporary POSIX filesystem in RAM. For information on configuring this driver, see Starting the RAM filesystem below.
MTP filesystem
The MTP driver supports access to files on MTP devices. This functionality is provided by the iofs-pfs.so library, which is loaded at runtime. A USB stack is required to use this driver. For information about starting and configuring the MTP driver, see iofs-pfs.so Reference.
iPod filesystem
The iPod driver supports access to files on Apple devices that run the iAP1 protocol. This functionality is provided by the iofs-ipod.so library, which is loaded at runtime. For information about starting and configuring this driver, see the Working with Apple Devices reference available through the Apple documentation package in QNX Software Center.

Starting the RAM filesystem

The tmp driver creates, in RAM, a temporary POSIX filesytem that exists for the duration of the io-fs-media process. You can configure this temporary filesystem by issuing io-fs-media commands with the -dtmp option followed by a comma-separated list defining one or more tmp driver options. The driver supports these options:
use
Print a usage message and then exit.
maxsize=size
The maximum size for the filesystem (in MB). You must provide a number followed by M to indicate the unit (e.g., maxsize=12M).
minsize=size
The minimum size for the filesystem (in MB). You must provide a number followed by M to indicate the unit (e.g., minsize=3M).
mount=path
Assign a mountpoint for the RAM filesystem. The default mountpoint is /fs/tmpfs.
noglob
Don't store the filesystem in global memory. This option is applicable on ARM targets only.

Example:

Suppose you issue this command to configure a temporary filesystem:
# io-fs-media -d tmp,minsize=3M,maxsize=12M -cpages=4 -cbundles=0 

The minsize option sets a minimum filesystem size of 3 MB, which is allocated at startup as contiguous memory. The memory allocation can increase up to the size specified by maxsize as needed. Memory allocated after startup is not necessarily contiguous.

With ARM targets, the behavior is different: at startup, memory is allocated contiguously up to the size in maxsize.