Mac Developer Library Developer


This manual page is for Mac OS X version 10.9

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • To learn how the manual is organized or to learn about command syntax, read the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Developer Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.

FS_USAGE(1)               BSD General Commands Manual              FS_USAGE(1)

     fs_usage -- report system calls and page faults related to filesystem activity in real-time

     fs_usage [-e] [-w] [-f mode] [-b] [-t seconds] [-R rawfile [-S start_time] [-E end_time]] [pid | cmd
              [pid | cmd] ...]

     The fs_usage utility presents an ongoing display of system call usage information pertaining to
     filesystem activity.  It requires root privileges due to the kernel tracing facility it uses to oper-ate. operate.
     ate.  By default, the activity monitored includes all system processes except the running fs_usage
     process, Terminal, telnetd, sshd, rlogind, tcsh, csh and sh.  These defaults can be overridden such
     that output is limited to include or exclude a list of processes specified by the user.

     The output presented by fs_usage is formatted according to the size of your window.  A narrow window
     will display fewer columns of data.  Use a wide window for maximum data display.  You may override the
     window formatting restrictions by forcing a wide display with the -w option.  In this case, the data
     displayed will wrap when the window is not wide enough.

     The options are as follows:

     -e      Specifying the -e option generates output that excludes sampling of the running fs_usage tool.
             If a list of process IDs or commands is also given, then those processes are also excluded from
             the sampled output.

     -w      Specifying the -w option forces a wider, more detailed output, regardless of the window size.

     -f      Specifying the -f option turns on output filtering based on the mode provided.  Multiple fil-tering filtering
             tering options can be specified.  By default, no output filtering occurs.  The supported modes

             network    Network-related events are displayed.

             filesys    Filesystem-related events are displayed.

             pathname   Pathname-related events are displayed.

             exec       Exec and spawn events are displayed.

             diskio     Disk I/O events are displayed.

             cachehit   In addition, show cache hits.

     -b      Specifying the -b option annotates disk I/O events with BootCache info (if available).

     -t seconds
             Specifies a run timeout in seconds.  fs_usage will run for no longer than the timeout speci-fied. specified.

     -R raw_file
             Specifies a raw trace file to process.

     -S start_time
             If -R is selected, specifies the start time in microseconds to begin processing entries from
             the raw trace file. Entries with timestamps before the specified start time will be skipped.

     -E end_time
             If -R is selected, specifies the ending time in microseconds to stop processing entries from
             the raw trace file.  Entries with timestamps beyond the specified ending time will be skipped.

     pid | cmd
             The sampled data can be limited to a list of process IDs or commands.  When a command name is
             given, all processes with that name will be sampled.  Using the -e option has the opposite
             effect, excluding sampled data relating to the given list of process IDs or commands.

     If you set the DYLD_IMAGE_SUFFIX environment variable to ``_debug'', then an application will use the
     debug version of all libraries, including the Carbon FileManager.  See dyld(1).  When fs_usage is run
     against a Carbon Application launched in this environment, then the high-level Carbon FileManager calls
     will be displayed bracketing the system calls that they are built on.

     The data columns displayed are as follows:

             TOD when call occurred.  Wide mode will have microsecond granularity.

     CALL    The name of the network or filesystem related call, page-in, page-out, or physical disk access.

             Of the form F=x, x is a file descriptor.  Depending on the type of system call, this will be
             either an input value or a return value.

             Of the form B=x, x is the number of bytes requested by the call.

             On error, the errno is displayed in brackets.

             Pathname of the file accessed (up to the last 28 bytes).

             Of the form A=0xnnnnnnnn, where 0xnnnnnnnn is the address being faulted.

             Of the form D=0xnnnnnnnn, where 0xnnnnnnnn is the block number of the physical disk block being
             read or written.

     OFFSET  Of the form O=0xnnnnnnnn, where 0xnnnnnnnn is a file offset.

             Of the form S=x, x is the number of ready descriptors returned by the select() system call.  If
             S=0, the time limit expired.

             The elapsed time spent in the system call.  A `W' after the elapsed time indicates the process
             was scheduled out during this file activity.  In this case, the elapsed time includes the wait

             The process that made the system call.  Wide mode will append the thread id to the process name
             (i.e Mail.nnn).

     fs_usage -w -f filesys Mail

     fs_usage will display file system related data for all instances of processes named Mail.  Maximum data
     output will be displayed in the window.

     dyld(1), latency(1), sc_usage(1), top(1)

Mac OS X                       November 7, 2002                       Mac OS X

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.