80 V"/310 Planning and System Generation Guide
Discontiguous Saved Segments
Discontiguous Saved Segments VM/370 supports discontiguous shared segments and provides shared
segment protection.
With discontiguous saved segment support, you can attach and detach
segments of storage to and from your virtual machine. These segments
may contain reenterable code that can be shared by many users. Thus,
programs that are required sometimes, but not all the time, can be saved
and only loaded when they are needed. Also, discontiguous saved
segments can be attached to your virtual machine in nonshared mode for
testing and debugging. When in attached processor mode, all shared segments are duplicated.
Sufficient storage is obtained to construct duplicate page and swap
tables in contiguous storage. This additional storage space should be
planned for, when running in attached processor mode.
The SHRTABLE SHRPAGE pointer points to the page and swap tables for
the main processor, and the page and swap tables for the attached
processor will be at a fixed offset from the page and swap tables for
the main processor. DMKCFG initializes both sets of page and swap
tables. At first, the swap tables for the main processor and attached
processor will point at the DASD locations specified in DMKSNT. However, as the pages are read into storage and then stolen, each shared
page is allocated its own DASD slot and pointed to by only one swap
table entry. The last user to purge a shared system causes both sets of
page and swap tables to be freed. See the !M/31Q for a description of shared segments.
Segments that are to be saved in this manner must be loaded at an
address within your virtual machine and then must be saved. To do this
in CMS (following eMS conventions) you must define your virtual machine
size large enough to contain the discontiguous segments, loader tables,
and CMS control block storage at the end of virtual storage; load the
segments; save the segments; then reduce the virtual storage to its normal size. When you attach these segments, they are attached beyond the end of your virtual machine. The procedures for loading and saving
discontiguous segments are similar to the procedure that already exists
for loading and saving systems. CMS has three EXEC procedures to help you place portions of CMS in
discontiguous saved segments: DOSGEN, which loads and saves CMS/DOS support VSAMGEN, which loads and saves CMS/VSAM and Access Method Services
support CMSXGEN, which loads and saves the CMS Editor, EXEC processor, and OS simulation routines See the section "Loading and Saving Discontiguous Saved Segments" in "Part 3. Generating VM/310 (CP, CMS, RSCS, and IPCS) " for descriptions
of how the DOSGEN and VSAMGEN EXEC procedures are used. The CMSXGEN procedure is described in Step 24 of the system generation procedure in Part 3. Part 1. Planning for System Generation 81
Previous Page Next Page