Cullen Programming

Virtual Machine Resource System Monitor


Historical Record of Improvement and Change


Date and the Description of Change

04-28-21 Unified I/O Handler and improved displays. Display recovery when suffering a logical or physical console terminal loss. Common cursor and command-line management. Removal of softcopy. Reduce use of CPU resources.

05-19-20 Remove redundant code in VMUSERS used to drop idle or logged off users from display. Same logic also employed with VMDEVICE display.

04-14-20 Corrected 4-digit display of cylinder position to 5-digits

03-25-19 Corrected VMUSERS calculation of next base cpu usage cycle when displayed screen has been externally halted by way of hardware or TCPIP connection failure.

03-01-19 Updated HYPERSWAP reconfig statuses on the RDEVice display.

02-08-19 Re-align VMGUEST display. Add VDISK I/O count, page wait count and page count for this virtual machine in the DPA. Show Secondary Console Interface Facility user, if any.

01-15-19 Make version available for zVM7.1.

04-16-18 Modified VMEMORY screen to accommodate selectable memory addresses using cursor+ENTER or by clicking field.

03-20-18 Correct missing reset screen attribute in SYSTEM function that caused display misalignment.

11-15-17 VMGUEST accommodates up to 32 virtual CPs when calculating guest CPU consumption. Fixed ABEND when monitoring a guest that gets logged off; now reverts to machine of user. Change VMUSERS to show only the relative CPU consumption of its base CPU. This increases the performance and lowers the overhead of this process.

10-29-17 Modified to accommodate up to 32 (formerly 8) CPUs when calculating system CPU consumption, WAIT and EXT times. Added new display clickable from VMSYSTEM screen, which breaks down the CPU activity for each CP engine. (zVM 6.4 only)

08-22-17 Made fields in various display functions pen-selectable and clickable, which brings up the detail for that selection. This include the devices in the VMDEVICE, users in VMUSERS, virtual device configuration in VMGUEST, rdevblok field in RDEV, and others. Clicking the arrow (==>) or the label V M / R S M of any function displays will return you to the prior display. (zVM 6.4 only)

05-12-17 Allow return to menu by clicking the VMRSM literal on any function display. Common screen preparation and rendering subroutines for all functions. VMGUEST function accepts cursor select to show all virtual devices for this user.

05-05-17 Change the HELP/MENU screen to accept "Point_and_Click" to change monitoring displays. You can move the cursor and then hit the ENTER Key, or use the Mouse to affect change in monitoring. The menu screen was redesigned for ease of use during selection/clicking. The VMGUEST display will accept a cursor or click on the VMDBK field to switch to realtime display of the VMDBK block.

04-22-17 Make version available for zVM6.4.

07-03-16 Show percent of STORAGE OVERCOMMITMENT on VM Storage display.

06-29-16 Save xMSG, WNG and xCONIO settings upon invocation and restore settings upon exit.

06-27-16 Updated the VMUSERS screen to show the current Total Virtual-to-Real Storage Ratio.

01-20-16 Changed the Paging I/O rate on the VMSYSTEM display from rate calculated over the last sampling interval, to the SMOOTHED rate calculated by the VM Control Program.

01-17-16 Updated User Guide for readability.

01-16-16 Update VMGUEST display to show device or NSS name ipled, and Load Parameter if any used. Breakdown and show timeslice for supervisor and problem modes. Make display more readable.

06-26-15 Under VMGUEST display show the VMDBK status for Diagnose Flags, User Options, Guest Simulation Features, Storage Options and VM user Emulation Controls.

01-07-15 zVM6.x change: Updated RDEV display. Included device model and control unit model; added reserve locks granted and locks deferred. States of hyperswap activity. Reorganized display fields for readability.

10-21-14 Beta for upcoming zVM6.3 changes.

08-09-14 Correct system total wait calculation when multiple CPUs present.

05-19-14 New function (VMEMORY) to show live view of real storage updated by the second. User can choose any valid memory location. Display shows full screen in rows of 16 formatted bytes of both hex and character views.

03-13-14 Modified VMPSA to reinit variables upon re-enter from another display, to reduce statistical spiking.

02-02-14 VMRSM update for zVMv6r3.

01-11-14 Correction to allow for page counts in excess of the 2G line. Remove expanded storage page count from Users display, replaced with Page Wait count.

12-14-13 Implemented option to REFRESH the real device list in the event that new devices were dynamically added/deleted into the I/O configuration after the start of monitor. Allowed separated view of CLASSPEC device classes into OSA, CTCA, FCP and ALL under peripheral devices activity.

08-16-13 Identify Fiber Channel (FCP), Open System Adapters (OSA) and Channel-to-Channel Adapters (CTCA) device types under VMDEVICE display subcategory SPEC. Also updated the zVM v5.4 version with the same

07-20-13 Corrected reporting of CHPID 00.

07-04-12 Correct error in date calculation logic.
05-17-12 Beta version available for zVM6.2.

03-26-11 Introduce multi-threading exec use.

11-28-10 Correct traverse of double-linked chain data structure used in Backward/Forward operations on displays of VMUSERS, VDEV, VMCHANS and VMDEVICE. Ensure that traverse of VMDBK chain is short circuited to prevent loop in the event that VMDBKs are rearranged by CP.

11-03-10 Show device and control unit types under VOLSER of device microscope. Show device PAV or HyperPAV indicators.

10-24-10 Correct bug during transition between ALL and ACTIVE modes. Show real volume serial of minidisk extent in VDEV display of VMGUEST.

10-20-10 Show beginning and ending minidisk cylinder on VDEV subdisplay of VMGUEST.

10-12-10 Show count of currently categoried monitored virtual machines under the VMUSERS display.

10-05-10 Option to show all devices, whether inactive or active in VMDEVICE Options to filter virtual machines that are consuming CPU, show performers of IO, show ALL machines regardless or show if using CPU or IO or Paging. Improve scrolling based up detected screen size.

09-14-10 Upgraded for zVM5.4 Control Block logic. Implemented Guest "Virtual Device Configuration" display. Updated HELP screen. Improved command-line action and navigation. Enhanced VMUSERS, VMDEVICES,and VDEV displays to permit scrolling Forward/Backward since many users of zVM have hundreds of guests and devices. The former limit was 43 lines of information. This has been extended to 4000. Added "Paging Cyl in Use" and "Paging Slots in Use" to VMSTORAGE display.

08-25-10 Increase available storage for up to 4096 devices. Expand various fields to accommodate order of magnitude greater storage sizes. Re-align display fields.

08-08-08 Updated for zVM v5.3 Correct utilization bar graphics on VMGUEST display. Reformat VMSYSTEM general display. Correct storage utilization calculation for zVM. Identify active chpids for updated Rdev control block.

11-19-04 Correct System Resource Service Level indicator on Users Display. The old calculation was using the instantaneous number of users in-queue which was found to be much to low to be statistically correct for this purpose. Changed the calculation to use the smoothed number which contained a statistically more accurate value. Removed column that showed virtual storage size of virtual machine and replaced with share of resources. Prevent percentage of SIEs Intercepted to exceed 100 percent. This problem may occur when CP delays updating SIE counters.

07-30-04 Show number of logons since IPL. Show number of active NSS segments. Show number of active DCSS and SSP segments. Better display alignment.

07-29-04 Show device Function_Pending time on device microscope display. Change device utilization calculation to include Function_Pending time. utilization = (connect + disconnect + function_pending(for interval)) divided by the sampling interval time. Move device VOLSER (if any) to top portion of RDEV display.

07-27-04 Update for use on zVM version 4.4 Accomodate monitoring of 64-bit virtual machines. Show PSW for ESA/390 and z-mode 64-bit virtual machines. Restore view of Control Registers for virtual machines.

07-18-02 Add new information fields for z/VM version. VMSYSTEM: Spool Files created and purged, IPL sysres name along with device number, VMDEVICE: Show only active devices that generate > 0.5% of class I/Os.

06-15-02 Build and test programming for z/VM v3.1 31-bit mode.

01-20-01 Correct Fixed-Point Divide Exception possible occurrence when determining interval seconds, should virtual clocking not be updated syncronously with realtime and time differentiation results in negative or zero.


12-19-00 Update screen handling for the CP "rolling" message console facility.

12-17-00 Add logic to recover CP "rolling" message console facility following the use of the ClearKey.

12-12-00 Correct screen overrun (PROG754) on VMDBK display.

10-22-00 Correct possible loop condition in VDEV and RDEV displays.

09-29-00 Subprogam "convert to zoned display" procedures that are common to all product programs. Update RDEV display real device states.

09-28-00 Improve handling of x'8E' situations coming from Diag x'58' screen I/O. Improve screen I/O error routines.

09-20-00 Include SPECIAL class in VMDEVICE display. The class SPECIAL would include CTCAs, 3088s and 37xx devices among others. Prior classes were DASD, TAPE, GRAF and UR.

09-16-00 Capability to enter CP Commands and capture response under control of a "rolling" console with scrolling features. Implemented as scope transition command named "CP". Allows user to make adjustments via CP without leaving and re-entering monitor environment. Update the VMRSM EXEC to allow capture of IUCV messaging needed to support the CP command.

09-15-00 Introduce unified "interrupt wait" mechanism. Enhance interrupt handling. Increase performance of display panel startup.

09-14-00 Correct VMDWVDEV field in VMDBK display. Add indicator fields for VMDDLCTX (Dispatching Controls) in VMDBK display. Update documentation for above change and for FTP download.

01-18-00 Support for VM/ESA v2.4 Miscellaneous enhancements and corrections.











** Maintenance and Development prior to Jan 1, 2000

01-23-90 Prototype VMSAVAK performance monitor for VM/XA environment. VMSAVAK was modified with VM/XA mapping and renaming or drop- ping of fields that appear in VM/SP only. (VMRSM Updates, enhancements, fixes and general design improvements will follow as a separate evolved product)

05-07-90 Prototype renamed VMRSM (Virtual Machine Resource System Monitor) General system display, Active Users Display, Real Device Microscope, and VMDBK Microscope available). Beta Test model.

05-14-90 3270 Extended support with VMRSME version. RDEV Display re-designed. Cummul and interval counts of I/O Starts, solicited interrupts, unsolicited interrupts and queue. Added VM Active Devices Display (by device class). Show expanded paging for interval on Overall System Display.

05-29-90 Corrected possible loop in USERS Display in event that VM CP user chain structure is broken (by logoff, force) during scan by monitor. New double logo displayed during initialization. Show elapsed TTIME at CPU in USERS Display (was TTIME+VTIME). Smooth SYSTEM Display graphs. Correct calculation and breakdown of CPU activity in SYSTEM and VMDBK displays. Add Locked, Reserved and Spooling counts in User Microscope.

07-04-90 Channel Path Utilization display added. Connect time statistic and graphic added to RDEV display.

07-30-90 Correct loop condition in VMUSERS Display.

08-05-90 Show Function-Pending time for device in RDEV display. Show % Page Steals on overall System display.

10-22-90 Change CPU calculation in shown in USERS display for MP configured virtual machines. Prior the CPU usage for all but the master virtual CPU was estimated. Now it is actual as posted, supporting up to 4 CPUs per virtual machine.

12-30-90 Improve display I/O driver logic. Show SYSTEM WAIT in turquoise.

02-19-91 Show actual amount of storage VM sees at IPL time in MEM SIZE. Show device causing I/O Wait Condition on VMDBK display. Show Missing Interrupt Count for selected device in RDEV display. Fix VMUSERS to show correct CPU utilization if greater than 100%.

03-19-91 Insert expiration message in logo. Storage utilization calculation changed to include CP nucleus.

06-03-91 Show on RDEV DASD display a recent history of the cyl location visited in the RDEV sampling.

07-22-91 Correct logic to re-drive console I/O after occurrence of an X'8E' in CSW unit status during attempt to perform mode switch Change clear screen and position cursor logic to perform an erase/write alternate at start of each new display function select.

08-19-91 Change in-queue user test to: if VMDTIDLE or VMDREADY or VMDISPCH is posted in VMDBK. Change active user test to: if VMDTIDLE or VMDREADY or VMDISPCH or VMDSUSPN is posted in VMDBK at end of sample interval, OR, has used CPU or performed I/O or used Page services in interval.

09-11-91 Loop protection when travelling user chain data structure in the VMUSER function.

12-02-91 Loop protection when cleaning user chain inactives.

12-21-91 Support for VM/ESA (ESA). Show device number from which VM/ESA was IPL'd. Softcopy screen capture feature for SYSTEM and USERS displays. Show number of Free Storage Frames attached to a user. Show counts of Trivial and Non-Trivial user transactions. Show SIE Interceptions and Executions on VMSYSTEM display.

02-29-92 Change interrupt handlers and setters to run fully disabled except for EXT and I/O windows.

05-08-92 Show number of I/Os outstanding (VMDIOACT) on VMDBK display.

08-03-92 Re-assemble against VM/ESA R1.1 CP base maclibs.

08-13-92 Single module will resolve extended or basic capabilities of the terminal on which program is running.

10-05-92 Show 3270 characteristics from Diagnose 8C on logo display. Make solid lined box on VMSYSTEM display.

10-19-92 Correct storage utilization calculation for very large working sets.

04-15-93 Correct possible divide exception in VMUSERS code. Add CR2 and CR3 displays in VMDBK screen.

04-22-93 Replace 370/Interval Timer code with Clock Comparator logic.

05-10-93 Add option to specify initial screen refreshment interval.

10-18-93 Convert for ESA/390 Architecture. Requires XA or ESA virtual machine to execute. Place VM System ID obtained from 'CP Q USERID' in Overall display.

06-14-94 Miscellaneous performance enhancements.

07-07-94 Correct CP Supervisor reporting on VMSYSTEM for multiprocessor

09-02-94 Expand VMUSERS IOCOUNT filed from 8 to 9 digits.

09-19-94 Correct RDEVBLOK radix tree location calculation for VM systems with greater than 100 megabytes of storage.

08-15-95 VMUSERS display: Field PGSEC shows the number of page faults per second for the last interval (from VMDCTPFD). Field XSTR shows the number of XSTORE bloks used for host paging for the guest (from VMDCTXBK). Field SPOL shows the number of pages spooled for this user (from VMDPDSPL).

09-10-95 Correct RDEVSTAT Field in RDEVice display. Show RESERVE or RELEASE of Pending, Held or spaces for device in RDEVice display.

08-07-96 Correct computation of RAI in VMUSERS display. RAI to interval = 1 - (number of times found in-queue/number of times found active)

08-13-96 Correct CORESIZE field in 4-color display of VMSYSTEM. Add Minidisk Caching statistics in VMSTORAG (PF11) display. Place title on number of COREPAGES (CORPGS) in VMSYSEM. Correct local non-SNA PROG470 problem on VMBLOK display.

09-09-96 Begin development of Virtual Device Microscope (VDEV). This feature can be selected with the VDEV command from the command line of the VMBLOK (PF4) display. The user can then select any device defined in the virtual environment of that user. Return will be through the VMBLOK display.

09-16-96 Expand MEM Size on VMSYSTEM display to 8 digits.

10-21-96 Make selection of next monitored real device independant of VM Locate command response format of a given VM release. Selection will cause search of lookaside RDEV Radix TRee for validity and address of RDEV Block.

10-28-96 Change VMUSERS logic that looks for V=R Guest location at SYSVRLOC to SYSVMVR, this location is interrogated only when V=R is logged on. Alter terminal read logic in all functions so as to disregard the reception of nulls and spaces at command line. This was causing problems with customers using host logical device facility after switching screens back to VMRSM session.

11-01-96 On the VMSYSTEM display, we look at both the real storage that is sensed at IPL time by CP and the amount of real storage selected at generation time, if any. The figure displayed and used in other storage calculations will be the lower of the two.

11-20-96 Re-linked with new I/O Interrupt Handler. I/O Interrupt Trap routine was not correctly disabling I/O interrupts on exit from Set/Reset calls. Re-linked with new I/O module. If SSCH posts a status pending condition we will interrogate the IRB with a TSCH instead of exiting as we were for cc=0.

01-21-97 Show CP Nucleus Residence Size (Nuc) on VMSYSTEM display Show number of Non_Pageable pages on STORAGE display. Remove SPOL page count from VMUSERS display, replace with VM Guest machine size in megabytes. Change cummulative I/O count of VMUSERS display to I/Os performed over last sampled interval. Correct counter of LOCKED pages on VMDBK display, add VMSIZE.

01-27-97 Correct calculation of storage utilization. Division process was ignoring high-order bits of dividend resulting in erroneus results on systems with storage in excess of 1G bytes.

06-15-98 Reassemble using VM/ESA v2.2 maclibs.

09-01-98 Correct bar graph for 'PENDING' statistic of RDEV display.

10-29-98 Increase scan for active users from 100 to 400 users.Increase scan for active devices from 256 to 1024 devices. Correct problem of 'Command not recog...' that has been occurring when hitting ENTER key with no command operands. UpdateCPLogo. Make common TASKWAIT interrupt window handler.


[Return to Cullen Programming Home Page]


Cullen Programming logo