Open XL C/C++ PDF documentation
I found the web documentation for the Open XL C/C++ implementation here: https://www.ibm.com/docs/en/cloud-paks/z-modernization-stack/2022.4?topic=languages-cc-open-enterprise-zos Is there a place where IBM has provided a set of PDF manuals for the whole set of Cloud Pak "modernization" tools? Perhaps a large zip file of an indexed set of PDF's like those we have for z/OS itself? If not for the entire set of tools, perhaps just separate PDF collections for Open XL C/C++, node.js, and python? Peter This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Searching the ASVT
. Hello I am on a z/os 2.2 system, trying to rseurrect some old code. . can some one confirm the instructions for Searching the Address Space Vector Table (ASVT) on z/OS 2.2 . This program loads R10 with CVTASVT L R10,CVTASVTGET ASVT ADDRESS USING ASVT,R10 ESTABLISH ADDRESSABILITY . It then issues a Load Address For the first entry ? This doesn't look correct to me ? LAR11,ASVTENTY GET # OF FIRST ENTRY . Next its test for an ASCB that is assigned. TM0(R11),ASVTAVALVALID ASCB Available ? BORUNLOP1NO, CHECK NEXT ASVT ENTRY . * Examine ASCB . . Besides the Load Address above - How should this module advance to the Next ASVT entry ? Shoud I issue the following to get to the next ASVT LR10,ASVTFRST . The current code issues the following instruction, which looks incorrect according to IHAASVT LAR11,4(,R11) Advance NEXT ASVT ENTRY . . Your comments please . Paul D'Angelo *** -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Searching the ASVT
> I am on a z/os 2.2 system, trying to rseurrect some old code. > . > can some one confirm the instructions for Searching the > Address Space Vector Table (ASVT) on z/OS 2.2 > . > This program loads R10 with CVTASVT > L R10,CVTASVTGET ASVT ADDRESS > USING ASVT,R10 ESTABLISH ADDRESSABILITY > . > It then issues a Load Address For the first entry ? > This doesn't look correct to me ? > LAR11,ASVTENTY GET # OF FIRST ENTRY > . > Next its test for an ASCB that is assigned. > TM0(R11),ASVTAVALVALID ASCB Available ? > BORUNLOP1NO, CHECK NEXT ASVT ENTRY > . > * Examine ASCB > . > The current code issues the following instruction, which > looks incorrect according to IHAASVT > LAR11,4(,R11) Advance NEXT ASVT ENTRY ASVT mapping: https://www.ibm.com/docs/en/zos/2.2.0?topic=information-asvt-mapping That looks correct to me. Here's some code from MVS3.8 IEAVEAC0: L R1,CVTASVT-CVT(R1) GET THE ASVT 63660002 BCTR R13,ZERO ASID-163710002 SLL R13,TWO(ASID-1) X 4 63730002 L R13,ASVTENTY-ASVT(R13,R1) GET ASCB ADDRESS @YM01596 63750002 So each slot in the ASVT is a 4 byte pointer with the high bit off if points to an ASCB. ASID 0 doesn't exist, so ASVTENTY is the pointer for ASID 1. It does need some check to not run off the end of the ASVT... https://www.ibm.com/docs/en/zos/2.2.0?topic=information-asvt-heading Size: Offset of ASVTEND minus offset of ASVTBEGN plus four times the value of ASVTMAXU. I'd guess that there are ASVTMAXU 4 byte entries starting and counting ASVTENTY. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Searching the ASVT
Hi, I'm not sure what you are trying to do, Most people would use the ASVT to get tot he ACSB to see what's running. If it is that you are trying to search the ASCB to see if a task is actually executing, then all you really need from the ASVT is max number of ASCBS (located in ASVTMAXU) and the pointer to the first ACSB entry (located in ASVTENTY). You load ASVTMAXU into a register (let's say R14) and LA ASVTENTY into a Reg (let's say R6) L R6,16 LOAD ADDR OF CVT USING CVT,R6 SET ADDRESSABILITY TO CVT L R6,CVTASVT POINT TO ADDRESS SPACE VECTOR TABLE. DROP R6 DROP ADDRESSABILITY TO CVT USING ASVT,R6 SET ADDRESSABILITY TO ASVT L R14,ASVTMAXU LOAD MAX. NUMBER OF ADDRESS SPACES. LAR6,ASVTENTYLOAD ADDRESS OF FIRST ASCB POINTER DROP R6 DROP ADDRESSABILITY TO ASVT then you loop until you find what you want JOBSRCH2 ICM R3,B'',0(R6)POINT TO ASCB BNP JOBSRCH5ZERO OR NEGATIVE, BYPASS THIS ONE USING ASCB,R3 SET ADDRESSABILITY TO ASCB ICM R15,B'',ASCBJBNI LOAD ADDRESS OF JOB NAME BZJOBSRCH3ZERO, NOT A BATCH JOB must be STC MVC SRCHNAME,0(R15) SAVE JOB NAME B JOBSRCH4GO SEE IF REQUESTED JOB/TASK NAME JOBSRCH3 EQU * Not a batch job, must be STC ICM R15,B'',ASCBJBNS LOAD ADDRESS OF STC TASK NAME MVC SRCHNAME,0(R15) SAVE TASK NAME ... then you compare SRCHNAME to whatever you are looking for or just move it to print if you are just listing them ..then you just keep looping until you hit the end of the ASCBs JOBSRCH5 LAR6,4(R6)POINT TO NEXT ASCB POINTER. BCT R14,JOBSRCH2LOOP THROUGH ASCBS If you object is to just scan the ASVT, then I have to ask why you would need to do that? Brian -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Searching the ASVT
On Sat, 4 Feb 2023 at 18:00, esst...@juno.com wrote: > I am on a z/os 2.2 system, trying to rseurrect some old code. > . > can some one confirm the instructions for Searching the > Address Space Vector Table (ASVT) on z/OS 2.2 > . > This program loads R10 with CVTASVT > L R10,CVTASVTGET ASVT ADDRESS > USING ASVT,R10 ESTABLISH ADDRESSABILITY > That's fine. > It then issues a Load Address For the first entry ? > This doesn't look correct to me ? > LAR11,ASVTENTY GET # OF FIRST ENTRY > It's fine. The ASVT has a bunch of header stuff, and then an array of fullword pointers starting at ASVTENTY. The PL/X declaration may make it a bit clearer. Next its test for an ASCB that is assigned. > TM0(R11),ASVTAVALVALID ASCB Available ? > BORUNLOP1NO, CHECK NEXT ASVT ENTRY > It's fine.I suppose there may be a serialization issue, e.g. an ASVT entry's assignment status may change after you've looked. But programs that either index the ASVT with the ASID (x 4), or those that go sequentially through the array and do with each active address space have done it this way forever (i.e. since 1972), and I'm sure many are still out there working fine. Like anything, it's conceivable IBM could change this at some point, but it's such a basic interface in MVS--> z/OS that they would surely introduce some new data structure or API to access the list of ASCBs rather than change the ASVT and break things all over the place. > Besides the Load Address above - How should this module > advance to the Next ASVT entry ? > There's nothing wrong with the LA. The start of the array of ASCB pointers is at whatever offset ASVTENTY is at, and that hasn't changed in 50 years. The content of the header info has grown, but not the offset of the array of pointers. > Shoud I issue the following to get to the next ASVT > LR10,ASVTFRST > No. I think you're thinking that the entire ASVT has multiple instances that are chained together. There's only one, with an array of pointers on the end. ASVTFRST points somewhere you don't want - I think the first *available* ASCB, though IBM doesn't document the ASCB creation logic, and I assume things have changed with reusable ASIDs. Presumably you are not planning to modify the ASVT, so you're not looking for an available entry... If you are, well Just Don't. But effectively ASVTFRST is element 0 of the array of ASCB pointers, and there's no ASID 0. So if you have the address of ASVTFRST (not the address that is *in* ASVTFRST), then you can multiply the ASID by 4 and use it as an origin-0 array index. If you start at ASVTENTY then it's origin-1, so add 4 (or 1 before you multiply by 4). Or if you want to look at all active ASCBs then start with the first array element, follow the pointer *if it's active*, and do whatever it is you want to do with each ASCB. > The current code issues the following instruction, which > looks incorrect according to IHAASVT > LAR11,4(,R11) Advance NEXT ASVT ENTRY > It's fine. I suppose if you want to be pedantic you could use L'ASVTENTY instead of hardcoding 4, but seriously, that's not going to change, and if it does all kinds of other things will break. Tony H. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: I want to cry
Adam Smith believed that a free market was impossible without government intervention to prevent monopolies. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Bill Johnson [0047540adefe-dmarc-requ...@listserv.ua.edu] Sent: Friday, February 3, 2023 11:28 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: I want to cry Social democratic countries have much better quality of lives than America. Very few would like pure capitalism. No social security, medicare, military, police/fire, public schools, etc. Most people would be making very little to benefit the wealthy. Unions fought for the benefits we all now take for granted. Sent from Yahoo Mail for iPhone On Friday, February 3, 2023, 11:21 PM, Charles Mills wrote: > The inherent vice of capitalism is the unequal sharing of blessings. The > inherent virtue of socialism is the equal sharing of misery. Under capitalism > man exploits his fellow man. Under socialism it's the other way around. > CharlesSent from a mobile; please excuse the brevity. Original message From: Bob Bridges Date: 2/3/23 5:10 PM (GMT-08:00) To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: I want to cry I don't run in those circles enough. I write in VBA and VBS a lot, but I don't work in a shop where it's common. But I was a COBOL developer for 15 years and I knew coworkers who know COBOL and nothing else.---Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313/* The inherent vice of capitalism is the unequal sharing of blessings. The inherent virtue of socialism is the equal sharing of misery. -Churchill */-Original Message-From: IBM Mainframe Discussion List On Behalf Of John McKownSent: Friday, February 3, 2023 17:13Or Visual Basic.--- On Fri, Feb 3, 2023, 12:10 Bob Bridges wrote:> It is a little distressing, though (at least to me), to observe how > many "programmers" never ~have~ seen anything but COBOL.>> -Original Message-> From: zMan> Sent: Friday, February 3, 2023 10:50>> And unless COBOL is the only programming language you've ever seen, it > seems unlikely that you wouldn't know what a variable is.--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 -- 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
Re: I want to cry
I've certainly seen that for other languages, but I don't recall seeing it for COBOL. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Paul Gilmartin [042bfe9c879d-dmarc-requ...@listserv.ua.edu] Sent: Friday, February 3, 2023 3:53 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: I want to cry On Fri, 3 Feb 2023 15:43:04 +, Seymour J Metz wrote: >The name of ther song is called Haddock Eyes. Data names are variable names; >the fields holding the data are variables. In fact, the manual uses the term >"condition variable". > "Identifier"? -- gil -- 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
Re: I want to cry
I hold firmly to the idea that students should be exposed to a variety of very different languages, and that students of assembler should be exposed to a variety of hardware architectures. Real programmers do it in octal. Silly wabbit, trits are for kids. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Charles Mills [charl...@mcn.org] Sent: Friday, February 3, 2023 5:20 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: I want to cry At the risk of being contrarian relative to the culture of this group, how is that inherently worse than some programmers have never seen anything but Assembler -- 360/370/390/Z assembler at that? Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Bob Bridges Sent: Friday, February 3, 2023 10:10 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: I want to cry It is a little distressing, though (at least to me), to observe how many "programmers" never ~have~ seen anything but COBOL. --- Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313 /* How agitated I am when I am in the garden, and how happy I am to be so agitated. Nothing works just the way I thought it would, nothing looks just the way I had imagined it, and when sometimes it does look like what I had imagined (and this, thank God, is rare) I am startled that my imagination is so ordinary. -Jamaica Kincaid, _My Garden Book_ */ -Original Message- From: IBM Mainframe Discussion List On Behalf Of zMan Sent: Friday, February 3, 2023 10:50 And unless COBOL is the only programming language you've ever seen, it seems unlikely that you wouldn't know what a variable is. -- 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 -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Searching the ASVT
Shouldn't that be USING ASVTBEGN,R10 ESTABLISH ADDRESSABILITY Or does CVTASVT point to the prefix? The LAR11,ASVTENTY is unnecessary unless you need to refer to the base of the table again; if you include it then include a corresponding USING. Otherwise you can just use and increment R10. LAR11,4(,R11) is correct for the code shown. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of esst...@juno.com [esst...@juno.com] Sent: Saturday, February 4, 2023 5:58 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Searching the ASVT . Hello I am on a z/os 2.2 system, trying to rseurrect some old code. . can some one confirm the instructions for Searching the Address Space Vector Table (ASVT) on z/OS 2.2 . This program loads R10 with CVTASVT L R10,CVTASVTGET ASVT ADDRESS USING ASVT,R10 ESTABLISH ADDRESSABILITY . It then issues a Load Address For the first entry ? This doesn't look correct to me ? LAR11,ASVTENTY GET # OF FIRST ENTRY . Next its test for an ASCB that is assigned. TM0(R11),ASVTAVALVALID ASCB Available ? BORUNLOP1NO, CHECK NEXT ASVT ENTRY . * Examine ASCB . . Besides the Load Address above - How should this module advance to the Next ASVT entry ? Shoud I issue the following to get to the next ASVT LR10,ASVTFRST . The current code issues the following instruction, which looks incorrect according to IHAASVT LAR11,4(,R11) Advance NEXT ASVT ENTRY . . Your comments please . Paul D'Angelo *** -- 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