VAX-11 RMS ENHANCEMENTS o Prolog 3 ISAM Enhancements o Enhanced Filenames o Cluster File Sharing o Miscellaneous Enhancements o Improved Utilities ISAM PROLOG 3 ENHANCEMENTS o Alternate keys are now permitted o All key types are allowed: - String - Signed and unsigned 2-byte binary - Signed and unsigned 4-byte binary - Decimal o New key data types: signed and unsigned 8-byte binary (quadword) RMS FILE NAME ENHANCEMENTS o EXPANDED FIELD SIZES AND ADDITIONAL CHARACTERS o File name and file type fields increased to 39 characters each. o Two new characters are allowed in the file name and file type fields. These are: "$" (dollar sign) and "_" (underscore). RMS FILE NAME ENHANCEMENTS o SEARCH LISTS - Multiple file specifications contained within a single logical name. - Any file name component may be specified in a search list logical name. RMS FILE NAME ENHANCEMENTS (Cont.) o SEARCH LISTS - New NAM block flag indicating a search list logical name is present in the current file name specification: NAM$V_SEARCH_LIST. - A search list logical name is allowed any place in file specification that logical names are currently allowed. - Search list can provide "wildcard" devices. RMS FILE NAME ENHANCEMENTS (Cont.) o SEARCH LISTS - Search list processed for $OPEN, $PARSE/$SEARCH. - Create - if option supported. - Search list ignored for $CREATE, first specification is used. RMS FILE NAME ENHANCEMENTS o ROOTED DIRECTORIES AND CONCEALED DEVICE NAMES - Rooted directories have been generalized and expanded to allow 8 levels of rooted directories. - New syntax for access to "root" level: ROOT:[000000]. Relative references within rooted directory are permitted, i.e., ROOT:[-.FOO] is valid. - A concealed logical name is no longer characterized by double underscore. A concealed name is indicated by the CONCEALED attribute available through the new logical name services. - CONCEALED attribute implies the TERMINAL attribute. o SYS$FILESCAN - New system service to parse VMS file name specification syntax. - Does not apply any defaulting. - Does not do logical name translation. - Does not Assign a channel or do directory lookups. - Can return descriptions of each file component present in a string. - Can return a set of flags indicating which components are present. CLUSTER FILE SHARING o RMS file sharing works transparently in a cluster. o Processes on multiple nodes can share files and get full RMS record locking features. o Global buffers are supported on a per-node basis. MISCELLANEOUS ENHANCEMENTS o Record locking enhancements - RMS fully uses VMS lock manager for all locking - timeout on record lock now available if record locked then if WAT bit set then if TMO bit set then wait for RAB$B_TMO seconds (0-255) else wait forever (until record unlocked) else return RMS$_RLK error to caller MISCELLANEOUS ENHANCEMENTS o $RENAME rewritten - error recovery improved - DECnet (DAP) support added o echo SYS$INPUT to SYS$OUTPUT - SET VERIFY, or SET VERIFY=([NO]IMAGE,[NO]PROCEDURE) - reads to SYS$INPUT are "echoed" to SYS$OUTPUT - result: batch log files will include data lines input to programs MISCELLANEOUS ENHANCEMENTS (Cont.) o RMS internal memory allocation improvements - memory allocated in 128 page chunks (instead of 2) - size of process I/O segment is now a SYSGEN parameter (PIOPAGES) o Security enhancements - channel & logical name access mode parameters - RMS interface to access control lists (ACLs) MISCELLANEOUS o Terminal XAB - allows user to specify ANY terminal driver read modifiers on a terminal read thru RMS - user provides terminal driver item list - attach XABTRM to RAB and set new ROP bit in RAB: ETO (extended terminal operation) - XABTRM format: $XABTRM ITMLST=item_list_address ITMLST_LEN=item_list_length MISCELLANEOUS ENHANCEMENTS o Much of ISAM re-written for improved performance and reliability o $DISPLAY re-written; fills in all known FAB, XAB and NAM fields o Improved DAP performance - Larger DAP buffers - Size controlled by SYSGEN parameter: RMS_DFNBC - No record size limit RMS UTILITIES o ANALYZE/RMS_FILE - New /SUMMARY qualifier - Supports all Prolog 3 ISAM files - New ANALYSIS_OF_KEY attribute o CONVERT and CONVERT/RECLAIM - Supports all Prolog 3 ISAM files - Uses new SORT-32 - Twice as fast - Improved error reporting EDIT/FDL o Seven scripts instead of three o Specifiable defaults for some questions o /NOINTERACTIVE option to optimize script o New tuning algorithms o Substantially smaller image o Tracks Prolog 3 ISAM changes o Supports segmented keys FDL (File Definition Language) o Has new primary and secondary attributes. o New FDL primaries: - ACCESS - CONNECT - SHARING o Tracks all new RMS features o Supports run-time RMS features FDL (File Definition Language) (Cont.) o New FDL FILE secondaries, including: o CLUSTER_SIZE o SEQUENTIAL_ONLY o CREATE_IF o TEMPORARY o NON_FILE_STRUCTURED o USER_FILE_OPEN o OUTPUT_FILE_PARSE o WINDOW_SIZE o magtape positioning options FDL ROUTINES o FDL$CREATE -- creates a file from an FDL specification and then closes the file o FDL$GENERATE -- produces an FDL specification from RMS control block the user supplies and then writes it either to an FDL file or to a character string o FDL$PARSE -- parses an FDL specification, allocates RMS control blocks (FABs, RABs, or XABs), and fills in the relevant fields o FDL$RELEASE -- deallocates the memory used by the RMS control blocks created by FDL$PARSE. The FAB and its attachments can be released either together with or separately from the RAB and its attachments, and vice versa