Quantum 3.5 Model Vehicle User Manual


 
Appendix D Quality of Service Guide
Real-time I/O
StorNext 3.5 Installation Guide 150
Also, assume there is only one stripe group for user data in the file
system. As recommended by Quantum, there may be other stripe groups
for metadata and journal that are not shown.
SetRtio 4
Initially, all stripe groups in the file system are in non-real-time mode.
Clients make their requests directly to the I/O subsystem without any
gating. In our example, the process requires 186 MB/sec and the system
designers know there will never be a need to support more than one
stream at 186 MB/sec.
The SetRtio request has a number of flags and parameters to control its
operation. These are all documented in the
external_api.pdf file that
describes the external API in detail. For this example, set the handle for
the indicated stripe group using the
RT_SET parameter.
Oversubscription 4
In most cases, system designers ensure that the amount of RTIO is not
oversubscribed. This means that processes will not ask for more
RTIO
than is specified in the configuration file. However, it is possible to
request more
RTIO than is configured. The API uses the RT_MUST flag to
indicate that the call must succeed with the specified amount. If the flag is
clear, the call allocates as much as it can. In both cases, the amount
allocated is returned to the caller.
Handles 4
The SetRtio call accepts two different types of handles. The first is a
handle to the
root directory. In this mode the stripe group is put into real-
time mode, but no specific file handle is tagged as being
ungated. Real-
time I/O continues on the stripe group until it is explicitly cleared with a
SetRtio call on the root directory that specifies the RT_CLEAR flag; the file
system is unmounted; or the system is rebooted. It is up to the application
to make a subsequent call to
EnableRtio (F_ENABLERTIO) on a specific
handle.
If the handle in the SetRtio call refers to a regular file, it is the equivalent
of a
SetRtio call on the root directory followed by an EnableRtio call. The
file handle will be ungated until it is closed, cleared (
RT_CLEAR in a
SetRtio call), or disabled (DisableRtio). When the handle is closed, the
amount of real-time I/O is released back to the system. This causes the
FSM to readjust the amount of bandwidth available to all clients by
issuing a series of callbacks.