Todd Burch wrote on 02/03/2006 11:57:09 AM:

> Reading through IPCS customization, it is not clear to me how to go about
> accessing data in the dataspace through a verbexit.
>
> I would typically use the Storage Access Service (Chap 10.2.18) to acess
> data  in a dump, but it says right up front to use the Storage Access
> function of the Symbol Service (Chap. 10.2.20).
>
> In the Symbol Service, I have to supply an ESR, which in turn describes
the
> ASID of the owning dataspace and the DSPNAME itself.  OK so far.
>
> What is not clear to me is where to supply the address within the
dataspace,
> or the length of the data I want returned.  Do I have to create a symbol
> (using the Equate Symbol Service) for each address/length I want to
> (programmatically) look at in the dataspace?  Seems like a pain.
>
> On the other hand, I considered using the Storage Map Service (Chap
> 10.2.19), as this indicates dataspace access is supported.  But,
similarly
> to the Symbol Service, I have not figured out how/where to specify the
> address & length of storage I am insterested in.

The BLSRESSY (symbol service) and BLSRSASY structures both use three
elements to talk about the dump data of interest:

1.  A BLSRDATS structure (field name suffix AS) that you've characterized
accurately.  It tells IPCS what address space (broader term than you
generally hear being used to discuss z/OS) is of interest.  A large variety
of address spaces are supported in various contexts, including ASID(a)
DSPNAME(d).  Part of IPCS considers every address space to have full 64-bit
addresses.  Some front-end functions notice that you really cannot talk
about addresses beyond 1040 in a HEADER record and that most data spaces
are still limited to 31-bit addresses.

2.  An address that comes in two flavors, depending on whether you asked
for an ABITS(64) structure or accepted a default ABITS(31) structure.  The
former is a 64-bit address, and the latter is a 31-bit address in a 32-bit
field.  In all cases the field name suffix is LAD for "logical address".
The logical address is the value that you expect to find in other blocks
that point to whatever is being discussed.  In the case of blocks like
TCBs, UCBs, RBs, ASVTs, JSCBs, and at least a few others, it is not the
address of the first byte occupied by the thing being discussed.

3.  A BLSRDATC structure (field name suffix D in BLSRESSY and F in
BLSRSASY) that supplies an attribute bundle including offset, length, and
one-dimensional array characteristics.  The offset plus the logical address
yields the address of the first byte occupied by whatever is being
discussed in the address space in the dumped system.  When you request a
dump access function, the first phsical byte of interst lands in the first
byte of the buffer that you provide.  That may require an interesting USING
operation to get proper addressability to what lands in the buffer.

There are also some other fields that help explain why BLSRESSY (symbol
table) and BLSRSASY (storage map) records are different.

I hope that this helps.

Bob Wright - MVS Service Aids

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to