If you do not plan to place High Level Assembler into a saved segment
then bypass this step and continue with Step 6: Put High Level Assembler into production.
A logical saved segment provides several advantages such as saving
on real storage, and decreased input/output; also a saved segment can reside
above the defined virtual storage of a virtual machine. To build a
saved segment you must:
- Define the physical saved segment using the segment mapping tool VMFSGMAP.
- Use VMFBLD to build it.
For more information about using VMSES/E for saved segments, see
z/VM: Saved Segments Planning and Administration.
Also see the SEGGEN command in z/VM: CMS Commands and Utilities Reference.
Defining and building the High Level Assembler saved segment should be
performed from the installation user ID. If you move any segments that
are currently defined on your system, you must ensure that they are
rebuilt from the user ID that maintains them.
- Logon to the installation user ID P696234J.
- Establish read access to VMSES/E.
Command |
Explanation |
---|
link MAINT 5e5 5e5 rr
access 5e5 b
|
Commands to access VMSES/E. |
- Establish write access to the software inventory disk.
Command |
Explanation |
---|
link MAINT 51d 51d mr
access 51d d
|
Commands to access software inventory files. |
If another user already has the software inventory disk linked in
write mode (R/W), you are not allowed to link to that disk in write
mode. The other user must relink to the software inventory disk in
read-only mode, then you can try the above procedure again.
The MAINT 51D disk is where the VMSES/E system-level software
inventory and other dependent files reside.
You cannot proceed
with the installation procedure until you have write access to the
software inventory disk.
- Add High Level Assembler segment object definitions to the SEGBLIST EXC00000
build list.
All the modules that are to reside in the logical saved segment
have an RMODE=ANY and a AMODE=31. Therefore, the physical
saved segment that is about to be defined can reside
above 16MB.
Command |
Explanation |
---|
vmfsgmap segbld esasegs segblist
|
This command displays a panel for making segment updates. |
This command displays a panel for making segment updates,
shown in
Figure 1.
Figure 1. Segment map panel example VMFSGMAP - Segment Map More: +
Lines 1 to nn of nn
000-MB 001-MB 002-MB 003-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
M CMS SYS W-W-------------1...............2...............3...............
M GCS SYS W---------------1...............2...............3...............
004-MB 005-MB 006-MB 007-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
CMSPIPES DCS 4...............5...............6...............RRRRRR----------
M GCS SYS RRRRRRNNNNNNNNNNNNNNNNNNNNNNNNNN6...............7...............
008-MB 009-MB 00A-MB 00B-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
DOSBAM SPA 8...............9...............A...............====------------
CMSBAM MEM 8...............9...............A...............RRRR............
CMSDOS MEM 8...............9...............A...............R...............
CMSVMLIB DCS RRRRRRRRRRRRRRRR9...............A...............B...............
00C-MB 00D-MB 00E-MB 00F-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
HELPINST DCS RRRRRRRRRRRRRRRRD...............E...............F...............
F1=Help F2=Chk Obj F3=Exit F4=Chg Obj F5=File F6=Save
F7=Bkwd F8=Fwd F9=Retrieve F10=Add Obj F11=Del Obj F12=Cancel
====>__
Browse through this segment. If the ASMAPSEG segment is encountered
it should be removed by placing the cursor under the ASMAPSEG name
and pressing PF11. A successful deletion will give message
VMFSMD2046I Segment ASMAPSEG has been deleted
- Go to Add Segment Definition panel by pressing PF10.
Press
F10 to take you from the Segment Map panel to the Add
Segment Definition panel. See
Figure 2 to see the Add
Segment Definition panel displays.
Figure 2. Add segment definition panel example Add Segment Definition
Lines 1 to nn of nn
OBJNAME....: ????????
DEFPARMS...:
SPACE......:
TYPE.......: SEG
OBJDESC....:
OBJINFO....:
GT_16MB....: NO
DISKS......:
SEGREQ.....:
PRODID.....:
BLDPARMS...: UNKNOWN
F1=Help F2=Get Obj F3=Exit F4=Add Line F5=Map F6=Chk MEM
F7=Bkwd F8=Fwd F9=Retrieve F10=Seginfo F11=Adj MEM F12=Cancel
====>
- Obtain the High Level Assembler segment definitions from the PRODPART file.
Enter the following highlighted values into the 'Add Segment Definition
Panel'.
Command |
Explanation |
---|
OBJNAME....: ASMAPSEG
PRODID.....: P696234J {HLASM|HLASMSFS}
|
|
Use HLASM for building a segment from a minidisk.
Use HLASMSFS for building a segment from SFS directories.
|
F10 |
F10 obtains the High Level Assembler segment information from the
P696234J PRODPART file.
|
See Figure 3
for the refreshed Add Segment definition panel that is displayed.
If you have created a PPF override file then replace the PPF name
on the
BLDPARMS. In this example, replace P696234J
with your PPF override name.
Figure 3. Add segment definition panel showing the new segment Add Segment Definition More: +
Lines 1 to nn of nn
OBJNAME....: ASMAPSEG
DEFPARMS...: 920-9F0 SR
SPACE......:
TYPE.......: PSEG
OBJDESC....: SEGMENT DEFINITION FOR HLASM R5
OBJINFO....:
GT_16MB....: YES
DISKS......:
SEGREQ.....:
PRODID.....: P696234J HLASM
BLDPARMS...: PPF(P696234J HLASM ASMBLSEG)
VMFSMD2760I SEGINFO processing completed SUCCESSFULLY
F1=Help F2=Get Obj F3=Exit F4=Add Line F5=Map F6=Chk MEM
F7=Bkwd F8=Fwd F9=Retrieve F10=Seginfo F11=Adj MEM F12=Cancel
====>
- Go back to the Segment Map panel.
Command |
Explanation |
---|
F5 |
F5 returns you to the Segment Map panel. |
See
Figure 4 for the refreshed Segment Map panel that
displays.
Figure 4. Segment map panel with added segments VMFSGMAP - Segment Map More: -
Lines nn to nn of nn
000-MB 001-MB 002-MB 003-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
M CMS SYS W-W-------------1...............2...............3...............
M GCS SYS W---------------1...............2...............3...............
004-MB 005-MB 006-MB 007-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
CMSPIPES DCS 4...............5...............6...............RRRRRR----------
M GCS SYS RRRRRRNNNNNNNNNNNNNNNNNNNNNNNNNN6...............7...............
008-MB 009-MB 00A-MB 00B-MB
Name Typ 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF
DOSBAM SPA 8...............9...............A...............====------------
CMSBAM MEM 8...............9...............A...............RRRR............
CMSDOS MEM 8...............9...............A...............R...............
CMSVMLIB DCS RRRRRRRRRRRRRRRR9...............A...............B...............
DOSINST DCS 8...............R---------------A...............B...............
P ASMAPSEG DCS 8...............--RRRRRRRRRRRR--A...............B...............
00C-MB 00D-MB 00E-MB 00F-MB
F1=Help F2=Chk Obj F3=Exit F4=Chg Obj F5=File F6=Save
F7=Bkwd F8=Fwd F9=Retrieve F10=Add Obj F11=Del Obj F12=Cancel
====>
- Save the new information and exit from the Segment Map panel.
Press F5 to save all changed information and exit the map panel.
- Prepare to build the segment.
- Set storage.
Command |
Explanation |
---|
def stor 24M |
This CP command defines
the virtual machine storage to be greater than where the segment is
loaded.
If defining a saved segment above 16MB then the virtual machine
storage should be above 16MB. In general the storage should be
large enough to hold the segment.
If you are using SFS in this user ID,
even if only for the A disk, and you are placing
the ASMAPSEG segment below 16MB at 920-9F0 then use
a 'DEF STOR 24M' command. This will allow CMS control
blocks not to interfere with the storage area to be
used by the High Level Assembler saved segment.
|
- IPL the virtual machine without accessing the profile.
If IPLing with minidisks:
Command |
Explanation |
---|
ipl cms parm clear nosprof instseg no mtseg no
** DO NOT press ENTER at the VM READ** |
|
This command clears your virtual machine and bypasses the
execution of the system profile (SYSPROF EXEC) and the loading of
the installation saved segment (CMSINST).
|
access (noprof |
Bypass the execution of the PROFILE EXEC. |
If IPLing with SFS:
Command |
Explanation |
---|
ipl cms parm clear nosprof instseg no mtseg no filepool vmsys
** DO NOT press ENTER at the VM READ** |
|
This command clears your virtual machine and bypasses the
execution of the system profile (SYSPROF EXEC) and the loading of
the installation saved segment (CMSINST).
This assumes VMSYS is the default filepool.
|
access (noprof |
Bypass the execution of the PROFILE EXEC. |
- Access disks
Command |
Explanation |
---|
access 5e5 b
|
Access the VMSES/E code. |
link MAINT 51d 51d mr
access 51d d
|
Establish write access to the software inventory disk. |
- Issue VMFBLD command to build the High Level Assembler segment.
Command |
Explanation |
---|
vmfbld ppf segbld esasegs segblist ASMAPSEG (serviced
|
Options:
- serviced
- Identifies build requirements and builds those objects
flagged as serviced in the service-level build status table.
- Update the SYSTEM SEGID file on the CMS system disk.
The system segment identification file (SYSTEM SEGID)
must reside on the CMS system disk (normally file mode S)
and is named SYSTEM SEGID so that it is available
to CMS at initialization time. This allows CMS to recognize
the logical saved segment name.
The file must also be copied to the test CMS system disk
to prevent back-levelling during application of service.
The following functions can only be performed by
authorized user IDs.
- Release disk for use by MAINT user ID.
Command |
Explanation |
---|
rel d (det
|
Release the software inventory disk. |
- Log on to MAINT user ID.
- Move SYSTEM SEGID file
Command |
Explanation |
---|
acc 190 t
|
Access the production CMS system disk (normally MAINT 190). |
acc 490 v
|
Access the test CMS system disk (normally MAINT 490). |
acc 51d d
|
Access the software inventory disk. |
copyfile system segid d system segid t2 (replace olddate
|
|
Copy file to production CMS system disk. |
copyfile system segid d system segid v2 (replace olddate
|
|
Copy file to test CMS system disk. |
Options:
- replace
- Causes the output file to replace an existing file
with the same file identifier.
- olddate
- Uses the date and time on each input file as the date
and time of the last update of each corresponding output file.
The CMS system is not resaved here, it is done after
moving High Level Assembler to MAINT's 19E disk in Step 6: Put High Level Assembler into production.