Multiblocking and multibuffering of file operations can enhance the 
speed of I/O operations with RMS. The defaults set with the SET 
RMS_DEFAULT command are applied for all file operations that do not 
specify explicit multiblock or multibuffer counts.
For more information on multiblock and multibuffer operations, see the 
HP OpenVMS System Services Reference Manual.
For indexed files, the SET RMS_DEFAULT command defines default prolog 
level options.
For sequential files, the SET RMS_DEFAULT command defines default 
extensions. If a default extension is not specified in your program, 
the process or system default is used.
For network operations, the SET RMS_DEFAULT command defines network 
buffer sizes for transfer.
/BLOCK_COUNT=count
Specifies a default multiblock count (0 to 127) for record I/O 
operations only, where count is the number of blocks 
to be allocated for each I/O buffer.
For more information on multiblock count, see the description of the 
RAB$B_MBC in the OpenVMS Record Management Services  Reference Manual.
/BUFFER_COUNT=count
Specifies a default multibuffer count (0 to 255) for local file 
operations, where count is the number of buffers to be 
allocated. If you use the /SYSTEM qualifier to extend the default value 
systemwide, the maximum default value is 127.
When you use the /BUFFER_COUNT qualifier, you can use the /DISK, 
/INDEXED, /MAGTAPE, /RELATIVE, /SEQUENTIAL, and /UNIT_RECORD qualifiers 
to specify the types of file for which the default is to be applied. If 
the /BUFFER_COUNT qualifier is specified without any of these 
qualifiers, the /SEQUENTIAL qualifier is assumed. If file type is not 
specified, the default is applied to sequential files.
For more information on multibuffer count, see the description of the 
RAB$B_MBF field in the OpenVMS Record Management Services  Reference Manual.
/CONTENTION_POLICY=keyword [/SYSTEM]
Allows you to specify fairness under high contention conditions for 
write-shared files at the process or system level. Note that selecting 
this option may noticeably increase locking overhead.
This option is disabled by default.
In a mixed cluster environment with high contention for specific 
buckets, it is possible for accesses to write-shared files on nodes 
using read-mode global bucket locking to dominate access to a bucket. 
Nodes without this support might be denied timely access to the bucket.
Additionally, it is possible to observe comparable behavior on all 
OpenVMS versions when dealing with accesses to write-shared files 
without global buffers enabled. A similar fairness issue between lock 
conversions and new lock requests may be observed in which the new lock 
requests may remain ungranted for an extended period of time. Use the 
/CONTENTION_POLICY qualifier to specify fairness under high contention 
conditions.
The following table lists valid PROCESS keywords (/SYSTEM not 
specified):
  
    | Keyword  | 
    Description  | 
  
  
    | 
      NEVER
     | 
    
      Never use the higher overhead option to improve fairness for any 
      write-shared files accessed by this process; minimal overhead.
     | 
  
  
    | 
      SOMETIMES
     | 
    
      Use this option for fairer bucket access (but higher overhead) to any 
      write-shared files with global buffers enabled accessed by this process.
     | 
  
  
    | 
      ALWAYS
     | 
    
      Use this option for fairer bucket access (but higher overhead) to all 
      write-shared files accessed by this process.
     | 
  
  
    | 
      SYSTEM_DEFAULT (default)
     | 
    
      Use system setting. Note that this keyword is disallowed with /SYSTEM.
     | 
  
The following table lists valid SYSTEM keywords (/SYSTEM also 
specified):
  
    | Keyword  | 
    Description  | 
  
  
    | 
      NEVER (default)
     | 
    
      Never use the higher overhead option to improve fairness for any 
      write-shared files accessed on the system; minimal overhead.
     | 
  
  
    | 
      SOMETIMES
     | 
    
      Use this option for fairer bucket access (but higher overhead) to any 
      write-shared files with global buffers enabled accessed on the system.
     | 
  
  
    | 
      ALWAYS
     | 
    
      Use this option for fairer bucket access (but higher overhead) to all 
      write-shared files accessed on the system.
     | 
  
/DISK
Applies the specified defaults to disk file operations. Values applied 
using the /SEQUENTIAL qualifier take precedence over values applied 
using the /DISK qualifier.
/EXTEND_QUANTITY=n
Specifies the number of blocks n to extend a sequential file 
where n can range from 0 to 65535. If you do not specify the 
/EXTEND_QUANTITY qualifier, RMS calculates its own extend value. The 
/EXTEND_QUANTITY qualifier value is used when the program does not 
specify an extent quantity explicitly.
/INDEXED
Applies the multibuffer default to indexed file operations.
/MAGTAPE
Applies the multibuffer default to magnetic tape operations. Values 
applied using the /SEQUENTIAL qualifier take precedence over values 
applied using the /MAGTAPE qualifier.
/NETWORK_BLOCK_COUNT=count
Specifies a default block count (0 to 127) for network access to remote 
files, where count is the number of blocks to be allocated for each I/O 
buffer.
For remote file access, the buffer size is negotiated between RMS and 
the remote system's file access listener (FAL) with the smaller of the 
two sizes being selected.
Thus, the /NETWORK_BLOCK_COUNT value places an upper limit on the 
network buffer size that is used. It also places an upper limit on the 
largest record that may be transferred to or from a remote file. The 
largest record must be less than or equal to 512*network_block_count. 
(The network_block_count is in block units and the record is in byte 
units.)
If you omit the value or specify a value of 0, RMS uses the systemwide 
block count value. If this value is also 0, RMS uses a size of one 
block.
/PROLOG=n
Specifies a default prolog level for indexed files where acceptable 
values for n are 0, 2, or 3. If 0 (default) is specified, RMS 
sets an appropriate prolog level.
/QUERY_LOCK=keyword [/SYSTEM]
Enables or disables query locking at the process and system levels.
The following table lists valid PROCESS keywords (/SYSTEM not 
specified):
  
    | Keyword  | 
    Description  | 
  
  
    | 
      DISABLE
     | 
    
      Disable query locking for the duration of any file opens done by images 
      within the process for any read ($GET or $FIND) record operations that 
      have both RAB$V_NLK (no lock) and RAB$V_RRL (read-regardless) set in 
      the RAB$L_ROP field of the RAB (Record Access Block). Disabling query 
      locking directs RMS not to make any calls to the lock manager for a 
      read record operation just to find out whether a record is locked by 
      another stream.
     | 
  
  
    | 
      ENABLE
     | 
    
      Use RMS's default record locking for images run within this process.
     | 
  
  
    | 
      SYSTEM_DEFAULT (default)
     | 
    
      Use system setting. Note that this keyword is disallowed with /SYSTEM.
     | 
  
The following table lists valid SYSTEM keywords (/SYSTEM also 
specified):
  
    | Keyword  | 
    Description  | 
  
  
    | 
      DISABLE
     | 
    
      Disable query locking for the duration of any file opens done by images 
      on the system for any read ($GET or $FIND) record operations that have 
      both RAB$V_NLK (no lock) and RAB$V_RRL (read-regardless) set in the 
      RAB$L_ROP field of the RAB (Record Access Block). Disabling query 
      locking directs RMS not to make any calls to the lock manager for a 
      read record operation just to find out whether a record is locked by 
      another stream.
     | 
  
  
    | 
      ENABLE (default)
     | 
    
      Use RMS's default record locking for images run within this process.
     | 
  
There is no system parameter associated with the QUERY_LOCK setting.
/RELATIVE
Applies the multibuffer default to relative file operations.
/SEQUENTIAL (default)
Applies the multibuffer default to sequential file operations. The 
/SEQUENTIAL qualifier overrides values applied using either the /DISK, 
the /MAGNETIC TAPE, or the /UNIT RECORD qualifier.
The /SEQUENTIAL qualifier is the default if you do not specify either 
the /RELATIVE or the /INDEXED qualifier.
/SYSTEM
Requires CMKRNL (change mode to kernel) privilege.
Applies specified defaults on a systemwide basis to all file operations.
Systemwide settings are implemented as system parameters, with the 
exception of /QUERY_LOCK. For a systemwide setting to survive a system 
reboot, it must be written to the system parameter file by using SYSGEN.
/UNIT_RECORD
Applies the multibuffer default to file operations on unit record 
devices. Values applied using the /SEQUENTIAL qualifier take precedence 
over values applied using the /UNIT_RECORD qualifier.