Pardon if I answer this twice. I had a crash, right when I hit?send a few minutes ago. I was only describing the HI immediate command implementation in the original REXX. Almost all the multiuser, multitasking, and asynchronous event processing is handled in the VM Control Program.? This design allows CMS to be treated as a single user system. There? is one application running. It may synchronously?call other programs. It can use simple? Input/Output operations which are treated as synchronous. Some events, however, are inherently asynchronous. Timer expirations, communications with other virtual machines, special?asynchronous input/output, etc. CMS interruption?handling is documented in the? VM/370 System Programmer's Guide. In general, CMS applications sign up to be notified of asynchronous events by providing the address of an event handler routine. These handlers can mark events complete by? setting indicators which are polled by mainline code. The mainline routine can also relinquish control by? a WAIT state, so that event handlers POST the completion of events and the mainline code resumes execution.? The APIs for asynchronous operation are only available to assembler level routines in VM/370.? Later VM systems (more recent than 40 years ago) extended these capabilities to enable client/server application development in CMS. Although VM application vendors (for products like The SAS System, and? the VM:Manager Suite of products) built their own multitasking layers for their products, CMS did not? support true Application Multitasking until about 30 years ago.? Even 45 years ago,?receiving interrupts, and registering event handlers were fundamental?components of? CMS. Bob Bolch On Wed, Apr 15, 2020 at 5:24 PM adriansutherland67 <adrian@...> wrote: Bob ... Noted |