Content deleted Content added
Peter Flass (talk | contribs) |
Comment on save areas, and some of the minutiae of coding in the OS/360 and successor environments. |
||
Line 39:
Granted, the "Hello World" program becomes amazingly simple even in Assembly Language if no (new) savearea is needed. If you want to underline the complexity of this language, peraps use an OPEN, CLOSE, PUT and DCB macro instruction instead. It is actually bad practice to make undue WTO calls, because the operator of a mainframe typically is a person in the computer center, not the user. [[User:Rbakels|Rbakels]] ([[User talk:Rbakels|talk]]) 05:04, 19 July 2010 (UTC)
Hmm. OPEN, CLOSE & PUT are executable macro instructions: they generate code. OPEN and CLOSE result in SVC (Supervisor Call) instructions. PUT results in a subroutine call, the address of which is obtained from the open DCB (and I can’t remember what the routine is, but it’s one of the LPA routines that support QSAM buffering). So PUT does require a save area.
On the other hand, the DCB macro generates a control block (data structure) that the Z/OS operating system uses to coordinate input/output for a given file. It’s an unfortunate part of the history of the OS/360 and successor operating systems that OS data structures are maintained in user space.
And if anyone finds that weird, look at the underlying code for VSAM, VTAM, and the ACB!
[[User:Jhlister|Jhlister]] ([[User talk:Jhlister|talk]]) 02:35, 4 July 2012 (UTC)
==Instruction Format==
|