Page 1 of 1

About 'PC Routine'

PostPosted: Wed Nov 01, 2017 9:14 pm
by chong_zhou
I need to have some fundamental knowledge about PC call and PC routines on z/OS, because we would probably use it in our new development tasks. However, so far I can only find a very brief entry level introduction about it in IBM's knowledge center:

https://www.ibm.com/support/knowledgece ... a50043.htm

My question is: is there any more materials (websites, books, articles, etc.) about 'PC call and PC routines on z/OS' that I can use for self-study?

What I need to know include:

- What is PC routine ?
---- A bunch of callable services in a separate address space? Or anything else? Similar to RPC in X86 or not?
---- Why (in what circumstances) do we use PC routines?

- Examples?

Thank you guys!!

Re: About 'PC Routine'

PostPosted: Wed Nov 01, 2017 9:35 pm
by enrico-sorichetti
I need to have some fundamental knowledge about PC call and PC routines on z/OS, because we would probably use it in our new development tasks.


if Your system design gurus decided to use the PC approach , they will certainly be able to provide You with all the needed background docs
and since You know nothing about the topic - also with basic training

also if You want to understand the topic, You should start reading from page 0 of the manual not from the middle of it.

https://www.ibm.com/support/knowledgece ... 00/toc.htm

Re: About 'PC Routine'

PostPosted: Wed Nov 01, 2017 9:38 pm
by Robert Sample
because we would probably use it in our new development tasks
WHY do you think you will do this? Program Call routines are for synchronous cross-memory communications and hence it would be EXTREMELY RARE that an application needs to do this. Furthermore, it requires using system resources that, if used incorrectly, could bring down an LPAR or even require IPL of every LPAR on the machine -- so if you run your routine on a machine with a production LPAR, you are placing your production environment at risk. Monitors such as Omegamon and Mainview are logical candidates for PC routines, but I cannot think of a whole lot of applications that would require that level of access to the system. I doubt there are many, if any, books on PC routines since they are so rarely needed; you will need to read the manual exhaustively if you proceed down this path.

The mere fact that a facility exists does NOT mean an application has to use it.

Re: About 'PC Routine'

PostPosted: Wed Nov 01, 2017 9:41 pm
by enrico-sorichetti
The mere fact that a facility exists does NOT mean an application has to use it.


Robert, You forgot about the usual that' s the requirement HM ;)

Re: About 'PC Routine'

PostPosted: Wed Nov 01, 2017 9:59 pm
by Robert Sample
enrico, I did forget that it is the requirement ... sigh :cry:

Re: About 'PC Routine'

PostPosted: Wed Nov 01, 2017 10:13 pm
by chong_zhou
enrico-sorichetti wrote:
I need to have some fundamental knowledge about PC call and PC routines on z/OS, because we would probably use it in our new development tasks.


if Your system design gurus decided to use the PC approach , they will certainly be able to provide You with all the needed background docs
and since You know nothing about the topic - also with basic training

also if You want to understand the topic, You should start reading from page 0 of the manual not from the middle of it.

https://www.ibm.com/support/knowledgece ... 00/toc.htm


Enrico, thank you for your suggestion. Yes we will probably have some training about it. I asked the question simply because I wanted to be prepared for the training, so that I could have better understanding :)

Re: About 'PC Routine'

PostPosted: Wed Nov 01, 2017 10:50 pm
by steve-myers
The other issue is there are two generic classes of "PC routines:" "PC routines" that basically perform the types of services formally associated with an SVC routine; that is services that operate within a single address space, and "PC routines" that potentially operate in multiple address spaces. The latter class can, in fact, start in a different address space than the PC instruction that called the routine and require rather different techniques than the former. As Mr. Sorichetti says, you want to read the extended addressability manual (the link Mr. Sorichetti provided) from cover to cover, especially if you want to use cross memory services.

Good luck. You will need it!

Re: About 'PC Routine'

PostPosted: Thu Nov 02, 2017 2:56 pm
by chong_zhou
steve-myers wrote:The other issue is there are two generic classes of "PC routines:" "PC routines" that basically perform the types of services formally associated with an SVC routine; that is services that operate within a single address space, and "PC routines" that potentially operate in multiple address spaces. The latter class can, in fact, start in a different address space than the PC instruction that called the routine and require rather different techniques than the former. As Mr. Sorichetti says, you want to read the extended addressability manual (the link Mr. Sorichetti provided) from cover to cover, especially if you want to use cross memory services.

Good luck. You will need it!


Thank you Steve. I also noticed that there are two types of PC routines. One executes in caller's address space, the other runs in separated address space and needs an AS-switching between the primary and the 'secondary' AS.

I will take your and Enrico's advice and try to read the programming guide. I moved from the X86's world to MF not long ago, so... :)