IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

DSNUTILB invocation conventions


IBM Mainframe Forums -> PL/I & Assembler
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
vshchukin

New User


Joined: 13 Mar 2014
Posts: 11
Location: Czech Republic

PostPosted: Thu Mar 20, 2014 9:53 am
Reply with quote

Greetings to the ibmmainframes.com community!

I have a question on how one should call the DSNUTILB. I have the working implementation from the other product,
but I want to clarify this process. Please consider that we have 3 modules:

Module A (RMODE ANY):
1. Switches supervisor state on and activates zero protection key (MODESET MODE=SUP,KEY=ZERO).
2. Attaches a new task with module B with parameters SM=SUPV,KEY=ZERO.
Module B (RMODE 24):
1. Updates the TCBPKF field of the current task TCB, changes it to X'70', key 7 - IMS/DB2/... key.
2. Obtains storage with key 7 and in subpool 250.
3. Copies the input parameter string ("SSID,UTILID,etc") from any key storage to key 7 storage.
4. Calls module C.
Module C (RMODE 24):
1. Sets key 7 in the PSW.
2. Switches to the problem state.
3. Links to DSNUTLB.

What is actual the requirements for calling the DSNUTILB from the application program?
And where I can find the documentation regarding this question?

Thanks,
Vadim.
Back to top
View user's profile Send private message
dbzTHEdinosauer

Global Moderator


Joined: 20 Oct 2006
Posts: 6966
Location: porcelain throne

PostPosted: Thu Mar 20, 2014 9:39 pm
Reply with quote

don't know if it will answer your question,
but try looking here
starting with chapter 5, there are several chapters concerning DSNUTLB.
Back to top
View user's profile Send private message
vshchukin

New User


Joined: 13 Mar 2014
Posts: 11
Location: Czech Republic

PostPosted: Thu Mar 20, 2014 9:50 pm
Reply with quote

Thanks, but that chapter talks about DSNUTILB interception, when the operator invokes DSNUTILB directly in batch job, and the control is passed to the DSNUTILF user exit, so in that case the environment will be set up properly apriori.
dbzTHEdinosauer wrote:
don't know if it will answer your question,
but try looking here
starting with chapter 5, there are several chapters concerning DSNUTLB.
Back to top
View user's profile Send private message
Rohit Umarjikar

Global Moderator


Joined: 21 Sep 2010
Posts: 3048
Location: NYC,USA

PostPosted: Fri Mar 21, 2014 3:31 am
Reply with quote

DSNUTILB is an APF authorized program. It also has an entry
in the PARMLIB SCHEDxx member. The following is an example.

Code:
/*******************************************************/
/* USED TO DEFINE THE PROGRAM WHICH CALLS DSNUTILB */
/* THIS UTILITY MUST BE DEFINED EXACTLY AS THE DB2 */
/* DATABASE LOAD PROGRAM (DSNUTILB) IS DEFINED. */
/* */
/*******************************************************/
PPT PGMNAME(program) /* YOUR DSNUTILB CALLER */
KEY(7) /* PROTECTION KEY */
NOSYST /* NON-SYSTEM TASK */
SWAP /* SWAPABLE */
NOPREF /* NO PREFERRED STORAGE */
DSI /* DOES REQ DATASET INTEG */
NOPRIV
CANCEL
AFF(NONE)
PASS


If the PARMLIB member is named "SCHEDAB", the following MVS
Operator command would be used to activate this DB2 support utility is:
SET SCH=AB

This member or its contents should be added to the appropriate
PARMLIB members for use during IPL .

Also your program MUST be re-entrant, authorized, and run in 31-bit mode..

This fyi... also please try a Google search as well and you might get more information on this, as per forum rules I can not post non IBM link otherwise I found couple of sites relevant to what you asked for.
Back to top
View user's profile Send private message
vshchukin

New User


Joined: 13 Mar 2014
Posts: 11
Location: Czech Republic

PostPosted: Fri Mar 21, 2014 2:31 pm
Reply with quote

Yes, thank you, I've found this on IDUG forums too, but still there are some questions:
why it's required to change the protection key in TCB (or maybe it's not), or what subpool should be used to load DSNUTILB into it. The question is as simple as: how one should call the DB2 utilities from the application program, even through assembler, I'm convinced this should be documented.

Thanks,
Vadim.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> PL/I & Assembler

 


Similar Topics
Topic Forum Replies
No new posts Unloading Data from DECIMAL(n,0) Colu... DB2 6
No new posts DSNUTILB - parallelism DB2 3
No new posts DB2 Load using DSNUTILB with FORMAT I... DB2 4
No new posts DSNUTILB and PLATINUM - Load Perforance DB2 9
No new posts DSNUTILB various parameter details DB2 11
Search our Forums:

Back to Top