Virtual machines in OS/390 for execution of any guest system6530078Abstract A method and system comprising a single IBM S/390 computer architecture running an OS/390 operating system, and at least two guest systems executing within the S/390 computer architecture. Each guest system comprising an execution space, allocated within the virtual memory space of the S/390 computer architecture, in which a guest program or operating system may be executed. Each guest system is configured such that if a Start Interpretive Execution instruction in invoked, the instruction is interpreted and a corresponding function is performed in its place to simulate, for the guest program or operating system, the effect of the IBM S/390 computer architecture. Control is then returned to the guest system at the next instruction after the Start Interpretive Execution instruction, thus allowing the guest program or operating system to execute transparently. Claims What is claimed is: Description FIELD OF THE INVENTION
//ISXINST JOB (account),`name`,TIME=1440,REGION=1M,
// CLASS=c,MSGLEVEL=(1,1),MSGCLASS=m,
// NOTIFY=userid,USER=userid
//ISXSTEP EXEC PGM=IEBCOPY
//SYSUT1 DD DSNAME=ISX390.LINKLIB,DISP=SHR,
LABEL=(1,SL),
// UNIT=TAPE,VOL=SER=ISX390
//SYSUT2 DD DSNAME=ISX.LINKLIB,DISP=(,CATLG),
UNIT=3380,
// SPACE=(TRK,(8,1,2)),VOL=SER=xxxxxx,
// DCB=(RECFM=U,BLKSIZE=32740)
//SYSPRINT DD SYSOUT=*
ISX/390 Customising: Authorization ISX/390 Libraries ISX/390 program libraries needs the Authorized Program Facility (APF) authorization. So, one has to specify the ISX.LINKLIB name in parmlib IEAAPFxx list or PROGxx list. In these lists, there are listed the dsnames of libraries along with the serial numbers of volumes on which the libraries resides. So it will be necessary to code ISX.LINKLIB name and its residence volume serial number. Furthermore, one will have to code APF=xx in IEASYSxx parmlib list (or OS/390 system operator has to specify APF=xx while IPL) or to code PROG=xx in IEASYSxx parmlib list (or a system operator has to enter the command SET PROG=xx before ISX/390 job is started up). ISX/390 Startup Job To start up ISX/390 it is necessary to provide a job looks like this:
//ISXRUN JOB (account),`name`,TIME=1440,
// CLASS=c,MSGLEVEL=(1,1),MSGCLASS=m,
// NOTIFY=userid,USER=userid
//ISXSTEP EXEC PGM=ISXINI
//SYSLIB DD DSNAME=ISX.LINKLIB,DISP=SHR
//STEPLIB DD DSNAME=ISX.LINKLIB,DISP=SHR
//SYSPRINT DD SYSOUT=A
//SYSIN DD DUMMY
The ISXINI name is ISX/390 initialization load module name. The SYSLIB DD statement is required. The SYSIN DD statement defines a data set, which contains the ISX/390 operator's commands. The commands can be entered from an input data stream, from a sequential data set, or from ISX/390 operator's console. ISX/390 EXECUTION CONTROL Communications with ISX/390 When ISX/390 is started up, its initialisation procedure sets up non-swappable mode of ISX/390 execution, receives ISX/390 job name, current CPU ID, and ASID of its own address space from OS/390, opens its own load module library, fixes a few of its pages in real storage, creates communication subtask and a few additional subtasks used for I/O device emulation, issues the `SX99I ISX/390 initialisation completed` message and executes operator commands from the input command file. An OS/390 operator can influence ISX/390 by means of ISX/390 commands. Any OS/390 operator who is working with ISX/390 becomes an operator of ISX/390. As an operator, he or she has to control ISX/390 tuning, resource assignment, and ISX/390 operation. All ISX/390 messages are sent to the OS/390 system console. ISX/390 commands are entered from the OS/390 system console or from the input command file. An ISX/390 operator is able to enter an ISX/390 command via the MODIFY command of OS/390: F ISX_job_name, . . . ISX/390_command. . . . With the SET command being entered from input command file or from OS/390 console ISX/390, an operator can determine: whether or not ISX/390 has to issue all messages and responses to ISX/390 operator or only those messages with the `attention` suffix A or W in its identifiers, the name of the OS/390 console to be used to communicate with ISX/390. Definition of ISX/390 License Parameters Before ISX/390 can be used, it is necessary to assign passwords to customers and to set up the license expiration date, so that a guest system can be loaded into an interpretive space for execution. The SET command is issued to set up the password and the expiration date for ISX/390. It is possible to provide the SET command with these parameters in the Command File of the ISX/390 start up job or to enter the command via the ISX/390 operator console. Definition of a Guest Environment Before executing a guest system, an ISX/390 operator defines the size of the interpretive space using the SET command. When the interpretive space has been defined, ISX/390 can execute a guest system. Additionally, the SET command helps an ISX/390 operator determine the following characteristics of a guest environment: whether ISX/390 performs an account function, the equivalence of an ISX/390 interpretive space and a VM/ESA virtual machine, whether to execute a guest system in the interpretive space with or without interpretive execution assistance, whether ISX/390 will issue all messages and responses to an ISX/390 operator, or only messages having the `attention` suffix A or W in their identifiers, the name of the OS/390 console to be used to communicate with ISX/390 and an emulated printer keyboard of a guest system. It is possible to provide the SET commands with above mentioned parameters in the Command File of the ISX/390 start up job, or to enter these commands via the ISX/390 operator console. Controlling Real I/O Devices Usually real I/O devices run with a guest system. Real I/O devices are assigned to a guest system in the ATTACH command of ISX/390. If a real I/O device is used by a guest system, such as I/O device has to be permanently assigned as a guest system in the ATTACH command, specified in the Command File of the ISX/390 start up job. If a real I/O device is not permanently used by the guest system, it may be assigned as the ATTACH command entered from a console by a ISX/390 operator. The assigned device may be removed from a guest system by the DETACH command of ISX/390. A real I/O device can be assigned to a guest system in the OS/390 environment, if: an I/O device is in the OS/390 configuration, an I/O device has not already been assigned to another OS/390 address space (for non-DASD devices). If a real I/O device is not supported in OS/390, that device has to be defined in OS/390 as DUMMY. To assign the device to a guest system, the device class must be specified in the ATTACH command line. To assign a `not operational` I/O device to a guest system, it is necessary to request an unconditional attachment in the ATTACH command line. A few guest systems, running under different ISX/390 in OS/390 environment, can work with the same DASD devices simultaneously. But if a guest system issues reserve/release I/O requests, then that guest system acquires exclusive control over an the corresponding DASD device. The RESET command allows an ISX/390 operator to reset an active I/O request of a guest system regarding a real I/O device. The READY command allows an ISX/390 operator to examine and set an operational status of a specified real I/O device. The ACCOUNT command allows an ISX/390 operator to estimate I/O activities of a guest system related to real I/O devices. The DISPLAY command allows an ISX/390 operator to display dynamic characteristics of activities of real devices. Controlling Emulated I/O Devices Emulated devices such as unit record devices, are specified in order to link guest applications to OS/390 data structures. Emulated I/O devices for a guest system are defined in the DEFINE command of ISX/390. If an emulated I/O device is permanently used by a guest system, this I/O device is the DEFINE command of the Command File of the ISX/390 start up job. If an emulated I/O device is not permanently used by the guest system, this device may be defined in the DEFINE command entered from a console by an ISX/390 operator. A Defined device may be removed from a guest system in the DETACH command of an ISX/390. The DEFINE command allows an ISX/390 operator to define an emulated printer keyboard, card punch devices, printers, or card reader devices for a guest system. Only one printer keyboard can be defined. An ISX/390 operator's console is used to send data to be routed by a guest system to the printer keyboard. An ISX/390 operator will be able to enter the input data for the printer keyboard via the MODIFY command of OS/390: F ISX_job_name,> . . . input data. . . . For a card punch and printer emulation class of SYSOUT, data sets are specified in the corresponding DEFINE command line. A current SYSOUT data set is created and allocated to an ISX/390 for an emulated card punch or printer when a guest system begins communication with the device. The data set is not allocated when the RESET or CLOSE command is issued by an ISX/390 operator or by a guest system via the DIAGNOSE instruction for the corresponding device. The next I/O communication between a guest system with the device will push an ISX/390 to create and allocate new SYSOUT data set for the device emulation. For a card reader emulation input, a sequential data set or a member of a partitioned data set has to be specified in the corresponding DEFINE command line for an emulated card reader. Input data set or a member is allocated to an ISX/390 when a guest system begins communication with the device. The data set is unallocated and the device is detached when the transmission of data ends, or when the RESET or CLOSE command is issued by an ISX/390 operator or by a guest system via the DIAGNOSE instruction for the device. It is possible to keep the device linked to the data set or member via NODET parameter of the DEFINE command. In this case, the next I/O communication of a guest system with the device will push an ISX/390 to allocate the data set for the device emulation process once. The ACCOUNT command allows an ISX/390 operator to estimate I/O activities of a guest system with emulated I/O devices. The DISPLAY command allows an ISX/390 operator to display dynamic characteristics of activities of emulated devices. Controlling Emulated DASD I/O Devices ISX/390 supports an emulated FBA DASD (looking like 9332) to be used by guest systems as a real FBA DASD. Fixed-length relative record VSAM data sets with record length of 512 bytes are used for FBA DASD emulation. The following procedure allows a guest system to use an emulated FBA DASD: create a corresponding VSAM data set in OS/390 via the IDCAMS Utility Program, load this VSAM data set via the ISX/390 ISXFBI Utility Program, define the emulated FBA DASD for ISX/390 and the guest system via the DEFINE command of ISX/390. A VSAM data set to be used for the FBA DASD emulation in ISX/390 is created via the OS/390 IDCAMS Utility Program as any other VSAM data set in OS/390. The IDCAMS program which may be called via OS/390 TSO command or from a batch job, is the following:
//ISXCR JOB MSGLEVEL=(1,1),MSGCLASS=H,CLASS=A
// EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=H
//SYSIN DD *
DEFINE CLUSTER -
(NAME(DISK) -
NUMBERED -
SUBALLOCATION -
RECORDSIZE(512 512) -
RECORDS(360036) -
VOLUMES(DSKFBA) -
SHAREOPTIONS(4) -
REUSE)
/*
The IDCAMS, the VSAM data set name, the volume label on which the data set will reside, the space to be allocated for the data set and the attributes of the data set should be specified. The data set name can be any name, which corresponds to standard OS/390 requirements for the VSAM data set names. The size of the space to be allocated to the VSAM data set is defined according to the real 9332 FBA DASD size. The best of all is to specify the data set space in blocks. The number of blocks has to be equal to 360036 for the 9332 model 400 emulation or to 554800 for the 9332 model 600 emulation. The VSAM data set must reside on one DASD volume and have one extent. Parameter SUBALLOCATION must be specified to allocate the required space in the volume. To indicate that a fixed-length relative record VSAM data set with the record length of 512 bytes must be created, specify the NUMBERED parameter and RECORDSIZE parameter with the average and maximum record size being equal to 512. The REUSE parameter is a VSAM function used by the ISX/390 Utility Program ISXFBI. The VSAM data set can be the FBA DASD emulated via ISX/390 Utility Program ISXFBI. This program runs as a job in OS/390. The job for calling ISXFBI is the following:
//FBA JOB MSGLEVEL=(1,1),MSGCLASS=H
// EXEC PGM=ISXFBI
//STEPLIB DD DSN=ISX.LINKLIB,UNIT=SYSDA,DISP=SHR
//SYSPRINT DD SYSOUT=H
//
After a VSAM data set is created and prepared for FBA DASD emulation, one can use that data set to define the corresponding FBA DASD for a guest system. Emulated FBA DASD are defined for a guest system in the DEFINE command of ISX/390. The device number is assigned to emulated FBA DASD via DEFINE command. The name of the corresponding VSAM data set used by ISX/390 for this FBA DASD emulation is also specified via the DEFINE command. Controlling Emulated 3270 Devices ISX/390 supports emulated 3270 display units (looking like 3274 Model 1D with Model 1, 2, 3, 4, or 5 screen, but without the QUERY capability) used by guest systems as real local non-SNA 3270. ISX/390 provides the capability of using emulated 3270 display units through VTAM Virtual Telecommunication Access Method. Emulated 3270 display units are used with VTAM the following way: ISX/390 has to be defined to VTAM as the application program within an application program major node by using an APPL definition statement. ISX/390 VTAM session parameters have to be defined through the logon mode tables and through the VTAM and NCP definition statements. A logical unit name of a VTAM terminal has to be defined for an emulated 3270 display unit. The ISX/390 application program major node must be defined in the VBUILD definition statement. The ISX/390 application program minor nodes must be defined in one APPL definition statement for each ISX/390 application program in the major node. For example,
ISXNODE VBUILD TYPE=APPL
APPLISXA APPL AUTH=ACQ, permits to acquire
LUs
EAS=3, concurrent
sessions
ACBNAME=APPLISXA, application name
SRBEXIT=YES authorized to use
SRB
Note that ISX/390 as an VTAM application program does not have its own name in the APPLID operand of the ACB macro. Therefore, VTAM uses the application program name specified as the job step name of the ISX/390 start up job. This name must be the same as the name of the APPL definition statement. As the VTAM application program, ISX/390 supports emulated 3270 display units using logical units of type 0 or 2. OS/390 provides the logon mode table as a default for the LU type 0 and the LU type 2 3270 devices. The logon mode table can be used to create one's define 3270 characteristics in the logon mode table. The MODETAB and MODEENT macros can be used to define 3270 characteristics in logon mode table. The following are examples of table entry definitions: The MODEENT macro for Non-SNA 3270. name MODEENT FMPROF=X`02`, TSPROF=X`02`, PRIPROT=X`71`, SECPROT=X`40`, COMPROT=X`20000`, PSERVIC=X` . . . ` see Note 1 The MODEENT macro for SNA 3270. name MODEENT FMPROF=X`03`, TSPROF=X`03`, PRIPROT=X`B1`, SECPROT=X`90`, COMPROT=X`3080`, RUSIZES=X` . . . `, PSERVIC=X` . . . ` see Note 1 Note 1. Coding the Device-Specific Hexadecimal Data of the PSERVIC operand.
Hexadecimal code Related device
X'00..00000000..........00' For non-SNA (LU 0)
X'02..00000000..........00' For SNA (LU 2)
X'..00....................' Device without extended data
stream capability
X'..80....................' Device with extended data
stream capability(it is not supported)
x'............0000000001..' Buffer size 480 (12 .times. 40) only
X'............0000000002..' Buffer size 1920 (24 .times. 80) only
X'............0C2800007E..' for 480 or 960 (12 .times. 40 or 12 .times. 80)
X'............185020507F..' for 1920 or 2560 (24 .times. 80 or 32 .times.
80)
X'............18502B507F..' for 1920 or 3440 (24 .times. 80 or 43 .times.
80)
X'............18501B847F..' for 1920 or 3564
(24 .times. 80 or 27 .times. 132)
X'............185000007E..' for 1920 (24 .times. 80) only
To prevent switching of screen size on a device that has more than one possible size, code the screen size as: X` . . . 185000007E.` in the PSERVIC operand. Note that the alternate screen size defined by the display model number in the guest system has to correspond to the alternate screen size defined by PSERVIC operand. The FMPROF, TSPROF, PRIPROT, SECPROT and COMPROT values shown in the examples have to be the same as those used in the default logon mode table. The DEFINE command of ISX/390 has to be used to assign a logical unit name of VTAM terminal to an emulated 3270 display unit. Several emulated 3270 display units can be defined with the same logical unit name. In this case the first defined display unit will be operational for the guest operating system and connected with the corresponding VTAM terminal. All other display units with the same logical unit name will be operational, but are set up in disconnect mode with respect to the VTAM terminal. In order to switch the VTAM terminal from one emulated display unit to another it is necessary to define for every display unit a functional key for VTAM terminal switch using the TAKE command. In addition to the VTAM terminal switch capability the TAKE command permits redefining the logical unit name for an emulated display unit while the device remains operational for the guest operating system. This capability of the TAKE command permits switching an emulated display unit from one VTAM terminal to another. If I/O errors or unusual conditions (such as VTAM termination) are detected while an emulated display unit is connected with a VTAM terminal, then the guest display unit is automatically set up in disconnect mode, but remains operational. The TAKE command permits reconnecting it with the same or another VTAM terminal. You can request a connection with an emulated display unit via the VTAM LOGON command specifying the ISX/390 application program name (the job step name of the ISX/390 start up job) in the APPLID operand of the VTAM LOGON command. The following is the first LOGON panel: ##STR1## The Gdevaddr value defines the guest device number you can to connect the VTAM terminal. The PASSWORD value has to be entered, if it is specified in the corresponding DEFINE command for the Gdevaddr. The password specified will not appeared when you type it. The `message area` of the panel is designed to display the following messages of the LOGON procedure: Terminal is assigned to the guest device Invalid guest device number Invalid password Device has predefined assignment The PF3 key has to be used to connect the VTAM terminal with the guest emulated display units assigned during LOGON procedure. The PF9 key has to be used to cancel previous assignments of the emulated display units and terminate the LOGON procedure. The ENTER key has to be used to go to the next panel of the LOGON procedure, if the guest device number and password are accepted. The next panel is displayed with the guest functional key definitions: ##STR2## Usually functional keys of the emulated display unit correspond to functional keys of the real terminal. The panel is designed to redefine this correspondence or to assign special functions to functional keys of the real terminal. The current key definitions are shown by the symbol.fwdarw.on the panel. Special functions are defined by the following keywords: SYSREQ--functional key. The result of pressing the real TESTREQ or SYSREQ key is intercepted by the network and is not received by ISX/390. To emulate the TESTREQ or SYSREQ key for the guest display unit these keys have to be defined through another functional key. SWITCH--terminal switch. In order to use the terminal with different emulated display units it is necessary to have the terminal switch function. This function can be assigned to any real functional key of the real terminal. The `message area` of the panel is designed for the following messages of the LOGON procedure: Terminal is assigned to the guest device Confirm or enter key definitions Confirm or enter key definitions The PF3 key has to be used to connect the VTAM terminal with the guest emulated display unit. The PF9 key has to be used to cancel previous assignments of the emulated display units and terminate the LOGON procedure. The ENTER key has to be used to save parameters and to return to the first panel to define the connection of the terminal with the next guest emulated display unit or to terminate the LOGON procedure. The last emulated display unit becomes actually connected with the terminal while all other becomes disconnected. The VTAM LOGOFF command allows you to terminate the session with an ISX/390 and to free the terminal. The guest display units currently connected with the terminal are automatically set up in disconnect mode, but remain operational for the guest system. Controlling Guest Execution A guest system can be loaded with the IPL command. The IPL command may be specified in the Command File of ISX/390 start up job or may be entered from ISX/390 console. ISX/390 provides commands to simulate S/390 hardware interruptions to the guest system. ISX/390 operator can use: The EXTERNAL command to simulate an external key interrupt to the guest system. The RESTART command to restart the guest system in the interpretive space. The SHUTDOWN command allows the operator to terminate all ISX/390 activities. Several ISX/390 commands may be used to locate, display, and alter program instructions and data of a guest system in the interpretive space. In the following discussions of STOP, DISPLAY, STORE and DUMP commands, it is important to understand the levels of storage specified on the command line. The first level storage is real storage of the computer. The second level storage, i.e. the interpretive space storage is `real` storage of a guest. system. This includes the V=R partitions of VSE/ESA systems, or V=R regions of MVS/XA systems. The V=V partitions of VSE/ESA systems or regions of MVS/XA systems constitute the third level storage. To stop execution of the guest at a given time, the empty input or the STOP command without operand may be used. When ISX/390 stops the guest running, it is possible to enter other commands to display and alter the storage, registers or PSW. To resume guest running on address in the current PSW it is necessary to enter the BEGIN command without an operand. If you have to resume a guest running at a specific address you may specify the address in the BEGIN command. To stop execution of the guest on a specific address, the STOP command with specified address may be used. The contents of the interpretive space storage, storage protection keys, registers, and PSW can be displayed on the terminal using the DISPLAY command or can be written in a special SYSOUT--data set using the DUMP command. The contents of the interpretive space storage, guest registers, and the PSW can be altered with the STORE command.The STORE command can be used to store the guest CPU status in corresponding guest storage locations. The ACCOUNT command allows the ISX/390 operator to estimate ISX/390 job CPU time, guest CPU time, number of SIE instructions which were issued by ISX/390, number of SSCH instructions and number of long channel programs which were issued by a guest system. Using Saved Guest System Images A Saved Guest Image (SGI) is the special named copy of a guest system kept in a OS/390 data set and loaded by name instead of by I/O device number. Loading a guest image by name substantially reduces the time it takes to IPL a guest system in an ISX/390 interpretive space. An SGI can be created via an ISX/390 SAVESYS command in the following manner. A guest system must be IPL-ed into the interpretive space from its resident I/O device. Further, at a user defined point of the guest execution, the SAVESYS command must be issued. A point of the guest system saving can be defined exactly using the ISX/390 STOP command or approximately on the basis of some event during the guest execution (for example, when all guest processes are in the wait state). The following guest data are saved by the SAVESYS command: General registers. Access registers. Floating-point registers. Control registers. Prefix register. Program status word. Clock comparator request information. CPU timer request information. Storage contents specified by the SAVESYS operands. Storage protection keys of specified storage pages. State of all I/O devices in current guest configuration. If during saving the state of some I/O device an uncompleted I/O request for this device is encountered, then the corresponding notification message is issued to the operator. To save a guest image, a corresponding OS/390 data set, named a Guest Image File (GIF), must exist. A corresponding GIF is a OS/390 VSAM data set with the identifier of SGI name, specified in the SAVESYS command, and with the following characteristics: ESDS type, reusable, multiple read or single write access, maximum and average record size of 4096 bytes. To create a GIF the DEFINE command of the IDCAMS utility program has to be used. You may prepare and execute a corresponding job directly as well as any other job in OS/390. When a GIF has been created and a guest image has been saved in the GIF, the IPL command can be used to load the guest image from the GIF into the interpretive space. During an IPL command, the following guest data are restored exactly as they were saved in GIF: General registers. Access registers. Floating-point registers. Control registers. Prefix register. Program status word. Clock comparator request information. CPU timer request information. Storage contents specified by the SAVESYS operands. Storage protection keys of specified storage pages. Restoration of the state of I/O devices saved in a GIF depends on the current guest I/O configuration during execution of IPL command. The state of some I/O device is restored from the GIF if the same I/O device exists in a current guest I/O configuration. A device is considered to be the same if it has the same type (emulated or real), the same device class and the same device number. After restoration of the I/O device state a subchannel number assigned to this device in current configuration will be the same as in the configuration on SAVESYS command. For each I/O device whose state been saved in a GIF the corresponding message is issued to the operator. This message indicates that the state of an I/O device has been restored or not restored and contains the information about device type, device class, device number and corresponding subchannel number. Additional messages will be issued, if the state of some I/O device has been restored, but if this device had an I/O request which was not completed during the SAVESYS command. Operator Command Description The commands described in this document allow the operator to manage the resources of the system, to control guest execution, to reconfigure ISX/390 parameters and the I/O device subset, assigned to the guest system, and to simulate other functions of S/390. Rotational Conventions The following conventions are used in this publication to illustrate the format of commands: Uppercase letters, terms, and punctuation marks must be coded exactly as shown. Lowercase letters and terms represent variable information that must be supplied by the operator. Information contained within brackets [ ] is optional. That is, it can be included or omitted, depending on the requirements of the operator. Two or more options between brackets and separated by a sign represent alternatives, one and only one of which may be chosen. Information contained within braces { } and separated by a sign .vertline. represent alternatives, one and only one of which must be chosen. An uppercase term concatenated with a lowercase term may be used to represent a command verb or an operand in which the uppercase term must be coded by the operator to identify the command. A required blank space is indicated as such in the notation. ACCOUNT Command The ACCOUNT command is designed to display ISX/390 account data on the operator console. The ACCOUNT command gives four data lines. The first data line displays the following account data: total time the account function was operative (R-TIME), total ISX/390 job CPU time the account function was operative (T-TIME), total guest CPU time the account function was operative (G-TIME), if this function was activated by the SET command, total SIE instruction count the account function was operative (SIE), total SSCH instruction for real devices count the account function was operative (R-SIO), total SSCH instruction for emulated devices count the account function was operative (E-SIO), total long channel program count for real devices the account function was operative (LCP). The second data line displays the following account data: total ISX/390 job CPU time during utilization of which the account function was operative (T-TIME), total guest CPU time during utilization of which the account function was operative (G-TIME), if this function was activated by the SET command, total SIE instruction rate during which the account function was operative (SIE), total SSCH instruction rate for real devices during which the account function was operative (R-SIO), total SSCH instruction rate for emulated devices during which the account function was operative (E-SIO), total long channel program execution rate for real devices during which the account function was operative (LCP). The third data line displays the following account data: time since the previous ACCOUNT command was issued (R-TIME), ISX/390 job CPU time from when previous ACCOUNT command was issued (T-TIME), guest CPU time from when previous ACCOUNT command was issued (G-TIME), if this function was activated by the SET command, SIE instruction count from previous ACCOUNT command was issued (SIE), SSCH instruction for real devices count from when the previous ACCOUNT command was issued (R-SIO), SSCH instruction for emulated devices count from when the previous ACCOUNT command was issued (E-SIO), long channel program count for real devices from when previous ACCOUNT command was issued (LCP). The fourth data line displays the following account data: ISX/390 job CPU time utilization from when previous ACCOUNT command was issued (T-TIME), guest CPU time utilization from when previous ACCOUNT command was issued (G-TIME), if this function was activated by the SET command, SIE instruction rate from when previous ACCOUNT command was issued (SIE), SSCH instruction rate for real devices from when the previous ACCOUNT command was issued (R-SIO), SSCH instruction rate for emulated devices from when the previous ACCOUNT command was issued (E-SIO), long channel program execution rate for real devices from when previous ACCOUNT command was issued (LCP). ACCOUNT command format:
ACCount
The following responses and messages may be issued as the result of the ACCOUNT command execution: ##STR3## ATTACH Command The ATTACH command is designed to assign a real I/O device to the guest I/O configuration. ATTACH command format: ##STR4## devclass defines a class of the attached I/O device. If devclass is not specified, then the device class is received from OS/390. The following codes can be specified to define the device class: DASD adds a CKD type direct access storage device with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. F512 adds a FBA type direct access storage device with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. TAPE adds a magnetic tape device with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. UREC adds a unit record device with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. GRAF adds a local display with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. TERM adds a telecommunication device with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. CTCA adds a channel-to-channel adapter with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. SPEC adds a special type device with the rdevaddr real device number to the guest configuration at the device number specified by gdevaddr. rdevaddr is the real device number of the I/O device to be assigned. .count is a decimal value designating the number of real devices to be assigned starting with the real device at rdevaddr device number. gdevaddr is the guest device number which will be assigned to the I/O device. If gdevaddr is not specified, the real device number will be assigned to the I/O device. UNCond defines that the device must be attached even if it is not allocated to the ISX/390 job by OS/390. LIST gives the full list of attached real I/O devices and their states: gdevaddr(rdevaddr)-s--for each real I/O device, where `s` is one of the following codes: R--the device is ready for I/O, N--the device is not operational, A--the device is doing I/O, I--I/O interruption is pending for the device. LIST gdevaddr[.count] gives the list of attached real I/O devices and their states in device number range specified by gdevaddr and count parameters. The following responses and messages may be issued as the result of execution of the ATTACH command: Real device xxxx attached as yyy Guest has no attached I/O devices Guest has no attached I/O devices in the address range ISX10A Device xxx is not ready for I/O ISX75A Device xxxx is not allocated to nnnnnnnn for yyy ISX76A Device xxxx is out of OS/390 ISX79A Device yyy is already defined ISX82A Device xxxx is already attached ISX83W GETMAIN failed ISX84A Operand missing or invalid ISX85W LOAD failed for mmmmmm BEGIN Command The BEGIN command is designed to continue execution of a guest at either the specified storage address or the location pointed to by the current guest PSW. BEGIN command format: ##STR5## hexaddr is the hexadecimal storage address where guest execution is to begin. The following messages may be issued as the result of execution of the BEGIN command: ISX01I Guest is running ISX05I Guest is stopped ISX81A Interpretive space not available ISX84A Operand missing or invalid ISX92I Disable wait PSW=xxxxxxxx xxxxxxxx CLOSE Command The CLOSE command is designed to revoke the current linkages between emulated I/O devices and corresponding OS/390 data sets, or between active trace processing and SYSOUT data set used for trace record printing. The data sets are closed and unallocated from ISX/390 job, thus these data sets become available for using in OS/390. CLOSE command format: ##STR6## devclass defines a class of the I/O device to be closed. The following codes can be specified to define the device class: RDR READER revokes current linkages with corresponding OS/390 input data sets for all emulated card reader devices (looks like 2540R). PUN PUNCHER revokes current linkages with corresponding OS/390 output data sets for all emulated card punch devices (looks like 2540P). PRT PRINTER revokes current linkages with corresponding OS/390 output data sets for all emulated printer devices (looks like 1403). gdevaddr defines the guest device number of the emulated device for which current linkage with corresponding OS/390 data set to be revoked. .count is a decimal value designating the number of emulated devices to be closed starting with the guest device at gdevaddr device number. TRace revokes current linkage with SYSOUT data set used to print traced records. The following responses and messages may be issued as the result of execution of the CLOSE command: Current file for xxx is closed Current file for trace output is closed ISX84A Operand missing or invalid ISX91A Device xxx does not exist DEFINE Command The DEFINE command is designed to assign an emulated I/O device to the guest I/O configuration. DEFINE command format: ##STR7## devclass defines a class of the defined I/O device. The following codes can be specified to define the device class: CON adds an emulated Console Printer Keyboard (looks like 3215) to the guest configuration at the device number specified by gdevaddr. RDR adds an emulated card reader device (looks like 2540R) to the guest configuration at the device number specified by gdevaddr. PUN adds an emulated card punch device (looks like 2540P) to the guest configuration at the device number specified by gdevaddr. PRT adds an emulated printer device (looks like 1403) to the guest configuration at the device number specified by gdevaddr. FBA adds an emulated FBA DASD (looks like 9332) to the guest configuration at the device number specified by gdevaddr. GRF adds an emulated local non-SNA display unit (looks like 3274 Model ID with Model 1, 2, 3, 4, 5 screen without QUERY capability and with no alternate screen defined) to the guest configuration at the device number specified by gdevaddr. TRS adds an emulated token-ring adapter to the guest I/O configuration at the device numbers beginning from gdevaddr. gdevaddr is the guest device number which will be assigned to the I/O device. For an emulated token-ring adapter gdevaddr, gdevaddr+1, gdevaddr+2, and gdevaddr+3 will be assigned. .count is a decimal value designating the number of emulated devices to be defined starting with the guest device at gdevaddr device number. CLass defines SYSOUT class of data sets associated with emulated PRT or PUN device (Default value is A). DSname defines name of sequential data set or member name and name of partitioned data set to be used to receive data for emulated RDR device. Defines name of VSAM data set to be used for emulation of the FBA DASD. LUname llllllll defines the logical unit name which will be used to connect the guest device gdevaddr with a VTAM logical unit. The VTAM logical unit has to be LU type 0 or 2. If logical unit name is defined as LOGON, then the emulated device can be connected with a real VTAM terminal via the LOGON procedure of ISX/390. PASSword defines customer's password for connection with the emulated display when the session is initiated from a VTAM terminal. ADAPTER rdevaddr defines the real device numbers rdevaddr and rdevaddr+1 of the real token-ring adapter to be allocated for ISX/390 job for emulation of the guest token-ring adapter. PORT n defines the port n of a real token-ring adapter to be used by an ISX/390 job for emulation of the guest token-ring adapter. POLLing rr defines polling time interval rr to read inbound/outbound request parameters of the guest system. Valid rr values are the following: 32--to read parameters every 32 milliseconds 16--to read parameters every 16 milliseconds 8--to read parameters every 8 milliseconds 4--to read parameters every 4 milliseconds 2--to read parameters every 2 milliseconds The default rr value is 32. NODET defines that emulated RDR device has not to be detached on end of data condition in associated data set or member. LIST gives the full list of defined emulated I/O devices and its state: gdevaddr(CON)-s--for emulated console, gdevaddr(RDR)-s--for each emulated card reader, gdevaddr(PUN)-s--for each emulated card punch, gdevaddr(PRT)-s--for each emulated printer, gdevaddr(FBA)-s--for each emulated FBA DASD, gdevaddr(GRF)-s--for each emulated 3270, gdevaddr(TRS)-s--for each emulated token-ring adapter, where `s` is one of the following codes: R--the device is ready for I/O, N--the device is not operational, A--the device is doing I/O, I--I/O interruption is pending for the device. LIST gdevaddr[.count] gives the list of defined emulated I/O devices and their states in device number range specified by gdevaddr and count parameters. The following responses and messages may be issued as the result of execution of the DEFINE command: Emulated console xxxx is defined Emulated device xxxx is defined. SYSOUT=x Emulated device xxxx is defined. DSNAME=nnn . . . n Emulated device xxxx is defined. LUNAME=llllllll Password xxxxxxxx accepted Emulated Token-Ring Adapter xxxx.4 is defined via port n of real token-ring adapter yyyy.2 Interrupt port xxxx is full emulated Control port xxxx is full emulated with polling interval of nn mlsec Inbound port xxxx is emulated via yyyy Outbound port xxxx is emulated via yyyy Guest has no emulated I/O devices Guest has no emulated I/O devices in the address range ISX29W VTAM RPL-based macro error. LUNAME=llllllll, GRC=gc, RTNCD=rc, FDB2=ec, SENSE=ssmmuuuu ISX30A LU type of llllllll is not supported ISX40A ISX/390 job jjjjjjjj is not connected with VTAM ISX41I Guest message to xxxx, jjjjjjjj>>mhmhmhmh chchchch ISX42I Guest message from xxxx, jjjjjjjj<<mhmhmhmh chchchch ISX43W Unknown guest message to xxxx, jjjjjjjj ISX44W Unknown real message from xxxx, jjjjjjjj ISX45W Mismatch send/receive sequense numbers: ss/rr jjjjjjjj ISX46I Real message from xxxx, jjjjjjjj is discarded ISX47I Real message from xxxx, jjjjjjjj<<dddddddddddd . . . ISX48I Real message to xxxx, jjjjjjjj>>dddddddddddd . . . ISX78A Console is already defined ISX79A Device xxxx is already defined ISX83W GETMAIN failed ISX84A Operand missing or invalid ISX85W LOAD failed for mmmmmmmm ETACH Command The DETACH command is designed to remove a device from the guest configuration. DETACH command format: ##STR8## gdevaddr is the guest device number of the I/O device to be removed from the guest configuration. .count is a decimal value designating the number of devices to be detached starting with the guest device at gdevaddr device number. The following responses and messages may be issued as the result of execution of the DETACH command: ISX32I Device xxx detached ISX84A Operand missing or invalid ISX91A Device xxx does not exist DISPLAY Command The DISPLAY command is designed to display the following data from the guest system environment: Interpretive space storage (guest real storage) contents. Primary virtual storage contents. Secondary virtual storage contents. Home virtual storage contents. Interpretive space storage protection keys. Guest general registers. Guest access registers. Guest Floating-point registers. Guest Control registers. Guest program status word. Guest I/O device(s) states. Guest I/O configuration. Guest CPU state. DISPLAY command format: ##STR9## R, P, S or H defines the guest storage which has to be displayed. R defines that the guest real storage has to be displayed. P defines that the current guest primary virtual storage has to be displayed. S defines that the current guest secondary virtual storage has to be displayed. H defines that the current guest home virtual storage has to be displayed. hexaddr1 is the hexadecimal location address that is to be displayed. The specified storage contents are displayed in hexadecimal and with EBCDIC translation. If the prefix R, P, S or H is not specified, then the currently visible guest storage (real, primary virtual, secondary virtual or home) is to be displayed. Khexaddr1 is the hexadecimal guest real location address that is to be displayed. The storage protection keys are displayed in hexadecimal. -hexaddr2 is the last of the range of hexadecimal location addresses, whose contents are to be displayed. .count is a hexadecimal value designating the number of bytes of storage to be displayed starting with the byte at hexaddr1. G[reg1[-reg2]] displays the contents of the general registers. If G is specified without a register number, the contents of all the general registers are displayed. If only reg1 is specified, then only reg1 contents are to be displayed. If both reg1 and reg2 are specified, then the contents of all general registers from reg1 to reg2 are to be displayed. Z[reg1[-reg2]] displays the contents of the access registers. If Z is specified without a register number, the contents of all the access registers are displayed. If only reg1 is specified, then only reg1 contents are to be displayed. If both reg1 and reg2 are specified, then the contents of all access registers from reg1 to reg2 are to be displayed. Y[reg1[-reg2]] displays the contents of the floating-point registers. If Y is specified without a register number, the contents of all the floating-point registers are displayed. If only reg1 is specified, then only reg1 contents are to be displayed. If both reg1 and reg2 are specified, then the contents of all floating-point registers from reg1 to reg2 are to be displayed. X[reg1[-reg2]] displays the contents of the control registers. If X is specified without a register number, the contents of all the control registers are displayed. If only reg1 is specified, then only reg1 contents are to be displayed. If both reg1 and reg2 are specified, then contents of all control registers from reg1 to reg2 are to be displayed. Ugdevaddr[.count] [CCW] displays messages about states of guest I/O device(s) and currently executed I/O operations beginning from the device with gdevaddr device number. If count is specified, then it displays corresponding messages for specified number of devices. If CCW is specified, then it displays last executed guest channel program. IOC displays the guest I/O configuration messages. CPU displays messages about real and guest CPU identifiers, guest prefix, machine check interruptions pending, and external interruptions pending. Psw displays the current guest Program Status Word. Note. Empty input command line is treated as the request to stop the DISPLAY command execution. The following responses and messages may be issued as the result of execution of the DISPLAY command: PSW=xxxxxxxx xxxxxxxx Gnn=yyyyyyyy Xnn=yyyyyyyy Yn=xxxxxxxxxxxxxxxx aaaaaaaa xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx * . . . * aaaaaaaa to bbbbbbbb line(s) same as above aaaaaaaa to bbbbbbbb not accessible storage aaaaaaaa to bbbbbbbb key=xx CCCC XXXX(YYYY) DEVICE STATUS Connected data set: nnnnnnnnnnnnnnn(mmmmmmmm) Connected data set: SYSOUT=x Connected logical unit: llllllll Real/Interpreted I/O requests: rrrrrrrr/iiiiiiii NOT READY/READY NOT ALLOCATED/ALLOCATED NOT SHARED/SHARED NOT RESERVED/RESERVED Active requests: NONE/START I/O/CLEAR/RESET/CLOSE/DETACH
Device state: I/O REDRIVED / I/O HAS COMPLETED /
I/O IN PROGRESS
/ DEVICE IS BUSY / DEVICE NOT USED
/ I/O NOT COMPLETED
Current SCSW: xxxxxxxx xxxxxxxx xxxxxxxx Expected I/O interruption(s): Pending SCSW: xxxxxxxx xxxxxxxx xxxxxxxx Emulating SCSW: xxxxxxxx xxxxxxxx xxxxxxxx Expected SCSW: xxxxxxxx xxxxxxxx xxxxxxxx . . . Last ORB: xxxxxxxx xxxxxxxx xxxxxxxx Last (or currently) executed channel program: aaaaaaaa: xxxxxxxx xxxxxxxx gggggggg: yyyyyyyy yyyyyyyy
...
>> zzzzzzzz >> uuuuuuuu
...
Currently interpreted channel command word: xxxxxxxx xxxxxxxx Guest I/O configuration is empty Guest has the following I/O configuration:
Subchannel Device Class
ssss dddd cccc Real.vertline.Emulated
.... .... .... ..........
CPU STATUS Real CPUID: cccccccc/mmmm Guest CPUID: bbbbbbbb/nnnn Guest CPU prefix: pppppppp Pending machine-check interruptions: mmmm/NONE Pending channel report words: rrrr/NONE Pending external interruptions: [NONE] External key Emergency signal External call Service call Clock comparator CPU timer ISX74A Invalid storage length ISX80A Invalid guest storage address ISX81A Interpretive space not available ISX84A Operand missing or invalid UMP Command The DUMP command is designed to produce a dump of the guest system environment including: Guest (real, current primary virtual, current secondary virtual or current home virtual) storage locations and its protection keys. Guest general registers. Guest access registers. Guest Floating-point registers. Guest Control registers. Guest program status word. All parameters established by the SET command for the guest interpretive space. Special SYSOUT data set is dynamically created by ISX/390 to contain the dump. DUMP command format: ##STR10## Real defines that guest real storage has to be dumped. Primary defines that current guest primary virtual storage has to be dumped. Secondary defines that current guest secondary virtual storage has to be dumped. Home defines that current guest home virtual storage has to be dumped. Note. If neither `real` nor `primary` nor `secondary` nor `home` does not specified, then the guest storage type is defined via the guest PSW and the guest control registers. hexaddr1 is the hexadecimal location address that is to be dumped. The storage contents are dumped in hexadecimal and with EBCDIC translation. -hexaddr2 is the last of the range of hexadecimal location addresses, whose contents are to be dumped. .count is a hexadecimal value designating the number of bytes of storage to be dumped starting with the byte at hexaddr1. The following responses and messages may be issued as the result of execution of the DUMP command: Dump of guest real storage in progress End of dump Guest storage not defined ISX17W DYNALLOC failed ISX67W OPEN failed ISX80A Invalid guest storage address ISX84A Operand missing or invalid EXTERNAL Command The EXTERNAL command is designed to simulate an external key interruption to the guest. EXTERNAL command format: ##STR11## The following response may be issued as the result of the EXTERNAL command execution: External interruption is submitted IPL Command The IPL command is designed to simulate an initial program loading of the guest system. IPL command format: ##STR12## gdevaddr is the guest device number of the I/O device that contains the guest loader. filename is the name of VSAM file with guest image to be loaded. STOP halts the guest during the IPL just before the initial PSW is loaded. NOCLEAR defines that the guest environment has not to be clear reset and CPU status has to be stored before initial program loading. ATTN [gdevaddra] generates an attention interruption from the specified guest device with the device number gdevaddra or from the guest console during the IPL. PARM pppppppp defines up to eight characters of data to be available for IPL'ed guest system as load parameters. The following responses and messages may be issued as the result of the IPL command execution: nnnnnnnn system restored ISX03W Password and expiration date must be defined before IPL ISX05I Guest is stopped . . . at address xxxxxx ISX06I Initial reset has done ISX08I Device xxxx is ready for I/O ISX10A Device xxxx is not ready for I/O ISX31W Unpredictable IPL CCW sequence ISX34I Clear reset has done ISX53I Real/Emulated cccc xxxx on subchannel ssss tttt ISX55I Incompatible guest image data and guest mode ISX56I VSAM `mmmmmm` macro failed. RC=xx,EC=yyy ISX57I Unexpected end of guest image file ISX58I Inconsistent guest image file data ISX59A Insufficient interpretive space size ISX60A Device xxxx has pending I/O request ISX66A Device xxxx had pending I/O request ISX70A IPL channel program error ISX71A Invalid IPL device type ISX73A IPL device error. CC=cc CSW=ddss ISX75A Device xxxx is not allocated to nnnnnnnn for yyyy ISX81A Interpretive space not available ISX84A Operand missing or invalid ISX91A Device xxxx does not exist READY Command The READY command is designed to examine and set operational status of a specified real device. READY command format:
READY gdevaddr[.count]
gdevaddr defines that the I/O device with the guest device number of gdevaddr is to be examined and set up. .count is a decimal value designating the number of devices to be examined starting with the guest device at gdevaddr device number. The following responses and messages may be issued as the result of the execution of the READY command: ISX08I Device xxx is ready for I/O ISX09I Device xxx is active ISX10A Device xxx is not ready for I/O ISX75A Device xxxx is not allocated to nnnnnnnn for yyy ISX83W GETMAIN failed ISX84A Operand missing or invalid ISX91A Device xxx does not exist RESET Command The RESET command is designed to reset the guest environment or the I/O device assigned to the guest. RESET command format:
RESET [gdevaddr[.count]]
gdevaddr defines that the I/O device with the guest device number of gdevaddr is to be reset. If the device is the emulated one and is linked to SYSOUT data set, this link is revoked, the data set is closed and unallocated. If gdevaddr is not specified, then all guest environments and all guest I/O devices are to be reset and all device links with the SYSOUT data sets are to be revoked. .count is a decimal value designating the number of devices to be reset, starting with the guest device at gdevaddr device number. The following responses and messages may be issued as the result of the execution of the RESET command: ISX08I Device xxx is ready for I/O ISX10A Device xxx is not ready for I/O ISX33I Device xxx is reset ISX34I Clear reset has done ISX84A Operand missing or invalid ISX91A Device xxx does not exist RESTART Command The RESTART command is designed to restart the guest system. When this command is entered the current guest PSW is saved at the guest storage address of X`08` and the guest resumes the execution at the address in PSW loaded from the interpretive space storage location X`00`. RESTART command format:
RESTART
The following responses and messages may be issued as the result of the execution of the RESTART command: Guest restart ISX81A Interpretive space not available SAVESYS Command The SAVESYS command is designed to create the guest image in specified OS/390 VSAM file. The saved guest image may be used by the IPL command to restore the guest in the interpretive space. The following guest data are saved by the SAVESYS command: General registers. Access registers. Floating-point registers. Control registers. Program status word. Clock comparator request information. CPU timer request information. Storage contents specified by the SAVESYS operands. Storage protection keys of specified storage pages. SAVESYS command format:
SAVEsys name {fpage1-1page1 [fpage2-1page2]....vertline.
fpage1.count1 [fpage2.count2]...}
name specifies an existing VSAM file name where the guest image to be saved. fpage1 fpage2 . . . is the hexadecimal page number of the first page in the range to be saved together with its storage protection keys as a part of the guest image. -lpage1 -lpage2 . . . is the hexadecimal page number of the last page in the range, whose contents is to be saved. .count1 .count2 . . . is a hexadecimal value designating the number of pages in the range to be saved starting with the pagen1 page. The following responses and messages may be issued as the result the SAVESYS command execution: `nnnnnnnn` system saved ISX54I Too many page ranges ISX56I VSAM `mmmmmm` macro failed. RC=xx, EC=yyy ISX57I Unexpected end of guest image file ISX61W Inconsistent VSAM data set attributes ISX80A Invalid guest storage address ISX81A Interpretive space not available ISX83W GETMAIN failed ISX84A Operand missing or invalid SET Command The SET command is designed to define functional parameters of the interpretive space for the guest system. SET command format:
SET
[AUTOPoll.vertline.ACCount.vertline.VMmode.vertline.ASSist.vertline.JOBNam
e.vertline.XMSG.vertline.
MSG ON.vertline.OFF
CONSname consolename.vertline.OFF
STorage nnM
IDP ppppppppmmmm
DATE dd/mm/yyyy TIME hh/mm/ss
ZONE [-.linevert split.+]hh/mm
RATIO rrrr/vvvv.vertline.OFF.vertline.FORCE
PASSword xxxxxxxx
EXPire mm/yyyy
List]
AUTOPoll controls whether or not ISX/390 tests each BTAM autopoll CCW to see if it has been dynamically modified. ACCount controls whether or not ISX/390 performs the account function. VMmode defines the equivalence of the ISX/390 interpretive space and a VM/ESA virtual machine. The following subcodes of the DIAGNOSE instruction are supported for the interpretive spaces: 000--store extended system id 008--execute ISX/390 command 00C--store pseudo timer value 010--free storage page 024--query device & type features 028--modify channel program dynamically 060--get guest storage size ASSist defines execution of the guest system in the interpretive space with or without interpretive execution assistance. JOBName controls whether or not ISX/390 displays an ISX/390 job name before displaying all messages to an ISX/390 operator. MSG controls whether or not ISX/390 issues all messages and responses to an ISX/390 operator or only messages with the `attention` suffix A or W in their identifiers. XMSG controls whether or not ISX/390 issues all messages about operation and I/O exceptions in the guest system. CONSname consolename defines the name of an OS/390 console to be used to communicate with ISX/390 and the emulated printer keyboard of a guest system. ON indicates that the AUTOPOLL, ACCOUNT, VMMODE, ASSIST, JOBNAME, MSG, XMSG functions are activated. OFF indicates that AUTOPOLL, ACCOUNT, VMMODE, ASSIST, JOBNAME, MSG, XMSG, CONSNAME functions are deactivated. STorage nnnnM defines the interpretive space size in the virtual fixed storage of a region as nnnnM, where nnnn is a number from 1 to 2047. IDP ppppppppmm defines the CPU pppppppp and model mmmm identifiers for the guest system. DATE dd/mm/yyyy defines initial date for the interpretive space in the form of dd/mm/yyyy, where dd is a day, mm is a month number, and yyyy is a year number. TIME hh/mm/ss defines initial clock value for the interpretive space in form of hh/mm/ss, where hh is an hour number, mm is a minute number, and ss is a second number. ZONE [-.vertline.+]hh/mm defines the time zone value in the form of hh/mm, where hh is number of hours, mm is number of minutes. The time zone value is added to OS/390 current time to define the local time for a guest system. RATIO rrrr/vvvv defines the virtual time mode for the guest system beginning from the moment the SET command and the RATIO operand have been entered. The time rate for the guest system Tv is defined as Tv=Tr/k, where Tr is the real time rate and k is the ratio of rrrr and vvvv values. These values are decimal digits defining the time slices in milliseconds. The rrrr value defines the real time slice to update the guest system's time. RATIO OFF defines the virtual time mode for the guest system with the setting 1/k instead of the previously defined ratio k up to the moment of the guest system's virtual and real time equivalince. RATIO FORCE deactivate the virtual time mode for the guest system immediately. PASSword defines a customer's password for usage of ISX/390. EXPire defines the expiration date for validity of the ISX/390 license. List gives the full list of functional parameters set for the interpretive space. The following responses and messages may be issued upon the of execution of the SET command: Autopoll--ON Autopoll--OFF Interpretive space size is nnM Information messages will be issued Information messages will not be issued Account--ON Account--OFF VM mode execution--ON VM mode execution--OFF Execution with assists--ON Execution with assists--OFF Date=dd/mm/yyyy, Clock=hh/mm/ss is set up Time zone hh/mm is set up CPU and MODEL identifiers pppppppp/mmmm accepted Real CPU and MODEL identifiers assumed Virtual time mode--ON Virtual time mode--OFF Virtual time mode--FORCED Password xxxxxxxx accepted Expiration date mm/yyyy accepted No specific console name is defined Console name nnnnnnnn is defined Specific console name is canceled Guest exception messages--ON Guest exception messages--OFF ISX/390 job name--ON ISX/390 job name--OFF ISX11W ATTENTION! VALIDITY OF THE ISX/390 LICENCE HAS ELAPSED ISX12W Validity of the ISX/390 licence is expiring ISX13A Console nnnnnnnn is not active ISX14A Console validation service not available ISX15A Specified console name nnnnnnnn not defined in OS/390 ISX16W CONVCON failed ISX72A Invalid operand combination ISX81A or invalid SHUTDOWN Command The SHUTDOWN command is designed to cancel all ISX/390 operations for the guest system. SHUTDOWN command format:
SHUTDOWN
The following responses and messages may be issued upon the execution of the SHUTDOWN command:
R-TIME T-TIME G-TIME SIE R-SIO E-SIO LCP
xxxxxx xxxxxx xxxxxx xxxxxxxx Xxxxxxxx Xxxxxxxx xxxxxx
xxx % xxx % xxx Xxx Xxx xxx
xxxxxx xxxxxx xxxxxx xxxxxxxx Xxxxxxxx Xxxxxxxx xxxxxxxx
xxx % xxx % xxx Xxx Xxx xxx
-- -- -- -- -- -- --
ISX32I Device xxx detached ISX35I Shutdown completed for ISX/390 job jjjjjjjj STOP Command The STOP command is designed to halt guest execution processing. STOP command format:
[STOP] [hexaddr.vertline.OFF]
hexaddr is the hexadecimal value that defines which address in the current guest PSW will halt guest execution processing. If the hexaddr value is not specified, then the current guest address is assumed. OFF cancels previously issued request to halt the guest on a specified address. Note. An empty input command line is treated as the STOP command without an operand. The following responses and messages may be issued upon the execution of the STOP command: Stop at address xxxxxxxx is cancelled Stop at address xxxxxxxx is requested ISX05I Guest is stopped [ . . . at address xxxxxx] ISX80A Invalid guest storage address ISX81A Interpretive space not available ISX84A Operand missing or invalid TORE Command The STORE command is designed to alter the following guest environment: Interpretive space storage (guest real storage) contents. Primary virtual storage contents. Secondary virtual storage contents. Home virtual storage contents. Guest general registers. Guest access registers. Guest floating-point registers. Guest control registers. Guest program status word. The STORE command permits to store the guest CPU status. STORE command format:
STore {[R.vertline.P.vertline.S.vertline.H]hexaddr hexdata
.vertline.
Greg hexword1 ....vertline.
Zreg hexword1 ....vertline.
Yreg hexdoubleword1 ....vertline.
Xreg hexwordl ....vertline.
Psw hexdoubleword.vertline.
CPU}
R, P, S or H defines the guest storage to be altered. R defines the guest real storage to be altered. P defines the current guest primary virtual storage to be altered. S defines the current guest secondary virtual storage to be altered. H defines the current guest home virtual storage has to be altered. hexaddr is the hexadecimal location address to be altered. If the prefix R, P, S or H is not specified, then the currently visible guest storage (real, primary virtual, secondary virtual or home) is to be altered. hexdata stores the hexadecimal data (hexdata) starting at the address specified by the hexaddr hexadecimal value. Greg hexword1 . . . stores the hexadecimal word(s) of data in successive general registers starting at the register specified by reg. Zreg hexword1 . . . stores the hexadecimal word(s) of data in successive access registers starting at the register specified by reg. Xreg hexword1 . . . stores the hexadecimal word(s) of data in successive control registers starting at the register specified by reg. Yreg hexdoubleword1 . . . stores the hexadecimal doubleword(s) of data in successive floating-point registers starting at the register specified by reg. Psw hexdoubleword stores the hexadecimal doubleword of data in the guest Program Status Word. CPU stores the guest CPU status (CPU timer value, clock comparator value, current PSW, prefix value, access registers contents, floating point registers contents, general registers contents, and control registers contents) in the corresponding assigned storage locations of the guest storage. The following responses and messages may be issued upon the execution of the STORE command: Store completed ISX74A Invalid storage length ISX80A Invalid guest storage address SX81A Interpretive space not available SX84A Operand missing or invalid TAKE Command The TAKE command is designed to redefine guest device characteristics, which were previously defined via the ATTACH or the DEFINE or the TAKE command. For all guest devices the TAKE command permits to redefine guest device numbers. For emulated 3270 display units the TAKE command permits to redefine functional keys and logical unit names of the corresponding real devices. TAKE command format:
Take gdevaddr[.count] [AS] newgdevaddr .vertline.
gdevaddr[.count] code1 [AS] code2 .vertline.
gdevaddr[.count] [AS] LUname 11111111
gdevaddr defines that a characteristics of the guest I/O device with the guest device number gdevaddr are to be redefined. .count is a decimal value designating the number of devices to be redefined starting with the guest device at gdevaddr device number. newgdevaddr specifies that the guest I/O device with the guest device number of gdevaddr has to have the new guest device number of newgdevaddr. code1 the following codes can be specified to define the functional keys to be redefined for emulated 3270 display unit(s):
ENTER enter function key
PF1 program function 1 key
PF2 program function 2 key
PF3 program function 3 key
PF4 program function 4 key
PF5 program function 5 key
PF6 program function 6 key
PF7 program function 7 key
PF8 program function 8 key
PF9 program function 9 key
PF10 program function 10 key
PF11 program function 11 key
PF12 program function 12 key
PA1 program attention 1 key
PA2 program attention 2 key
PA3 program attention 3 key
code2 the following codes can be specified to define the new functions for the code1 keys:
ENTER enter function key
PF1 program function 1 key
PF2 program function 2 key
PF3 program function 3 key
PF4 program function 4 key
PF5 program function 5 key
PF6 program function 6 key
PF7 program function 7 key
PF8 program function 8 key
PF9 program function 9 key
PF10 program function 10 key
PF11 program function 11 key
PF12 program function 12 key
PA1 program attention 1 key
PA2 program attention 2 key
PA3 program attention 3 key
TESTREQ test request function key
SYSREQ system request function key
SWITCH terminal switch key
The terminal switch function permits to switch from the real terminal used for emulation of the guest device gdevaddr to the next emulated guest device with the same logical unit name as was defined via the DEFINE or the TAKE command. LUname llllllll specifies the logical unit name of a corresponding real device for emulated 3270 display unit(s). The following responses and messages may be issued upon the of execution of the TAKE command: Device xxxx redefined as yyyy Key code1 of device xxxx redefined as code2 ISX36A The command is not applicable to device xxxx ISX38I Device xxxx has switched to LU llllllll ISX79A Device yyy is already defined ISX83W GETMAIN failed ISX84A Operand missing or invalid ISX91A Device xxx does not exist TRACE Command The TRACE command is designed to receive information about the events happening in the guest system which events are visible to ISX/390. TRACE command format:
TRace [event codes] [filter]
[Display] [Print Class x] [Halt] [Skip nnnnn]
[ON.vertline.OFF]
event codes the following codes can be specified to define the guest events the TRACE command is applicable: ITC--unknown interception code STOP--guest system is stopped WAIT--guest system in wait state LCTL--the LCTL instruction issued by the guest system SIGP--the SIGP instruction issued by the guest system DIAG--the DIAG instruction issued by the guest system STIDP--the STIDP instruction issued by the guest system SCK--the SCK instruction issued by the guest system SPX--the SPX instruction issued by the guest system STPX--the STPX instruction issued by the guest system STAP--the STAP instruction issued by the guest system SERVC--the SERVC instruction issued by the guest system TB--the TB instruction issued by the guest system CSCH--the CSCH instruction issued by the guest system HSCH--the HSCH instruction issued by the guest system RSCH--the RSCH instruction issued by the guest system MSCH--the MSCH instruction issued by the guest system SAL--the SAL instruction issued by the guest system SSCH--the SSCH instruction issued by the guest system STSCH--the STSCH instruction issued by the guest system TSCH--the TSCH instruction issued by the guest system STCRW--the STCRW instruction issued by the guest system STCPS--the STCPS instruction issued by the guest system RCHP--the RCHP instruction issued by the guest system SCHM--the SCHM instruction issued by the guest system TPI--the TPI instruction issued by the guest system I/O--I/O interruption or interception occurred EXT--external interruption or interception occurred M/C--machine-check interruption occurred P/C--program-check interruption occurred CCW--channel program executed by the guest system If no event codes are specified, then all event codes are assumed. filter the following operands can be specified as the filter to emprecise guest events the TRACE command is applicable:
Ugdevaddr[.count]
gdevaddr defines that I/O instructions and interruptions have to be traced for the guest device with the device number of gdevaddr .count is a decimal value designating the number of devices starting with the device number of gdevaddr for which I/O instructions and interruptions have to be traced. Display defines that an event has to be displayed on the ISX/390 operator console. Print CLass x defines that an event has to be printed using SYSOUT--data set with SYSOUT class x. The data set is dynamically allocated by the TRACE command. Halt defines that the guest system has to be stopped when an event has occurred. Skip nnnnn defines that the trace functions requested have to be activated, when nnnnn traced events have occurred. ON defines that previously specified trace parameters are set on. OFF defines that previously specified trace parameters are set off. If neither ON nor OFF is specified, then ON assumed. An operand combination of a new TRACE command line is logically added to or subtracted from the active opeand combination. The empty operand combination with the operand OFF at the end means that the TRACE function has to be stopped. The following responses and messages can be displayed and printed as the result of execution of the TRACE command: Trace--ON Trace--OFF ISX17W DYNALLOC failed ISX67W OPEN failed ISX72A Invalid operand combination ISX84A Operand missing or invalid ISX91A Device xxx does not exist ISX25I INV ITC cc PSW xxxxxxxx xxxxxxxx ISX25I STOP PSW xxxxxxxx xxxxxxxx ISX25I I/O ITV mm PSW xxxxxxxx xxxxxxxx ISX25I WAIT mm PSW xxxxxxxx xxxxxxxx ISX25I LCTL x,y aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I SIGP x,y aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I DIAG x,y aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I STIDP aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I SCK aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I SPX aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I STPX aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I STAP aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I SERVC x,y PSW xxxxxxxx xxxxxxxx ISX25I TB x,y PSW xxxxxxxx xxxxxxxx ISX25I CSCH dddd PSW xxxxxxxx xxxxxxxx ISX25I HSCH dddd PSW xxxxxxxx xxxxxxxx ISX25I RSCH dddd PSW xxxxxxxx xxxxxxxx ISX25I MSCH dddd aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I . . . mmff pppppppp ISX25I SAL llllllll PSW xxxxxxxx xxxxxxxx ISX25I SSCH dddd aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I . . . ORB xxxxxxxx xxxxxxxx xxxxxxxx ISX25I dddd CCW aaaaaaaa xxxxxxxx xxxxxxxx ISX25I dddd IDAW aaaaaaaa xxxxxxxx ISX25I STSCH dddd aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I . . . SCSW xxxxxxxx xxxxxxxx xxxxxxxx ISX25I TSCH dddd aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I . . . SCSW xxxxxxxx xxxxxxxx xxxxxxxx ISX25I STCRW aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I STCPS aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I RCHP id PSW xxxxxxxx xxxxxxxx ISX25I SCHM bbbbbbbb PSW xxxxxxxx xxxxxxxx ISX25I TPI mm aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I . . . dddd pppppppp ISX25I I/O INT dddd pppppppp PSW xxxxxxxx xxxxxxxx ISX25I EXT INT cccc pppppppp PSW xxxxxxxx xxxxxxxx ISX25I EXT ITV mmmm PSW xxxxxxxx xxxxxxxx ISX25I M/C INT PSW xxxxxxxx xxxxxxxx ISX25I P/C INT cccc aaaaaaaa PSW xxxxxxxx xxxxxxxx ISX25I ???? cccc PSW xxxxxxxx xxxxxxxx SX/390 MESSAGES ISX/390 messages have the following message format: ISXnns text Where: ISX--ISX/390 program product name, nn--message serial number, s--message type code: I--information; no operator action is required, A--action; the operator must perform a specific action, W--warning; action has to be determined and performed. text--message text. ISX01I Guest is running This message is issued when the guest system is executed by ISX/390. ISX02W Device xxx--I/O buffer overflow. Channel program is cute down This message is issued when ISX/390 detects that translation buffers used to convert a guest channel program for the xxx device to OS/390 form are overflowed. The guest channel program is truncated. ISX03W Password and expiration date must be defined before IPL This message is issued when initial program loading of the guest system is requested before ascertaining the customer's password and the expiration date for ISX/390. ISX05I Guest is stopped [ . . . at address xxxxxx] [ . . . by the guest itself] This message is issued, when ISX/390 stops execution of the guest system by request of an ISX/390 operator or by request of the guest system itself via the DIAGNOSE instruction. ISX06I Initial reset is done This message is issued when during the execution of the IPL command with the NOCLEAR operand store CPU status and initial CPU reset have performed. ISX08I Device xxx is ready for I/O This message is issued when ISX/390 detects that the specified device is operational. ISX09I Device xxx is active This message is issued when ISX/390 detects that the specified device is doing I/O. ISX10A Device xxx is not ready for I/O This message is issued for the real device with guest device number xxx, when the READY Command Processor detects that the device is not operational. This message is issued for the emulated device, when the guest system or ISX/390 has issued an I/O request, but ISX/390 cannot allocate or open the data set defined in the DEFINE command for the device or receive storage of the input buffer. ISX11W ATTENTION! VALIDITY OF THE ISX/390 LICENCE HAS ELAPSED This message is issued when the validity of the ISX/390 licence has elapsed. ISX12W Validity of the ISX/390 licence is expiring This message is issued 30 days before the validity of the ISX/390 licence will expires. ISX13A Console nnnnnn is not active This message is issued during the execution of the SET command if specified console nnnnnnnn is not active. ISX14A Console validation service not available This message is issued during execution of the SET command if the console validation service of the CONVCON macro currently is not available. ISX15A Specified console name nnnnnnnn not defined in OS/390 This message is issued during the execution of the SET command if specified console name nnnnnnn is not defined in OS/390. ISX16W CONVCON failed This message is issued during the execution of the SET command if any error is detected during the execution of the CONVCON macro. ISX17W DYNALLOC failed This message is issued, if any error is detected during the execution of the DYNALLOC macro. ISX18W Incorrect state of ISX/390 Common Area. Reply R to reinitialize it or C to check it again. This message is issued to an ISX/390 operator, if an incorrect state of the ISX/390 Common Area is detected during ISX/390 initialization. Reply `R` reinitialize the area if ISX/390 is alone in the system. Reply `C` is possible if other ISX/390 jobs are in the shutdown process. ISX19A Invalid reply, try again. This message is issued to an ISX/390 operator, an incorrect reply is entered by the operator for ISX18W request. ISX20W ISX/390 job jjjjjjjj abnormally terminated This message is issued to ISX/390 operator, when an abnormal termination of ISX/390 has occurred. ISX21W No SDWA has built by OS/390 This message is issued to an ISX/390 operator, if no SDWA has been built for ESTAE Exit routine of ISX/390. ISX22W Completion code cccccc Reason code rrrrrrrr This message is issued to an ISX/390 operator to display a completion code cccccc and a reason code rrrrrrrr (if the last one is supported). ISX23W Percolation has occurred This message is issued to an ISX/390 operator, if percolation has occurred, when ESTAE Exit routine of ISX/390 receives control from OS/390. ISX24W Unexpected interception with code cc This message is issued when ISX/390 receives interception with an interception code of cc. The guest system has stopped. ISX25I message text These messages are displayed or printed when the ISX/390 trace function is active with the DISPLAY or PRINT option. The `message text` is one of the following: NV ITC cc PSW xxxxxxxx xxxxxxxx defines that interception of the guest system with the invalid code cc has occurred. The guest PSW is xxxxxxxx xxxxxxxx. STOP PSW | ||||||
