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

LOAD command


IBM Mainframe Forums -> CICS
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
Biswajit Nanda

New User


Joined: 28 Mar 2011
Posts: 9
Location: India

PostPosted: Tue May 17, 2011 12:12 pm
Reply with quote

Do we need TRANSID in LINK and XCTL? and is it necessary to have TRANSID in LOAD command?
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Tue May 17, 2011 12:34 pm
Reply with quote

what does the manual say ?

start from here
publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/Shelves/DFHASJ00

and proceed to here
publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHP4C00/CCONTENTS?SHELF=DFHASJ00&DN=SC34-6819-00&DT=20070612172134

where You will find the answer to Your questions
here
publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHP4C00/1.153?SHELF=DFHASJ00&DT=20070612172134
and here
publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHP4C00/1.304?SHELF=DFHASJ00&DT=20070612172134
and here
publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHP4C00/1.156?SHELF=DFHASJ00&DT=20070612172134

but naturally You are too lazy to look at the manuals Yourself ... uhu ?
Back to top
View user's profile Send private message
Biswajit Nanda

New User


Joined: 28 Mar 2011
Posts: 9
Location: India

PostPosted: Tue May 17, 2011 12:40 pm
Reply with quote

no i will look into it for sure icon_smile.gif, am a begineer so having such problems, please cope up icon_smile.gif
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Tue May 17, 2011 12:50 pm
Reply with quote

being a beginner is not an excuse for not reading the manuals
and throwing senseless questions around,
what made You think that a TRANSID is needed for a LINK/XCTL/LOAD, just a wild guessing

but sincerely You might be better off here
ibmmainframeforum.com/index.php
where beginners questions are better hosted

Quote:
please cope up

the first one to cope up with proper training is Your employer
unless Your organization is so cheap to try to get free training from us icon_evil.gif

replying on a forum is
on voluntary basis
on our own time
free of charge
interest of the question asked

if the question is <silly> Your chances of getting a good answer, like I did in this case, are slim
not everybody cares to spend time on minutiae ( small/irrelevant matters )

for the manuals there is a link at the top of the page
or the mother of all knowledge here
www-03.ibm.com/systems/z/os/zos/bkserv/index.html
Back to top
View user's profile Send private message
Biswajit Nanda

New User


Joined: 28 Mar 2011
Posts: 9
Location: India

PostPosted: Tue May 17, 2011 1:44 pm
Reply with quote

hey, its not about training...

the main doubt is,
the format to represent a LINK or XCTL command is

EXEC CICS LINK/XCTL
PROGRAM (NAME)
[COMMAREA(DATA-NAME)]
[LENGTH(DATA-VALUE)
END EXEC

Where in RETURN command we use TRANSID(NAME) instead of PROGRAME(NAME)...


my question is can we use TRANSID(NAME) instead of PROGRAM(NAME) in LINK/XCTL?

If yes why?
and if no why?
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Tue May 17, 2011 1:48 pm
Reply with quote

first ...
learn the good manners, hey is a way of addressing dogs, not people icon_evil.gif

second
the manuals links I posted explain things vey clearly any reason not to read and try to understand them ?

if the manual tell about PROGRAM (NAME) and not about TRANSID(NAME)

one reason why You cannot do it is... guess what... because the manual tells so
Back to top
View user's profile Send private message
Biswajit Nanda

New User


Joined: 28 Mar 2011
Posts: 9
Location: India

PostPosted: Tue May 17, 2011 1:50 pm
Reply with quote

enrico you are taking the conversation in a wrong way,i never intended to misbehave you... I went through the material,and i replied then, i didn't get my answer there, so i asked you back....
Back to top
View user's profile Send private message
enrico-sorichetti

Superior Member


Joined: 14 Mar 2007
Posts: 10873
Location: italy

PostPosted: Tue May 17, 2011 1:55 pm
Reply with quote

what kind of reply would You expect from the manuals ...
if an option is not there no whining will make it appear icon_cool.gif

Quote:

if the manual tells about PROGRAM (NAME) and not about TRANSID(NAME)

one reason why You cannot do it is... guess what... because the manual tells so(*)


(*)the manual reflect the design of the software...
at the end asking why a product behaves the way it does is just useless speculation
the people who designed decided in that way
Back to top
View user's profile Send private message
Stefan

Active User


Joined: 12 Jan 2006
Posts: 110
Location: Germany

PostPosted: Tue May 17, 2011 1:59 pm
Reply with quote

Biswajit Nanda wrote:
Where in RETURN command we use TRANSID(NAME) instead of PROGRAME(NAME)...
... can we use TRANSID(NAME) instead of PROGRAM(NAME) in LINK/XCTL

EXEC CICS RETURN means that your program and the associated transaction ends and control is given back to CICS. When you want to get another program started (delayed) at the same terminal, you have to specify the TRANSID because a program must always run within a transaction. This is an important detail of CICS meta model. It is absolutely worth to investigate more into these concepts.

So why is it possible to LINK/XCTL/LOAD another program without specifying a TRANSID? Because your program already runs within a transaction. LINK, XCTL, or LOAD all cause an immediate execution of the specified program without transaction switching. That's also a general rule in CICS which you should understand.

And that's why you may specify a TRANSID on EXEC CICS RETURN but must not specify any program name, and you have to specify PROGRAM on EXEC CICS LINK/XCTL/LOAD but must not specify TRANSID.

Hope this helps
Back to top
View user's profile Send private message
Biswajit Nanda

New User


Joined: 28 Mar 2011
Posts: 9
Location: India

PostPosted: Tue May 17, 2011 2:04 pm
Reply with quote

Thank you Stefan. This really clears all the doubt icon_smile.gif
Back to top
View user's profile Send private message
Garry Carroll

Senior Member


Joined: 08 May 2006
Posts: 1193
Location: Dublin, Ireland

PostPosted: Tue May 17, 2011 5:24 pm
Reply with quote

Quote:
LINK, XCTL, or LOAD all cause an immediate execution of the specified program....


LOAD does not cause any program execution, it simply loads the program (and returns the load address).

Garry.
Back to top
View user's profile Send private message
PeterHolland

Global Moderator


Joined: 27 Oct 2009
Posts: 2481
Location: Netherlands, Amstelveen

PostPosted: Tue May 17, 2011 5:40 pm
Reply with quote

Garry Carroll wrote:
Quote:
LINK, XCTL, or LOAD all cause an immediate execution of the specified program....


LOAD does not cause any program execution, it simply loads the program (and returns the load address).

Garry.


The EXEC CICS LOAD loads a named map set or data table in shared storage. It has nothing to do with transferring control and passing parameters.
Back to top
View user's profile Send private message
valyk

Active User


Joined: 16 Apr 2008
Posts: 104
Location: South Carolina

PostPosted: Tue May 17, 2011 7:55 pm
Reply with quote

Load can specify the beginning address of the module:

Code:
LOAD

>>-LOAD--PROGRAM(name)--+--------------+------------------------>
                        '-SET(ptr-ref)-'   

>--+--------------------+--+----------------+--+------+--------><
   +-LENGTH(data-area)--+  '-ENTRY(ptr-ref)-'  '-HOLD-'   
   '-FLENGTH(data-area)-' 


And it is not just maps or data tables. From the manual:

Quote:
Load makes available to the invoking task a copy of an application program, table, or map. If the program is defined with RELOAD=NO, it is only fetched from the library where it resides, if there is not a copy already in main storage. If the program is defined with RELOAD=YES, a new copy is always fetched from the library. (See the CICS Application Programming Guide for further details about maps.) Using LOAD can reduce system overhead.
Back to top
View user's profile Send private message
Bill O'Boyle

CICS Moderator


Joined: 14 Jan 2008
Posts: 2501
Location: Atlanta, Georgia, USA

PostPosted: Tue May 17, 2011 9:36 pm
Reply with quote

I've used LOAD to load an external Assembler CSECT into memory and obtain the LP address or obtain the LP address of a CSECT, if it's specified as Resident in the PPT entry (a/k/a Core Resident and already loaded).

When the LOADED module is not Core-Resident, CICS pages it out of memory at task termination.

If the non Core-Resident module is huge (huge is your own definition) and you're done with it and you're not at task termination, issue a RELEASE PROGRAM, which pages it out of memory.

If you have multiple tasks running concurrently which have loaded this huge module into memory, then a RELEASE PROGRAM would be the wise thing to do when the task (program) is done with it....

Bill
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 -> CICS

 


Similar Topics
Topic Forum Replies
No new posts RACF - Rebuild SETROPTS command which... All Other Mainframe Topics 3
No new posts Load new table with Old unload - DB2 DB2 6
No new posts Routing command Address SDSF to other... TSO/ISPF 2
No new posts How to load to DB2 with column level ... DB2 6
No new posts DTL - how to define key with stacked ... TSO/ISPF 3
Search our Forums:

Back to Top