Returns a specified item of information for a specified device. Format F$GETDVI(device-name,item[,pathname])
1 – Return Value
Either an integer or a character string, depending on the item you request.
2 – Arguments
device-name Specifies a physical device name or a logical name equated to a physical device name. Specify the device name as a character string expression. After the device-name argument is evaluated, the F$GETDVI function examines the first character of the name. If the first character is an underscore (_), the name is considered a physical device name; otherwise, a single level of logical name translation is performed and the equivalence name, if any, is used. item Specifies the type of device information to be returned. The item must be specified as a character string expression. You can specify any one of the items listed below. For detailed descriptions of each item code, see the VSI OpenVMS DCL Dictionary. Items marked with a ** are valid for Integrity servers only. Items marked with a * are valid for Alpha and Integrity servers only. Items marked with a + are typically used with the pathname argument. ACCESSTIMES_RECORDED* ACPPID ACPTYPE ALL ALLDEVNAM ALLOCLASS ALT_HOST_AVAIL ALT_HOST_NAME ALT_HOST_TYPE AVAILABLE_PATH_COUNT* AVL CCL CLUSTER CONCEALED CYLINDERS DEVBUFSIZ DEVCHAR DEVCHAR2 DEVCLASS DEVDEPEND DEVDEPEND2 DEVICE_MAX_IO_SIZE* DEVICE_TYPE_NAME DEVLOCKNAM DEVNAM DEVSTS DEVTYPE DFS_ACCESS DIR DMT DUA ELG ERASE_ON_DELETE* ERRCNT+ERROR_RESET_TIME* EXISTS EXPSIZE* FC_HBA_FIRMWARE_REV FC_NODE_NAME FC_PORT_NAME FOD FOR FREEBLOCKS FULLDEVNAM GEN HARDLINKS_SUPPORTED* HOST_AVAIL HOST_COUNT HOST_NAME HOST_TYPE IDV LAN_ALL_MULTICAST_MODE* LAN_AUTONEG_ENABLED* LAN_DEFAULT_MAC_ADDRESS* LAN_FULL_DUPLEX* LAN_JUMBO_FRAMES_ENABLED* LAN_LINK_STATE_VALID LAN_LINK_UP* LAN_MAC_ADDRESS* LAN_PROMISCUOUS_MODE* LAN_PROTOCOL_NAME* LAN_PROTOCOL_TYPE* LAN_SPEED* LOCKID LOGVOLNAM MAILBOX_BUFFER_QUOTA* MAILBOX_INITIAL_QUOTA* MAXBLOCK MAXFILES MBX MEDIA_ID MEDIA_NAME MEDIA_TYPE MNT MOUNT_TIME* MOUNTCNT MOUNTVER_ELIGIBLE* MPDEV_AUTO_PATH_SW_CNT* MPDEV_CURRENT_PATH* MPDEV_MAN_PATH_SW_CNT* MT3_DENSITY MT3_SUPPORTED MULTIPATH* MVSUPMSG* NET NEXTDEVNAM NOCACHE_ON_VOLUME* NOHIGHWATER NOSHARE_MOUNTED* ODS2_SUBSET0* ODS5* ODV OPCNT+ OPR OWNUIC PATH_AVAILABLE*+ PATH_NOT_RESPONDING*+ PATH_POLL_ENABLED*+ PATH_SWITCH_FROM_TIME*+ PATH_SWITCH_TO_TIME*+ PATH_USER_DISABLED*+ PID PREFERRED_CPU PREFERRED_CPU_BITMAP* PROT_SUBSYSTEM_ENABLED* QLEN* RCK RCT REC RECSIZ REFCNT REMOTE_DEVICE RND ROOTDEVNAM RTM SCSI_DEVICE_FIRMWARE_REV* SDI SECTORS SERIALNUM SERVED_DEVICE SET_HOST_TERMINAL SHDW_CATCHUP_COPYING SHDW_COPIER_NODE* SHDW_DEVICE_COUNT* SHDW_GENERATION* SHDW_MASTER SHDW_MASTER_MBR* SHDW_MASTER_NAME SHDW_MBR_COPY_DONE* SHDW_MBR_COUNT* SHDW_MBR_MERGE_DONE* SHDW_MBR_READ_COST* SHDW_MEMBER SHDW_MERGE_COPYING* SHDW_MINIMERGE_ENABLE* SHDW_NEXT_MBR_NAME SHDW_READ_SOURCE* SHDW_SITE* SHDW_TIMEOUT* SHR SPL SPLDEVNAM SQD SSD_LIFE_REMAINING** SSD_USAGE_REMAINING** STS SWL TOTAL_PATH_COUNT* TRACKS TRANSCNT TRM TT_ACCPORNAM TT_ALTYPEAHD TT_ANSICRT TT_APP_KEYPAD TT_AUTOBAUD TT_AVO TT_BLOCK TT_BRDCSTMBX TT_CHARSET TT_CRFILL TT_CS_HANGUL TT_CS_HANYU TT_CS_HANZI TT_CS_KANA TT_CS_KANJI TT_CS_THAI TT_DECCRT TT_DECCRT2 TT_DECCRT3 TT_DECCRT4 TT_DIALUP TT_DISCONNECT TT_DMA TT_DRCS TT_EDIT TT_EDITING TT_EIGHTBIT TT_ESCAPE TT_FALLBACK TT_HALFDUP TT_HANGUP TT_HOSTSYNC TT_INSERT TT_LFFILL TT_LOCALECHO TT_LOWER TT_MBXDSABL TT_MECHFORM TT_MECHTAB TT_MODEM TT_MODHANGUP TT_NOBRDCST TT_NOECHO TT_NOTYPEAHD TT_OPER TT_PAGE TT_PASTHRU TT_PHYDEVNAM TT_PRINTER TT_READSYNC TT_REGIS TT_REMOTE TT_SCOPE TT_SECURE TT_SETSPEED TT_SIXEL TT_SYSPWD TT_TTSYNC TT_WRAP UNIT VOLCHAR* VOLCOUNT VOLNAM VOLNUMBER VOLSETMEM VOLSIZE* VOLUME_EXTEND_QUANTITY* VOLUME_MOUNT_GROUP* VOLUME_MOUNT_SYS* VOLUME_PENDING_WRITE_ERR* VOLUME_RETAIN_MAX* VOLUME_RETAIN_MIN* VOLUME_SPOOLED_DEV_CNT* VOLUME_WINDOW* VPROT WCK WRITETHRU_CACHE_ENABLED* WWID* ** Integrity servers only * Alpha and Integrity servers only + Used with the pathname argument. pathname (Alpha/Integrity servers only) Specifies a path name for a multipath-capable device. Specify the path name as a character string expression. Item codes that use the pathname argument are identified by a + in the item code list. In general, item codes that return information that can vary by path do use the pathname argument. You can see the paths for a multipath device by using the SHOW DEVICE /FULL command, the SYS$DEVICE_PATH_SCAN system service, or the F$MULTIPATH lexical function. If the pathname argument is specified, it is validated against the existing paths for the specified device. If the path does not exist, the NOSUCHPATH error is returned - even if the specified item code does not make use of the pathname argument.
3 – Examples
1.$ ERR = F$GETDVI("_DQA0","ERRCNT") $ SHOW SYMBOL ERR ERR = 0 Hex = 00000000 Octal = 000000 This example shows how to use the F$GETDVI function to return an error count for the device DQA0. You must place quotation marks (" ") around the device name DQA0 and the item ERRCNT because they are string literals. 2.$ LIBRARY/EXTRACT=$DCDEF/OUTPUT=$DCDEF.TXT SYS$LIBRARY:STARLET.MLB This example shows how to create a file, $DCDEF.TXT, containing a list of values for device types and device classes from the STARLET library. The device classes begin with 'DC$', and device types begin with 'DT$'. Note that most modern SCSI disks and tapes return the generic DEVTYPE code (DT$_GENERIC_DK or DT$_GENERIC_MK), therefore you should use the DEVICE_TYPE_NAME item: $ X=F$GETDVI("XDELTA$DKA0:","DEVICE_TYPE_NAME") $ SHOW SYMBOL X X = "RZ29B" 3.$ WRITE SYS$OUTPUT F$GETDVI ( "$1$DGA30", "PATH_SWITCH_TO_TIME", - _$ "PGA0.5000-1FE1-0001=5782" ) 19-MAY-2006 14:47:41.77 This example shows the use of the optional path name parameter for F$GETDVI. If a path is not specified, information for the multipath current path is returned. To determine the paths for a multipath device, use the F$MULTIPATH lexical function. 4.$ SSD_USAGE_REMAINING = F$GETDVI("DKA100:","SSD_USAGE_REMAINING") $ SHOW SYMBOL SSD_USAGE_REMAINING SSD_USAGE_REMAINING = 100 Hex = 00000064 Octal = 00000000144 $ SSD_LIFE_REMAINING = F$GETDVI("DKA100:","SSD_LIFE_REMAINING") $ SHOW SYMBOL SSD_LIFE_REMAINING SSD_LIFE_REMAINING = 610372 Hex = 00095044 Octal = 00002250104 This example shows how to use the F$GETDVI function to return the wear out gas gauge data for the Solid State Drive (SSD) connected to a node in the Host Bus Adapters (HBA) mode and returns "-1" for other disks. SSD_USAGE_REMAINING - Reports in percentage the remaining life of SSD available for use. SSD_LIFE_REMAINING - Estimates the remaining life, in days, of the SSD drive based on its percent usage remaining. Note: The return value of SSD_USAGE_REMAINING "0" indicates that the device is worn out; it cannot accept any more writes and requires replacement. The estimated wear out information is based on the workload the device is running and the calculation is based on the endurance usage reported by VSI SSD drives.