ibm:vm370-lib:cp:dmkmcd.assemble_abs
โTable of Contents
DMKMCD Abstract
Statistics
Type ASSEMBLE
Source Lines : 1,065
Fixes Applied : 1
Most Recent Version : Thursday, February 1, 1979
Last Fix ID : [R09747DK]
Synopsis
Module
DMKMCD
Function
TO HANDLE MONITOR CONTROL COMMANDS, AN EXTENSION TO DMKMCC, THE CONTROLLER OF MONITOR COMMAND PROCESSING
Attributes
REENTRANT, PAGEABLE, CALLED VIA SVC
Operation
MONITOR COMMAND PROCESSING DMKMCC WILL CALL DMKSCNFD TO LOCATE AN ARGUMENT. THIS MODULE WILL BE CALLED FOR THE ARGUMENTS LISTED BELOW. IF THE ARGUMENT IS TIME THEN GO TO DMKMCDTI IF THE ARGUMENT IS INTERVAL THEN GO TO DMKMCDIN. IF THE ARGUMENT IS LIMIT THEN GO TO DMKMCDLI. IF THE ARGUMENT IS STOP THEN GO TO DMKMCDST. IF THE ARGUMENT IS SEEKS THEN GO TO DMKMCDSE. IF THE ARGUMENT IS NONE OF THESE THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. TIME: BUILDS TRQS TO TO START AND STOP THE MONITOR AUTOMATICALLY. INTERVAL: CALL DMKSCNFD TO GET THE INTERVAL VALUE. IF NONE WAS GIVEN THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. IF THE INTERVAL WAS GIVEN THEN CALL DMKCVTDB TO CONVERT IT TO BINARY. CALL DMKSCNFD TO LOCATE THE NEXT ARGUMENT. IF IT IS 'SEC' THEN DON'T MULTIPLY. IF IT IS 'MIN' THEN MULTIPLY THE INTERVAL BY 60 TO CONVERT IT TO SECONDS. IF THE SPECIFIED VALUE IS LESS THAN 30 SECONDS OR MORE THAN 9 HOURS, THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. CALL DMKSCNFD TO CHECK FOR A UTILIZATION INTERVAL. IF NOT SPECIFIED, USE THE DEFAULT IN DMKENTUT. THE UTILIZATION INTERVAL IS ONLY INTERPRETED AS SECONDS. SAVE THE MONITOR SAMPLE INTERVAL IN DMKPRGTI. SAVE THE I/O UTILIZATION INTERVAL IN DMKENTUT. SEEKS: MONITOR SEEKS PROCESSING - OPTIONS ARE: INCLUDE, EXCLUDE, DISPLAY, DELETE STOP: CALL DMKSCNFD TO LOCATE THE NEXT ARGUMENT. IF IT IS 'CPTRACE' THEN GO TO STOP CPTRACE. IF IT IS 'TAPE' THEN GO TO STOP TAPE. IF IT IS NEITHER OF THESE THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. STOP CPTRACE: IF CP INTERNAL TRACING IS NOT ACTIVE THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. OTHERWISE, SET THE TRACE FLAGS TO ZEROES AND EXIT AFTER SENDING THE 'COMMAND COMPLETE' MESSAGE. STOP TAPE/SPOOL IF MONITORING IS CURRENTLY INACTIVE THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. IF THE MONITOR IS CURRENTLY IN ERROR RECOVERY OR PROCESSING A 'STOP SPOOL / TAPE' COMMAND THEN EXIT WITH AN APPROPRIATE ERROR MESSAGE. CLEAR CONTROL REGISTER 8 TO INHIBIT FURTHER MONITOR CALL INTERRUPTS. INDICATE THAT A 'MONITOR STOP TAPE' COMMAND IS BEING PROCESSED. OBTAIN STORAGE FOR AND INITIALIZE A CPEXBLOK. 'STACK' THE CPEXBLOK ON THE COMMUNICATIONS AREA. IF THE MONITOR TAPE IS CURRENTLY BUSY THEN SKIP THE NEXT STEP. CALL DMKMNISH TO COMPLETE MONITOR SHUTDOWN PROCESSING. WHEN CONTROL RETURNS FROM DMKMNI, EXIT AFTER ISSUING THE 'COMMAND COMPLETE' MESSAGE. SET THE RETURN ADDRESS IN THE CPEXBLOK TO THE 'COMMAND COMPLETE' MESSAGE ROUTINE AND GO TO THE DISPATCHER. SINCE THE TAPE IS BUSY AND THE CFSTOP FLAG HAS BEEN SET, THE MONITOR WILL BE SHUT DOWN WHEN THE NEXT TAPE I/O INTERRUPT OCCURS. FOLLOWING THAT, THE CPEXBLOK WILL BE 'UNSTACKED' AND RETURN WILL BE MADE TO THIS ROUTINE TO TYPE OUT THE 'COMMAND COMPLETE' MESSAGE.
Calls to Other Routines
DMKSCNFD - TO LOCATE NEXT FIELD IN INPUT LINE DMKQCNWT - TO SEND A MESSAGE TO THE TERMINAL DMKERMSG - TO SEND CANNED ERROR MESSAGE TO TERMINAL DMKPTRFR - TO OBTAIN A PAGE OF STORAGE FOR MONITOR DATA DMKMONSH - MONITOR STOP ROUTINE DMKCVTHB - TO CONVERT DEVICE ADDRESS TO BINARY DMKCVTDB - TO CONVERT INTERVAL TO BINARY DMKSCNRU - TO OBTAIN RDEVBLK ADDRESS FROM DEV. ADDRESS DMKFREE - TO OBTAIN STORAGE FOR MESSAGES DMKFRET - TO RELEASE STORAGE USED FOR MESSAGES DMKSCHST - TO ENQUEUE A TIMER RQST. BLOCK FOR MONITORING DMKSCHRT - TO REMOVE A TIMER RQST. BLOCK FROM QUEUE DMKMONTH - TAPE HEADER ROUTINE
ibm/vm370-lib/cp/dmkmcd.assemble_abs.txt ยท Last modified: 2023/08/06 13:37 by Site Administrator