Sorry for joining this thread late.
You are correct Larry - the z/OS C library has very little help for PDS
processing. I wrote an RFE in 2015, but I don't expect to want it
anymore if/when IBM responds :-)
https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=80811
We recently released two new shell command utilities in Co:Z which have
all sorts of options for loading/unloading PDS/PDSEs to/from zFS files.
https://www.dovetail.com/docs/zos-utilities/dsp-ref_getpds.html
https://dovetail.com/docs/zos-utilities/dsp-ref_putpds.html
The code is 98% C++, with bpam/bsam assembler routines. Our C++ is
31-bit LE with XPLINK (IMO the only rational linkage for C++ at
scale). Our assembler code is quite small and uses XPLINK linkage
macros (EDCXPRLG, EDCXEPLG) and also the XPLINK stack local data. This
is *so* much nicer than the old way of writing reentrant code. All of
the BSAM fancies (DECB/buffer queue, record blocking, etc) is done in
C++. Only one DCB (BPAM/BSAM).
The performance of loading/unloading a large PDS/PDSE is great - like
two orders of magnitude faster than /bin/cp which opens the dataset for
each and every member :-)
We also support ISPF-style ENQs with DISP=SHR, which is really handy for
many use cases, like devops.
Kirk Wolf
Dovetailed Technologies
http://dovetail.com
On 7/17/21 6:25 PM, Larry Slaten wrote:
Thanks to everyone for their input. Since I was already using C/C++
I/0 functions to access a card file I thought that it would be simple
enough to setup the DD:SYSLIB and that it would actually point me to a
DCB address that I could use in my BLDL and LOAD macro(s). I ended up
defining the DCB in my assembler program and did all of the right
stuff to maintain re-entrant code. It would have been nice if the DCB
address would have been easily accessible.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN