By using the ASH-translation mechanism,
anyone of up to 64K address spaces can be selected to bacome the primary or
secondary address space.
The ASNs for the primary and secondary
address spaces are assigned positions in
control registe The ASN for the
primary address 5, ee, called the prima­
ry ASH, is assigned bits 16-31 of
control register 4, and that for the
secondary address space, called the
secondary ASH, is assigned bits 16-31 of
control register 3. The registers have
the following formats:
Control Register 4 PASH 16 31
Control Register 3 SASH 16 31
An instruction that uses ASH translation
and loads the primary or secondary
segment-table designation into the
appropriate control register also loads
the corresponding ASH into the appropri­
ate control register.
Note: Virtual storage consisting of
byte locations ordered according to
their virtual addresses in an address
space is usually referred to as
"storage." ASN TRANSLATION ASN translation is the process of trans­
lating the 16-bit ASN to locate the
address-space-control parameters. ASN
translation is performed as part of PROGRAM CALL with space switching
(PC-ss), PROGRAM TRAHSFER with space
switching (PT-ss), and SET SECOHDARY ASH with space switching (SSAR-ss). ASH translation is also performed as part of LOAD ADDRESS SPACE PARAMETERS. For
PC-ss and PT-ss, the ASH which is trans­ lated replaces the primary ASH in
control register 4. For SSAR-ss, the ASN which is translated replaces the
secondary ASN in control register 3.
These two translation processes are called primary ASN translation and
secondary ASN translation, respectively,
and both can occur for LOAD ADDRESS
SPACE PARAMETERS. The ASH-translation process is the same for both primary and secondary ASN translation; only the uses , of the results of the process are
different.
The ASH-translation process uses two
tables, the ASH first table and the ASH second table. They are used to locate
the address-space-control parameters and a third table, the authority table,
which is used when ASN authorization is
performed.
For the purposes of this translation,
the 16-bit ASN is considered to consist
of two parts: the ASN-first-table index
(AFX) is the leftmost 10 bits of the ASN, and the ASN-second-table index
(ASX) is the six rightmost bits. The ASH has the following format: ASH AFX ASX
o 10 15
The AFX is used to select an entry from
the ASN first table. The origin of the ASH first table is designated by the
ASN-first-table origin in control regis­
ter 14. The ASN-first-table entry
contains the origin of the ASH second
table. The ASX is used to select an entry from the ASN second table. This
entry contains the address-space-control
parameters. ASH-TRANSLATION CONTROLS ASN translation is controlled by
ASH-translation-control bit and
ASH-first-table origin, both of
reside in control register 14.
register has the following format:
Control Register 14 AFTO 12 20 31
the
the
which
The
ASN-Translation Control (+): Bit 12 of
control register 14 1S the ASN­ translation-control bit. This bit
provides a mechanism whereby the control
program can indicate whether ASN trans­
lation can occur while a particular
program is being executed. Bit 12 must
be one to allow completion of these
instructions: LOAD ADDRESS SPACE PARAMETERS
SET SECONDARY ASN PROGRAM CALL with space switching PROGRAM TRAHSFER with space switch-
ing Otherwise, a special-operation exception
is recognized. The ASN-translation­
control bit is examined in both the
problem and the supervisor states.
Chapter 3. Storage 3-13
ASH-First-Table Origin (AFTO): Bits 20-31 of control register 14, with 12
zeros appended on the right, form a
24-bit real address that designates the
beginning of the ASH first table. With
extended real addressing, the ASH­ first-table origin is still a 24-bit
real address and is extended on the left
with zeros. 11100000001 018 AX
32 ASH-TRANSLATIOH TABLES STL
The ASH-translation process consists in
a two-level lookup using two tables: an ASH first table and an ASN second table.
These tables reside in real storage.
ASH-First-Table Entries
The entry fetched from the ASN first
table has the following format: 1110000000\ ASTO 1
0000
1
o 1 8 28 31
The fields in the entry are allocated as
follows:
AFX-Invalid Bit (1): Bit 0 controls
whether the ASN second table associated
with the ASN-first-table entry is avail­
able. When bit 0 is zero, ASN trans­
lation proceeds by using the designated ASN second table. When the bit is one,
the ASN translation cannot continue.
ASN-Second-Table Origin (ASTO): Bits
8-27, with four zeros appended on the
right, are used to form a 24-bit real
address that designates the beginning of
the ASN second table. With extended
real addressing, the ASH-second-table
origin is still a 24-bit real address
and is extended on the left with zeros.
Bits 1-7 and 28-31 of the AFT entry must
be zeros; otherwise, an ASN­
translation-specification exception is
recognized as part of the execution of
the instruction using that entry for ASN translation.
ASH-Second-Table Entries
The entry fetched from the ASH second
table has the following format:
3-14 System/370 Principles of Operation
64 72 Ivloooooool 96 104 The fields in the entry are allocated as
follows:
ASX-Invalid Bit (1): Bit 0 controls
whether the address space associated
with the ASN-second-table entry is
available. When bit 0 is zero, ASH translation proceeds. When the bit is
one, the ASH translation cannot
continue.
Authority-Table Origin (ATO): Bits
8-29, with two zeros appended on the
right, are used to form a 24-bit real
address that designates the beginning of
the authority table. With extended real
addressing, the authority-table origin
is still a 24-bit real address and is
extended on the left with zeros.
Authorization Index (AX): Bits 32-47
are used as of primary ASN
translation by PROGRAM CALL and PROGRAM TRANSFER and may be used by LOAD ADDRESS SPACE PARAMETERS. The AX field is
ignored for secondary ASN translation.
Authority-Table Length (ATl): Bits
48-59 specify the length of the authori­
ty table in units of four bytes, thus
making the authority table variable in
multiples of 16 entries. The length of
the authority table, in units of four
bytes, is one more than the ATL value.
The contents of the ATL field are used
to establish whether the entry desig­
nated by a particular AX falls within
the authority table.
Segment-Table Designation (STD): Bits
64-95 are used as a result of ASN trans­
lation to replace the primary-segment-
table designation (PSTD) or the
secondary-segment-table designation
(SSTD). For SET SECONDARY ASN, the STD
field is placed in the SSTD, bits 0-31 of control register 7. For PROGRAM CALL, the STD field is placed in the
PSTD, bits 0-31 of control register 1.
Each of these actions may occur inde­
pendently for LOAD ADDRESS SPACE PARAMETERS. For PROGRAM TRANSFER, the
Previous Page Next Page