https://en.wikipedia.org/w/index.php?action=history&feed=atom&title=Basic_partitioned_access_method Basic partitioned access method - Revision history 2025-06-02T04:00:00Z Revision history for this page on the wiki MediaWiki 1.45.0-wmf.3 https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=901662331&oldid=prev 82.109.66.148 at 12:34, 13 June 2019 2019-06-13T12:34:23Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:34, 13 June 2019</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 8:</td> <td colspan="2" class="diff-lineno">Line 8:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an [[application program interface]] (API) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an [[application program interface]] (API) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in their[[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in their<ins style="font-weight: bold; text-decoration: none;"> </ins>[[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation proceeds [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref name=Macro&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a previous &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt; The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation proceeds [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref name=Macro&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a previous &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt; The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> 82.109.66.148 https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=901662288&oldid=prev 82.109.66.148 at 12:34, 13 June 2019 2019-06-13T12:34:05Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 12:34, 13 June 2019</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 8:</td> <td colspan="2" class="diff-lineno">Line 8:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an [[application program interface]] (API) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an [[application program interface]] (API) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in <del style="font-weight: bold; text-decoration: none;">his </del>[[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in <ins style="font-weight: bold; text-decoration: none;">their</ins>[[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation proceeds [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref name=Macro&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a previous &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt; The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation proceeds [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref name=Macro&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a previous &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt; The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> 82.109.66.148 https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735480746&oldid=prev Peter Flass: sp 2016-08-21T01:12:13Z <p>sp</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 01:12, 21 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 9:</td> <td colspan="2" class="diff-lineno">Line 9:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in his [[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in his [[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation <del style="font-weight: bold; text-decoration: none;">procedes</del> [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref name=Macro&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt; The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation <ins style="font-weight: bold; text-decoration: none;">proceeds</ins> [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref name=Macro&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a<ins style="font-weight: bold; text-decoration: none;"> previous</ins> &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt; The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735479905&oldid=prev Peter Flass: /* Application program interface */ note/point 2016-08-21T01:03:10Z <p><span class="autocomment">Application program interface: </span> note/point</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 01:03, 21 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 9:</td> <td colspan="2" class="diff-lineno">Line 9:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in his [[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in his [[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref<ins style="font-weight: bold; text-decoration: none;"> name=Macro</ins>&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;.<ins style="font-weight: bold; text-decoration: none;"> The &lt;code&gt;NOTE&lt;/code&gt; macro instruction returns position of the last block read or written, and the &lt;code&gt;POINT&lt;/code&gt; macro will reposition to the location identified by a &lt;code&gt;NOTE&lt;/code&gt;.&lt;ref name=Macro /&gt;</ins> The &lt;code&gt;BLDL&lt;/code&gt; macro can be used to build a list of the addresses of members specified by the programmer for later use, if desired. &lt;code&gt;FIND&lt;/code&gt; positions to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735366358&oldid=prev Peter Flass: DSORG=PO. Selete section "similar facilities which relates to PDSs and not to BPAM as an access method. 2016-08-20T06:49:32Z <p>DSORG=PO. Selete section &quot;similar facilities which relates to PDSs and not to BPAM as an access method.</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 06:49, 20 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 6:</td> <td colspan="2" class="diff-lineno">Line 6:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Application program interface==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Application program interface==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an application program interface (<del style="font-weight: bold; text-decoration: none;">[[</del>API<del style="font-weight: bold; text-decoration: none;">]]</del>) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an <ins style="font-weight: bold; text-decoration: none;">[[</ins>application program interface<ins style="font-weight: bold; text-decoration: none;">]]</ins> (API) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The programmer specifies &lt;code&gt;DSORG=PO&lt;/code&gt; in his [[Data Control Block]] (DCB) to indicate use of BPAM.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. &lt;code&gt;BLDL&lt;/code&gt; <del style="font-weight: bold; text-decoration: none;">builds</del> a list of the addresses of members specified by the programmer for later use. &lt;code&gt;FIND&lt;/code&gt; <del style="font-weight: bold; text-decoration: none;">will position</del> to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;.<ins style="font-weight: bold; text-decoration: none;"> The</ins> &lt;code&gt;BLDL&lt;/code&gt; <ins style="font-weight: bold; text-decoration: none;">macro can be used to build</ins> a list of the addresses of members specified by the programmer for later use<ins style="font-weight: bold; text-decoration: none;">, if desired</ins>. &lt;code&gt;FIND&lt;/code&gt; <ins style="font-weight: bold; text-decoration: none;">positions</ins> to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 14:</td> <td colspan="2" class="diff-lineno">Line 15:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The Linkage Editor organizes a load module in a specialized format consisting of alternating "text records" and "control/relocation dictionary records". This organization allows a load module to be completely loaded and relocated with one input/output operation by Program Fetch ([[Execute Channel Program|EXCP]] on pre-MVS systems, or [[Start Input/Output|STARTIO]] on MVS/370 and later systems).</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The Linkage Editor organizes a load module in a specialized format consisting of alternating "text records" and "control/relocation dictionary records". This organization allows a load module to be completely loaded and relocated with one input/output operation by Program Fetch ([[Execute Channel Program|EXCP]] on pre-MVS systems, or [[Start Input/Output|STARTIO]] on MVS/370 and later systems).</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><br /></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>==Similar facilities==</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The closest parallel to partitioned datasets in other operating systems such as Unix or Windows is the [[static library]], such as produced by the [[ar (Unix)|ar]] utility. In fact, the nomenclature for libraries in [[make (software)|make]], &lt;code&gt;lib(member)&lt;/code&gt;, is directly derived from [[OS/360]]. A PDS may be compared to a directory, that can contain only files, no subdirectories, and at the same time is physically stored in a single file. The need for libraries relates to the fact that mainframe operating systems (until very recently) did not have a hierarchical [[file system]].</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==References==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==References==</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735330807&oldid=prev Peter Flass: /* Load modules */ delete "specialized" 2016-08-20T00:52:22Z <p><span class="autocomment">Load modules: </span> delete &quot;specialized&quot;</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 00:52, 20 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 11:</td> <td colspan="2" class="diff-lineno">Line 11:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The operating system requires all executable programs to be stored in libraries because the member's directory entry contains additional attribute information specific to load modules. When used for storing load modules, directories also contain, among other data, the size of the load module and the address of the first "text record", which is different from the address of the first member data. Executable programs are written to libraries by the [[linkage editor]] and loaded into user-acquired storage by the Loader (an application program) or into system-acquired storage by Program Fetch (a<del style="font-weight: bold; text-decoration: none;"> specialized</del> component of the OS [[Kernel (operating system)|supervisor]]). </div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The operating system requires all executable programs to be stored in libraries because the member's directory entry contains additional attribute information specific to load modules. When used for storing load modules, directories also contain, among other data, the size of the load module and the address of the first "text record", which is different from the address of the first member data. Executable programs are written to libraries by the [[linkage editor]] and loaded into user-acquired storage by the Loader (an application program) or into system-acquired storage by Program Fetch (a component of the OS [[Kernel (operating system)|supervisor]]). </div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The Linkage Editor organizes a load module in a specialized format consisting of alternating "text records" and "control/relocation dictionary records". This organization allows a load module to be completely loaded and relocated with one input/output operation by Program Fetch ([[Execute Channel Program|EXCP]] on pre-MVS systems, or [[Start Input/Output|STARTIO]] on MVS/370 and later systems).</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The Linkage Editor organizes a load module in a specialized format consisting of alternating "text records" and "control/relocation dictionary records". This organization allows a load module to be completely loaded and relocated with one input/output operation by Program Fetch ([[Execute Channel Program|EXCP]] on pre-MVS systems, or [[Start Input/Output|STARTIO]] on MVS/370 and later systems).</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735330340&oldid=prev Peter Flass: add API section head and move paragraph 2016-08-20T00:48:42Z <p>add API section head and move paragraph</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 00:48, 20 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 3:</td> <td colspan="2" class="diff-lineno">Line 3:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A PDS consists of members (internally identical to [[data set (IBM mainframe)|sequential data sets]]), registered in a list called the ''directory''. The combination of members and directory is a single dataset on disk. The directory contains a list of member's names (8 characters, padded on the right with blanks, as required) and member's addresses. Addresses are relative to the start of the dataset in order to allow the PDS to be moved to a different disk location.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A PDS consists of members (internally identical to [[data set (IBM mainframe)|sequential data sets]]), registered in a list called the ''directory''. The combination of members and directory is a single dataset on disk. The directory contains a list of member's names (8 characters, padded on the right with blanks, as required) and member's addresses. Addresses are relative to the start of the dataset in order to allow the PDS to be moved to a different disk location.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker"><a class="mw-diff-movedpara-right" title="Paragraph was moved. Click to jump to old location." href="#movedpara_5_0_lhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_1_0_rhs"></a>Partitioned datasets can store any type of data, but they are often used to store [[executable|executable programs]], or ''load modules'', sometimes called binaries in other systems. Other uses include system assembler [[Macro (computer science)|macro]] definitions, [[Job Control Language|job control]] procedures, and program source code.</div></td> </tr> <tr> <td class="diff-marker"><a class="mw-diff-movedpara-left" title="Paragraph was moved. Click to jump to new location." href="#movedpara_6_2_rhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_2_0_lhs"></a><del style="font-weight: bold; text-decoration: none;">BPAM provides an application program interface ([[API]]) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement. </del>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. &lt;code&gt;BLDL&lt;/code&gt; builds a list of the addresses of members specified by the programmer for later use. &lt;code&gt;FIND&lt;/code&gt; will position to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>==Application program interface==</div></td> </tr> <tr> <td class="diff-marker"><a class="mw-diff-movedpara-left" title="Paragraph was moved. Click to jump to new location." href="#movedpara_1_0_rhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_5_0_lhs"></a>Partitioned datasets can store any type of data, but they are often used to store [[executable|executable programs]], or ''load modules'', sometimes called binaries in other systems. Other uses<del style="font-weight: bold; text-decoration: none;"> for libraries</del> include system assembler [[Macro (computer science)|macro]] definitions, [[Job Control Language|job control]] procedures, and program source code.</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an application program interface ([[API]]) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker"><a class="mw-diff-movedpara-right" title="Paragraph was moved. Click to jump to old location." href="#movedpara_2_0_lhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_6_2_rhs"></a>As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. &lt;code&gt;BLDL&lt;/code&gt; builds a list of the addresses of members specified by the programmer for later use. &lt;code&gt;FIND&lt;/code&gt; will position to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735328918&oldid=prev Peter Flass: description of basic access method, BPAM macros 2016-08-20T00:33:55Z <p>description of basic access method, BPAM macros</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 00:33, 20 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 3:</td> <td colspan="2" class="diff-lineno">Line 3:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A PDS consists of members (internally identical to [[data set (IBM mainframe)|sequential data sets]]), registered in a list called the ''directory''. The combination of members and directory is a single dataset on disk. The directory contains a list of member's names (8 characters, padded on the right with blanks, as required) and member's addresses. Addresses are relative to the start of the dataset in order to allow the PDS to be moved to a different disk location.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A PDS consists of members (internally identical to [[data set (IBM mainframe)|sequential data sets]]), registered in a list called the ''directory''. The combination of members and directory is a single dataset on disk. The directory contains a list of member's names (8 characters, padded on the right with blanks, as required) and member's addresses. Addresses are relative to the start of the dataset in order to allow the PDS to be moved to a different disk location.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>BPAM provides an application program interface ([[API]]) to allow programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement. As a ''basic'' access method BPAM reads and writes member data in [[Block (data storage)|blocks]] and the I/O operation procedes [[Asynchronous I/O|asynchronously]] and must be tested for completion using the &lt;code&gt;CHECK&lt;/code&gt; macro.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Macro Instructions|date=June 1973|page=157|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3794-1_OS_Data_Management_Macro_Instructions_Rel_21.7_Jun73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt; BPAM uses the standard system macros &lt;code&gt;OPEN&lt;/code&gt;, &lt;code&gt;CLOSE&lt;/code&gt;, &lt;code&gt;READ&lt;/code&gt;, &lt;code&gt;WRITE&lt;/code&gt;,and &lt;code&gt;CHECK&lt;/code&gt;. &lt;code&gt;BLDL&lt;/code&gt; builds a list of the addresses of members specified by the programmer for later use. &lt;code&gt;FIND&lt;/code&gt; will position to a single member, specified by name, which requires a directory lookup on disk, or by address previously retrieved by &lt;code&gt;BLDL&lt;/code&gt;. The &lt;code&gt;STOW&lt;/code&gt; macro is used to update the directory when a member is added, deleted, changed (including renamed), or replaced.&lt;ref&gt;{{cite book|last1=IBM Corporation|title=OS Data Management Services Guide|date=July 1973|pages=75–85|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/360/os/R21.7_Apr73/GC26-3746-2_OS_Data_Management_Services_Guide_Rel_21.7_Jul73.pdf|accessdate=August 19, 2016}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"><a class="mw-diff-movedpara-left" title="Paragraph was moved. Click to jump to new location." href="#movedpara_3_1_rhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_2_0_lhs"></a>Partitioned datasets can store any type of data, but they are often used to store [[executable|executable programs]], or ''load modules'', sometimes called binaries in other systems. Other uses for libraries include system assembler [[Macro (computer science)|macro]] definitions, [[Job Control Language|job control]] procedures, and program source code<del style="font-weight: bold; text-decoration: none;">. BPAM provides an application program interface [[API]] to programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. Individual members of a PDS can also be processed using sequential access methods by specifying the member name on the job control ''DD'' statement</del>.</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker"><a class="mw-diff-movedpara-right" title="Paragraph was moved. Click to jump to old location." href="#movedpara_2_0_lhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_3_1_rhs"></a>Partitioned datasets can store any type of data, but they are often used to store [[executable|executable programs]], or ''load modules'', sometimes called binaries in other systems. Other uses for libraries include system assembler [[Macro (computer science)|macro]] definitions, [[Job Control Language|job control]] procedures, and program source code.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735325118&oldid=prev Peter Flass: /* Similar facilities */ code 2016-08-19T23:59:27Z <p><span class="autocomment">Similar facilities: </span> code</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:59, 19 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 11:</td> <td colspan="2" class="diff-lineno">Line 11:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Similar facilities==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Similar facilities==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The closest parallel to partitioned datasets in other operating systems such as Unix or Windows is the [[static library]], such as produced by the [[ar (Unix)|ar]] utility. In fact, the nomenclature for libraries in [[make (software)|make]], <del style="font-weight: bold; text-decoration: none;">'''</del>lib(member)<del style="font-weight: bold; text-decoration: none;">'''</del>, is directly derived from [[OS/360]]. <del style="font-weight: bold; text-decoration: none;">It</del> may be compared to a directory, that can contain only files, no subdirectories, and at the same time<del style="font-weight: bold; text-decoration: none;"> that</del> is physically stored in a single file. The need for libraries relates to the fact that mainframe operating systems (until very recently) did not have a hierarchical [[file system]].</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The closest parallel to partitioned datasets in other operating systems such as Unix or Windows is the [[static library]], such as produced by the [[ar (Unix)|ar]] utility. In fact, the nomenclature for libraries in [[make (software)|make]], <ins style="font-weight: bold; text-decoration: none;">&lt;code&gt;</ins>lib(member)<ins style="font-weight: bold; text-decoration: none;">&lt;/code&gt;</ins>, is directly derived from [[OS/360]]. <ins style="font-weight: bold; text-decoration: none;">A PDS</ins> may be compared to a directory, that can contain only files, no subdirectories, and at the same time is physically stored in a single file. The need for libraries relates to the fact that mainframe operating systems (until very recently) did not have a hierarchical [[file system]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==References==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==References==</div></td> </tr> </table> Peter Flass https://en.wikipedia.org/w/index.php?title=Basic_partitioned_access_method&diff=735324771&oldid=prev Peter Flass: cleanup 2016-08-19T23:56:22Z <p>cleanup</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 23:56, 19 August 2016</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 3:</td> <td colspan="2" class="diff-lineno">Line 3:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A PDS consists of members (internally identical to [[data set (IBM mainframe)|sequential data sets]]), registered in a list called the ''directory''. The combination of members and directory is a single dataset on disk. The directory contains a list of member's names (8 characters, padded on the right with blanks, as required) and member's addresses. Addresses are relative to the start of the dataset in order to allow the PDS to be moved to a different disk location.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A PDS consists of members (internally identical to [[data set (IBM mainframe)|sequential data sets]]), registered in a list called the ''directory''. The combination of members and directory is a single dataset on disk. The directory contains a list of member's names (8 characters, padded on the right with blanks, as required) and member's addresses. Addresses are relative to the start of the dataset in order to allow the PDS to be moved to a different disk location.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Partitioned datasets can store any type of data, but they are often used to store [[executable|executable programs]],<del style="font-weight: bold; text-decoration: none;">h</del> or ''load modules'', sometimes called binaries in other systems. Other uses for libraries include system assembler [[Macro (computer science)|macro]] definitions, [[job control]] procedures, and program source code. BPAM provides an [[API]] to programmers to access libraries directly. The BPAM <del style="font-weight: bold; text-decoration: none;">[[</del>API<del style="font-weight: bold; text-decoration: none;">]]</del> is<del style="font-weight: bold; text-decoration: none;"> fairly</del> similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. <del style="font-weight: bold; text-decoration: none;">PDS</del> members can also be <del style="font-weight: bold; text-decoration: none;">procesed</del> using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Partitioned datasets can store any type of data, but they are often used to store [[executable|executable programs]], or ''load modules'', sometimes called binaries in other systems. Other uses for libraries include system assembler [[Macro (computer science)|macro]] definitions, [[<ins style="font-weight: bold; text-decoration: none;">Job Control Language|</ins>job control]] procedures, and program source code. BPAM provides an<ins style="font-weight: bold; text-decoration: none;"> application program interface</ins> [[API]] to programmers to access libraries directly. The BPAM API is similar to [[basic sequential access method]] (BSAM), but it adds functionality to process directories. <ins style="font-weight: bold; text-decoration: none;">Individual</ins> members<ins style="font-weight: bold; text-decoration: none;"> of a PDS</ins> can also be <ins style="font-weight: bold; text-decoration: none;">processed</ins> using sequential access methods by specifying the member name on the job control ''DD'' statement.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Load modules==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The operating system requires all executable programs to be stored in libraries because the member's directory entry contains additional attribute information specific to load modules. When used for storing load modules, directories also contain, <del style="font-weight: bold; text-decoration: none;">amongst</del> other data, the size of the load module and the address of the first "text record", which is different from the address of the first member data. Executable programs are written to libraries by the [[linkage editor]] and loaded into user-acquired storage by the Loader (an application program) or into system-acquired storage by Program Fetch (a specialized component of the OS [[Kernel (operating system)|supervisor]]). </div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The operating system requires all executable programs to be stored in libraries because the member's directory entry contains additional attribute information specific to load modules. When used for storing load modules, directories also contain, <ins style="font-weight: bold; text-decoration: none;">among</ins> other data, the size of the load module and the address of the first "text record", which is different from the address of the first member data. Executable programs are written to libraries by the [[linkage editor]] and loaded into user-acquired storage by the Loader (an application program) or into system-acquired storage by Program Fetch (a specialized component of the OS [[Kernel (operating system)|supervisor]]). </div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>The Linkage Editor organizes a load module in a specialized format consisting of alternating "text records" and "control/relocation dictionary records". This organization allows a load module to be completely loaded and relocated with one EXCP <del style="font-weight: bold; text-decoration: none;">(</del>on pre-MVS <del style="font-weight: bold; text-decoration: none;">instances</del> <del style="font-weight: bold; text-decoration: none;">of</del> <del style="font-weight: bold; text-decoration: none;">the OS) and with one</del> STARTIO <del style="font-weight: bold; text-decoration: none;">(</del>on MVS/370 and later <del style="font-weight: bold; text-decoration: none;">instances of the OS</del>)<del style="font-weight: bold; text-decoration: none;"> by Program Fetch</del>.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The Linkage Editor organizes a load module in a specialized format consisting of alternating "text records" and "control/relocation dictionary records". This organization allows a load module to be completely loaded and relocated with one <ins style="font-weight: bold; text-decoration: none;">input/output operation by Program Fetch ([[Execute Channel Program|</ins>EXCP<ins style="font-weight: bold; text-decoration: none;">]]</ins> on pre-MVS <ins style="font-weight: bold; text-decoration: none;">systems,</ins> <ins style="font-weight: bold; text-decoration: none;">or</ins> <ins style="font-weight: bold; text-decoration: none;">[[Start</ins> <ins style="font-weight: bold; text-decoration: none;">Input/Output|</ins>STARTIO<ins style="font-weight: bold; text-decoration: none;">]]</ins> on MVS/370 and later <ins style="font-weight: bold; text-decoration: none;">systems</ins>).</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Similar facilities==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==Similar facilities==</div></td> </tr> </table> Peter Flass