Re: System level coding examples
There is no "google newsgroup"; bit.listserv.ibm-main is a newgroup that you can read and post with any news client. You don't need to use that awful google interface to do so. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Brian Chapman Sent: Friday, November 16, 2018 3:45 PM To: IBM-MAIN@listserv.ua.edu Subject: Re: System level coding examples Thanks Don. I didn't realize that the listserv even existed. I thought the Google newsgroup was the primary forum. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
I don't see no stinking goggle group; all I see is a bog standard newsgroup, bit.listserv.ibm-main. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Edward Finnell <000248cce9f3-dmarc-requ...@listserv.ua.edu> Sent: Friday, November 16, 2018 4:06 PM To: IBM-MAIN@listserv.ua.edu Subject: Re: System level coding examples We've only been here since 6 June 1986. There are various links on CBT and others. There's over 3500 subscribers. Many developers from IBM and ISVs are regular participants. Darren has been our keeper the whole time. The google group is a subscriber but it's not a two way street. Currently the list is from 2004 forward with a separate archive for 1986 to 2004. In a message dated 11/16/2018 2:56:19 PM Central Standard Time, bchapma...@gmail.com writes: I didn't realize that the listserv even existed. I thought the Google newsgroup was the primary forum. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
I would implore every author of supervisor state code to read Karl Schmitz's presentation "z/OS System Integrity : Authorized Software Without Security Holes" Here is a link : ftp://public.dhe.ibm.com/s390/zos/racf/pdf/zOS_System_Integrity.pdf There are many examples of public domain authorized code that break z/OS system integrity rules. Most of the time, it is the code that deals with the interface boundary between the problem state caller and the authorized service that is found wanting. Examples of bad practices include : (o) Referencing caller supplied values or addresses without using the caller's key (eg reading from caller using "MVC" while in key0 rather than something like "MVCSK") (o) Writing to caller supplied storage areas without using the caller's key (eg writing to caller storage using "MVC/MVCL" while in key0 rather than something like "MVCDK") (o) Trusting caller input without sensible validation (eg lengths and null values) (o) Trusting caller to supply control block or identity information (o) Not taking a local copy of supplied parameter list and parameters to authorized working storage at the start of the authorized service. Rob Scott Rocket Software -Original Message- From: IBM Mainframe Discussion List On Behalf Of Alan Young Sent: Sunday, November 18, 2018 9:33 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: System level coding examples I have the 2nd edition of the book. It does cover data and hiper spaces. They are in the Extended Addressibility section. If memory serves, data spaces were introduced in the 1990s with MVS/ESA 4.x or 5 and Hiperspaces were around before that. The section on Inter Address Space Communications has information and examples for commuicating with SRBs or CMS. The examples from the book's first edition are on the CBT tape file 069. Alan -Original Message- >From: Charles Mills >Sent: Nov 17, 2018 2:57 PM >To: IBM-MAIN@LISTSERV.UA.EDU >Subject: Re: System level coding examples > >1999, so not going to cover PC-ss, for example. > >https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.wi >ley.com%2Flegacy%2Fcompbooks%2Fcatalog%2F36176-3.htm&data=02%7C01%7 >CRScott%40ROCKETSOFTWARE.COM%7C0b8804bca7e84efaede008d64d38e151%7C79544 >c1eed224879a082b67a9a672aae%7C0%7C0%7C636781304051600733&sdata=h3D5 >rKUBw7nbZ3A0j%2FEbdZNXbfvEk1gcEdJiLKoOPQg%3D&reserved=0 > >Or 64-bit, or relative jumps, or dataspaces, ... > >Charles > > >-Original Message- >From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] >On Behalf Of Lizette Koehler >Sent: Saturday, November 17, 2018 12:44 PM >To: IBM-MAIN@LISTSERV.UA.EDU >Subject: Re: System level coding examples > >Just catching up on this thread. > >Has anyone looked to see if this book helps? > > >Advanced Assembler Language and MVS Interfaces: For IBM Systems and >Application Programmers 2nd Edition by Carmine A. Cannatello (Author) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN Rocket Software, Inc. and subsidiaries ■ 77 Fourth Avenue, Waltham MA 02451 ■ Main Office Toll Free Number: +1 855.577.4323 Contact Customer Support: https://my.rocketsoftware.com/RocketCommunity/RCEmailSupport Unsubscribe from Marketing Messages/Manage Your Subscription Preferences - http://www.rocketsoftware.com/manage-your-email-preferences Privacy Policy - http://www.rocketsoftware.com/company/legal/privacy-policy This communication and any attachments may contain confidential information of Rocket Software, Inc. All unauthorized use, disclosure or distribution is prohibited. If you are not the intended recipient, please notify Rocket Software immediately and destroy all copies of this communication. Thank you. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
This time frame is also a bit off. The Dual Address Space architecture was first implemented via a microcode retrofit on the existing old 3033 hardware. It was not possible to make that hardware do I-Fetch from primary while running in secondary ASC mode, so the architecture had to state that the I-Fetch space was undefined while in secondary ASC mode, since the 3081 hardware was designed with the dual address space architecture in mind, and I-fetched from primary in both primary or secondary ASC modes. Since the 3033 could not run XA, the 370/XA architecture was free to state that I-Fetching is done from the primary space in secondary ASC mode. ESA/370 and beyond does not always fetch from the primary space. It fetches from primary in Primary, Secondary, and AR, ASC modes. It fetches from home in Home ASC mode, and real in real mode (DAT-off). z/OS uses Home ASC mode only in code which is in common storage. Jim Mulder z/OS Diagnosis, Design, Development, Test IBM Corp. Poughkeepsie NY "IBM Mainframe Discussion List" wrote on 11/18/2018 08:03:49 PM: > From: "Ed Jaffe" > To: IBM-MAIN@LISTSERV.UA.EDU > Date: 11/18/2018 08:42 PM > Subject: Re: System level coding examples > Sent by: "IBM Mainframe Discussion List" > > On 11/18/2018 5:27 AM, Peter Relson wrote: > > PC-SS was introduced prior to MVS/XA (pre-1980) > > Data spaces were introduced with MVS/ESA (1987-ish), stacking PC's at the > > same time. > > We never used PC-ss prior to ESA/390 primarily because of a hardware > restriction that forced the code to always be in common storage (e.g. > LPA). ISTR it was undefined as to which address space your instructions > were fetched from when in cross-memory mode. You guys did the right > thing in ESA/390 by always fetching from the primary address space. In > addition, that old PCLINK STACK/UNSTACK stuff was horrible! ijs... > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
On 11/18/2018 5:27 AM, Peter Relson wrote: PC-SS was introduced prior to MVS/XA (pre-1980) Data spaces were introduced with MVS/ESA (1987-ish), stacking PC's at the same time. We never used PC-ss prior to ESA/390 primarily because of a hardware restriction that forced the code to always be in common storage (e.g. LPA). ISTR it was undefined as to which address space your instructions were fetched from when in cross-memory mode. You guys did the right thing in ESA/390 by always fetching from the primary address space. In addition, that old PCLINK STACK/UNSTACK stuff was horrible! ijs... -- Phoenix Software International Edward E. Jaffe 831 Parkview Drive North El Segundo, CA 90245 https://www.phoenixsoftware.com/ This e-mail message, including any attachments, appended messages and the information contained therein, is for the sole use of the intended recipient(s). If you are not an intended recipient or have otherwise received this email message in error, any use, dissemination, distribution, review, storage or copying of this e-mail message and the information contained therein is strictly prohibited. If you are not an intended recipient, please contact the sender by reply e-mail and destroy all copies of this email message and do not otherwise utilize or retain this email message or any or all of the information contained therein. Although this email message and any attachments or appended messages are believed to be free of any virus or other defect that might affect any computer system into which it is received and opened, it is the responsibility of the recipient to ensure that it is virus free and no responsibility is accepted by the sender for any loss or damage arising in any way from its opening or use. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
Time flies when you're having fun. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Peter Relson Sent: Sunday, November 18, 2018 5:27 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: System level coding examples 1999, so not going to cover PC-ss, for example. ... Or 64-bit, or relative jumps, or dataspaces, ... I didn't look at the book so I have no idea what it does or does not contain, but your time frame is off. PC-SS was introduced prior to MVS/XA (pre-1980) Data spaces were introduced with MVS/ESA (1987-ish), stacking PC's at the same time. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
1999, so not going to cover PC-ss, for example. ... Or 64-bit, or relative jumps, or dataspaces, ... I didn't look at the book so I have no idea what it does or does not contain, but your time frame is off. PC-SS was introduced prior to MVS/XA (pre-1980) Data spaces were introduced with MVS/ESA (1987-ish), stacking PC's at the same time. Peter Relson z/OS Core Technology Design -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
I have the 2nd edition of the book. It does cover data and hiper spaces. They are in the Extended Addressibility section. If memory serves, data spaces were introduced in the 1990s with MVS/ESA 4.x or 5 and Hiperspaces were around before that. The section on Inter Address Space Communications has information and examples for commuicating with SRBs or CMS. The examples from the book's first edition are on the CBT tape file 069. Alan -Original Message- >From: Charles Mills >Sent: Nov 17, 2018 2:57 PM >To: IBM-MAIN@LISTSERV.UA.EDU >Subject: Re: System level coding examples > >1999, so not going to cover PC-ss, for example. > >https://www.wiley.com/legacy/compbooks/catalog/36176-3.htm > >Or 64-bit, or relative jumps, or dataspaces, ... > >Charles > > >-Original Message- >From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On >Behalf Of Lizette Koehler >Sent: Saturday, November 17, 2018 12:44 PM >To: IBM-MAIN@LISTSERV.UA.EDU >Subject: Re: System level coding examples > >Just catching up on this thread. > >Has anyone looked to see if this book helps? > > >Advanced Assembler Language and MVS Interfaces: For IBM Systems and >Application Programmers 2nd Edition >by Carmine A. Cannatello (Author) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available?
> However, and this is important, anything and everything you do that uses > authorized services entails exposure of system integrity. It behooves > any organization to ensure that its personnel writing such code are > well-trained and thoroughly knowledgeable about how the system works, > is designed, and what those exposures are. It's also perfectly clear > many organizations, including many ISVs, do not. This kind of knowledge > and experience doesn't come from blindly following two-sentence replies > from who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many > of us do, but how would a newbie know?). > > You could easily read a paper on the latest techniques in brain surgery. > I'd be skeptical about your ability to do it, unless you had the prior > training and experience it requires. > > The point is, you need that training and experience, and you also need > to be able to train and study on your own, as there's very little in the > way of formal education in our field. Neither IBM-MAIN nor StackOverflow > are a substitute for the fundamentals. There's a large problem that this ignores. An authorized program needs to be: a. functional b. not break system integrity c. deterministic (in it's functionality) d. not likely to break with future system changes (by IBM or others) In MVS, as difficult as using the authorized interfaces seems, it's not that hard to create something mostly functional. This is not production code. Writing real vs mostly functional MVS code considering multiple CPUs, reasonable recovery, and asynchronous execution is non-trivial and very hard to test. Actually you really can't test code like this into working -- it has to be designed to work. Otherwise you will find out that in some environment the timing will cause it fail out of the blue. Good luck debugging that... For many activities there are a choice of MVS interfaces which could be used -- choosing the wrong ones or using one the wrong way may seem to work but lead to future pain. Then there is the system integrity problem. There's no way to test this -- again it goes back to the design and understanding of MVS and the hardware. Good examples are a problem. IBM's code isn't perfect so some "examples" aren't either. Here's an example of imperfect code from MVS (MVS/XA or earlier?): For an operator modify command MGCR (svc 34 command processing) does something like: - ENQ on CSCB chain resource - scan CSCB chain for target job - queue CIB (modify command) to target CSCB - cross memory post CSCB communication ECB - DEQ CSCB chain resource The system wait service allows a problem program to wait on it's communication ECB (even though it's not in user key). QEDIT (again SVC 34) is the interface for a problem program to remove processed CIBs. It does something like this: - ENQ on CSCB chain resource - find CIB on chain - if found, remove it, unpost ECB - DEQ CSCB chain resource There's a bug here (probably fixed, this was a long time ago) as it's possible to wind up with a posted communications ECB but no CIBs chained to the CSCB. A problem program couldn't escape from this condition as it couldn't clear the ECB and QEDIT won't clear it either. The likely cause of the code problem was a result of copying the MVT MGCR/QEDIT code into MVS. MVT didn't have address spaces, nor SRBs. Very few changes were likely made, the major one being changing the post to a cross memory post. Doesn't seem like a big change... This is a huge change. Two successive modify commands can both be processed by the problem program before the 2nd cross memory post completes since the cross memory post can happen after MGCR DEQs the CSCB resource. So the problem program has used QEDIT to remove both CIBS (with the clearing of the ECB) and then the 2nd cross memory post occurs leaving the ECB posted but no CIBs are chained. Now QEDIT won't clear the ECB... I had this happen. The UCLA/Mail MSERV STC used a modify command to tell a WYLBUR user they had mail waiting. WYLBUR waited on its communication ECB and woke when it was posted to process the command. This case resulted in WYLBUR looping 100% CPU since it kept waiting on the communication ECB which was still posted without any commands queued. As far as I remember, I reported this to IBM and got a "working as designed". As a minimal local fix I changed WYLBUR to detect the ECB being posted without any CIBs queued and had it switch to key zero to clear the ECB. I could do this since WYLBUR was already authorized but normally ran problem key. I later heard that IBM HSM had a similar problem so IBM has likely fixed it. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
1999, so not going to cover PC-ss, for example. https://www.wiley.com/legacy/compbooks/catalog/36176-3.htm Or 64-bit, or relative jumps, or dataspaces, ... Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Lizette Koehler Sent: Saturday, November 17, 2018 12:44 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: System level coding examples Just catching up on this thread. Has anyone looked to see if this book helps? Advanced Assembler Language and MVS Interfaces: For IBM Systems and Application Programmers 2nd Edition by Carmine A. Cannatello (Author) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
Just catching up on this thread. Has anyone looked to see if this book helps? Advanced Assembler Language and MVS Interfaces: For IBM Systems and Application Programmers 2nd Edition by Carmine A. Cannatello (Author) Lizette > -Original Message- > From: IBM Mainframe Discussion List On Behalf Of > scott Ford > Sent: Saturday, November 17, 2018 12:06 PM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: System level coding examples > > Brian, > > I will add my thanks also. I work for a ISV, we write in Cobol ( I know ), my > first love is HLASM and C . I just learned a couple years ago and do like PC > languages like Ruby and Python. Code like you shared is great I look at the > cbttapes also and Xephon pubs. I came up though opeations and learns Systems > Programmming on the fly, so I am always appreciative of new techniques. > > Scott > IDMWORKS > > On Fri, Nov 16, 2018 at 4:39 PM Farley, Peter x23353 < > peter.far...@broadridge.com> wrote: > > > Brian, > > > > THANK YOU for your generous contribution to the community knowledge base! > > > > Very much appreciated. > > > > Peter > > > > -Original Message- > > From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] > > On Behalf Of Brian Chapman > > Sent: Friday, November 16, 2018 3:46 PM > > To: IBM-MAIN@LISTSERV.UA.EDU > > Subject: Re: System level coding examples > > > > EXTERNAL EMAIL > > > > Thanks Don. > > > > I didn't realize that the listserv even existed. I thought the Google > > newsgroup was the primary forum. > > -- > > > > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
Brian, I will add my thanks also. I work for a ISV, we write in Cobol ( I know ), my first love is HLASM and C . I just learned a couple years ago and do like PC languages like Ruby and Python. Code like you shared is great I look at the cbttapes also and Xephon pubs. I came up though opeations and learns Systems Programmming on the fly, so I am always appreciative of new techniques. Scott IDMWORKS On Fri, Nov 16, 2018 at 4:39 PM Farley, Peter x23353 < peter.far...@broadridge.com> wrote: > Brian, > > THANK YOU for your generous contribution to the community knowledge base! > > Very much appreciated. > > Peter > > -Original Message- > From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On > Behalf Of Brian Chapman > Sent: Friday, November 16, 2018 3:46 PM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: System level coding examples > > EXTERNAL EMAIL > > Thanks Don. > > I didn't realize that the listserv even existed. I thought the Google > newsgroup was the primary forum. > -- > > > This message and any attachments are intended only for the use of the > addressee and may contain information that is privileged and confidential. > If the reader of the message is not the intended recipient or an authorized > representative of the intended recipient, you are hereby notified that any > dissemination of this communication is strictly prohibited. If you have > received this communication in error, please notify us immediately by > e-mail and delete the message and any attachments from your system. > > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- Scott Ford IDMWORKS z/OS Development -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
Brian, THANK YOU for your generous contribution to the community knowledge base! Very much appreciated. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Brian Chapman Sent: Friday, November 16, 2018 3:46 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: System level coding examples EXTERNAL EMAIL Thanks Don. I didn't realize that the listserv even existed. I thought the Google newsgroup was the primary forum. -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
We've only been here since 6 June 1986. There are various links on CBT and others. There's over 3500 subscribers. Many developers from IBM and ISVs are regular participants. Darren has been our keeper the whole time. The google group is a subscriber but it's not a two way street. Currently the list is from 2004 forward with a separate archive for 1986 to 2004. In a message dated 11/16/2018 2:56:19 PM Central Standard Time, bchapma...@gmail.com writes: I didn't realize that the listserv even existed. I thought the Google newsgroup was the primary forum. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
Thanks Don. I didn't realize that the listserv even existed. I thought the Google newsgroup was the primary forum. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: System level coding examples
Brian, This is very generous. Thank you! Many folks here wouldn't see it though as you sent to the newsgroup rather than the listserv, so I'm passing it on via this reply. In article <301b62d5-8e7b-4258-840e-74fdf8f07...@googlegroups.com> you wrote: > Let me start off by saying that I am a CICS Systems Programmer, but I enjoy > deep-diving into all aspects of the mainframe. My assembly knowledge is > mostly self-taught, and I've been writing assembler for almost 8 years. I'm > sure there is still plenty of room for improvement. I unfortunately (or maybe > fortunately) did not start my career in the 'golden age' of the mainframe. I > feel that that the resources and knowledge base for low-level system > programming are sparse. For example, learning how to write native 3270 was a > major challenge. > On my own time, I worked on a data collection tool that will transport CICS > data from CICS regions to a data collector STC through shared 64-bit storage > pools. Each remote address space will attach to a shared storage pool and > store information. To acquire access to a 64-bit shared area, the program > must be authorized. Since this is not an option for CICS tasks, the CICS task > calls an authorized PC routine to acquire access. One access has been > acquired, a CICS task can write to the storage area in problem state. > The started task hosts a service provider as an authorized PC routine and a > data writer. The data writer stores the records in the 64-bit pools to DASD > and submits a job to copy the DASD datasets to tape for long-term storage > when the DASD dataset is full (or when the STC is shutdown). > I do not work for an ISV, so I have no concern with sharing my work. However, > I spent an enormous amount of my own time on nights and weekends (before I > had kids). So, I completely understand why people are unwilling to freely > shared their code. The code works as intended, but is nowhere near production > quality. I'm hoping that sharing this code will also provide constructive > criticism and enhance my knowledge and code. The premise of the tool was > based off a well-known ISV monitoring product, but uses modern features to > transport the data. > Since I am a CICS Systems Programmer, I also wanted to write something that > behaves like CICS. The tool attaches and detaches subtasks that run > independently, supports a basic API that is mirrored from CICS (XCTL, START, > RETURN, SEND MAP, RECIEVE MAP, etc.) There is also a 3270 interface if > someone is interested. > Here are a few modules that I think are the most interesting and show > examples for shared 64-bit storage, PC hosting, PC calls, attaching and > detaching subtasks, and various system level processes. The tool is called > Scribe. > Here is a public folder on my Google Drive. > https://drive.google.com/open?id=1evL9RKDUOGNml-RGL83o0K7sW4xVsRQu > SCRIBE.txt > This is the jobstep program for the STC service provider and data writer. It > calls several routines to initialize the environment, establish the necessary > components for the PC routine, dispatch a subtask for data storage, and > communicate with the system console. This is the only non-reentrant program. > SCRBAUTH.txt > Authorized PC routine. This program executes in the STC and is invoked by the > remote address space with a linkage area describing the remote address space > and the request type The request types indicate if the request is for sharing > memory objects associated with the storage pool or freeing shared memory > areas already acquired. Each storage pool will consist of several memory > objects. > The tool keeps an 'access list' table of all acquired storage objects for > each address space. If the address space has already acquired the storage, > the request is ignored. I tried using the REQUEST=LIST function of IARV64 to > remove the need of the 'access list' table, but it did not work as I > expected... it was probably a user issue. > SCRBDSPI.txt > Subtask initialization. Attaches and detaches tasks. > SCRBDSPT.txt > Subtask termination. Before the subtask is detached, it cleans up and > necessary storage and removes itself from the kernel chain. > SCRBINLE.txt > Language Environment driver. Initalizes LE and branches to a COBOL program > (or other LE conforming programs). > SCRBINJB.txt > Reads a PDS member to build a table for job grouping for different storage > pool. > SCRBINDT.txt > Reads a PDS member to build the storage pool directory. > SCRBINCL.txt > Acquires the shared 64-bit areas for each storage pool. > SCRBWRTR.txt > There is a data writer for each storage pool. The data writer 'chases' the > data as it is written to the memory objects and stores the data to a DASD > dataset. The writer intercepts E37 and B37 abends, submits a job to the > internal reader, allocates a new DASD dataset, and continues writing. > SCRBSERV.txt > The program runs in the remote addr
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
I have copied the source code for Jol up to the www.Oscar-Jol.com website. IBM examined and approved the code many years ago. Jol effectively replaces the JCL interpretor and quite a lot of the initiator when using Dynamic Allocation instead of JCL. It is part compiler with PL/I style syntax, and ASM macro capabilities and part run time monitor. It is here: http://start.oscar-jol.com/download-store/Jol_Distribution_2011_Source.zip This is the Jol Source Code - IBM370 Mainframe Assembler version. A PLM is also available upon request. www.Oscar-Jol.com has full documentation and the executables. Jol is a major enhancement laguage for IBM Mainframes. It can greatly enhance all operations in a mainframe environment. Jol is an English like command language with Network and Scheduling capabilities, and a full scripting language for the mainframe. 3270 Panels are provided for many functions. Versions exist for Windows, Linux and other systems It has also been ported to C and PL/I. Clem Clarke -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
I was thinking about my last post First off let me say a little bit about background I have had some experience with vendors but it’s very light Doing this type of programming was my passions unfortunately for me I got into it after 2000 when IT destabilized I am fortunate to have a landed a more stable government job But I still enjoy this kind of programming So I am grateful for Peter Relson, Rob Scott Ed Jaffe and Binyamin Dessin help But as an example one of the last things Ed suggested to me was in the SRB I PC-ss back to the caller maybe I should have known this off the top of my head But it took me a while to figure out the the Space Switching PC routine with SASN=OLD The caller is the SASN Address space Thanks > On Nov 12, 2018, at 3:33 PM, Edward Finnell > <000248cce9f3-dmarc-requ...@listserv.ua.edu> wrote: > > I was in several of the OCO sessions at SHARE. They were heated but in > summary there were two major points. Intellectual property(the clones were > trying to reverse engineer MVS), change control-Hursley was saying the large > majority of their problems were coming from modified IBM code. Our post SHARE > review we recommended to buy the source and hold on as better documentation > for the Interfaces was sure to follow. It never did... > > In a message dated 11/12/2018 2:22:13 PM Central Standard Time, > edja...@phoenixsoftware.com writes: > They WERE published many years ago and then OCO came along and took > those great examples away. > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
On Wed, 14 Nov 2018 04:25:18 +, Chris Hoelscher wrote: > >In Java you have other issues, every programming lanuaages has pluses and >minuses.. > >Indeed they do - without them, adding and subtracting would become quite >difficult > What about COBOL ADD ... GIVING ... ... and LISP? Or: https://en.wikipedia.org/wiki/%42%72%61%69%6e%66%75%63%6b -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
In Java you have other issues, every programming languages has pluses and minuses.. Indeed they do - without them, adding and subtracting would become quite difficult The information transmitted is intended only for the person or entity to which it is addressed and may contain CONFIDENTIAL material. If you receive this material/information in error, please contact the sender and delete or destroy the material/information. Humana Inc. and its subsidiaries comply with applicable Federal civil rights laws and do not discriminate on the basis of race, color, national origin, age, disability, sex, sexual orientation, gender identity, or religion. Humana Inc. and its subsidiaries do not exclude people or treat them differently because of race, color, national origin, age, disability, sex, sexual orientation, gender identity, or religion. English: ATTENTION: If you do not speak English, language assistance services, free of charge, are available to you. Call 1‐877‐320‐1235 (TTY: 711). Español (Spanish): ATENCIÓN: Si habla español, tiene a su disposición servicios gratuitos de asistencia lingüística. Llame al 1‐877‐320‐1235 (TTY: 711). 繁體中文(Chinese):注意:如果您使用繁體中文,您可以免費獲得語言援助 服務。請致電 1‐877‐320‐1235 (TTY: 711)。 Kreyòl Ayisyen (Haitian Creole): ATANSION: Si w pale Kreyòl Ayisyen, gen sèvis èd pou lang ki disponib gratis pou ou. Rele 1‐877‐320‐1235 (TTY: 711). Polski (Polish): UWAGA: Jeżeli mówisz po polsku, możesz skorzystać z bezpłatnej pomocy językowej. Zadzwoń pod numer 1‐877‐320‐1235 (TTY: 711). 한국어 (Korean): 주의: 한국어를 사용하시는 경우, 언어 지원 서비스를 무료로 이용하실 수 있습니다. 1‐877‐320‐1235 (TTY: 711)번으로 전화해 주십시오. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
In Java you have other issues, every programming languages has pluses and minuses.. The nature of what we do.. Scott On Tue, Nov 13, 2018 at 9:02 PM Joseph Reichman wrote: > This type coding z/os internals must make up about 1% of software > development > > I’m quite sure that for Java there isn’t this type of problem > > > > > On Nov 12, 2018, at 5:54 PM, Binyamin Dissen > wrote: > > > > There are a large number of parts to make sure that things are done the > right > > way, and that a fault will not bring the system to a crash. > > > > While one might be able to show examples of simple techniques, there is > a lot > > of infrastructure required to handle problems. > > > > For example, what happens if you force an SSAR to a swapable address > space > > that happens to be swapped in and the address space gets swapped out in > the > > middle? If I recall correctly, the next page fault that I had in the > target > > address space caused a MEMTERM of the home address space - which meant no > > ESTAEs got control. > > > > > > > > On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" > > wrote: > > > > :>And that was my whole point -- Where are the examples for programmers > to see how to do it the right way? > > :> > > :>If SHARE has some presentations it is good to know that. Not the > easiest place to search for stuff, but at least it is accessible. > > :> > > :>Yes, of course experience is the best teacher, but without even > examples of how to do something it is awfully hard to figure it out on your > own. > > :> > > :>". . . thoroughly knowledgeable about how the system works" is a whole > 'nother can of worms. Back in the day places like universities in some > cities offered "adult education" courses on MVS debugging and internals. I > took a two-semester course like that back around the time that the MVS lock > manager was first introduced, and it was wonderful, complex, interesting > material to learn. > > :> > > :>Of course, all that is ancient history now. No university or > education center offers anything like that anymore. Much more profitable > to offer certification courses in Windows. > > :> > > :>Peter > > :> > > :>-Original Message- > > :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] > On Behalf Of Steve Smith > > :>Sent: Monday, November 12, 2018 3:33 PM > > :>To: IBM-MAIN@LISTSERV.UA.EDU > > :>Subject: Re: Why are sophisticated system-level coding examples not > available? [was: RE: Recommended method for accessing secondary access > spaces] > > :> > > :>There are some good SHARE presentations on some of these techniques. > > :>Unfortunately for you, I'm too lazy to search for them. > > :> > > :>However, and this is important, anything and everything you do that > uses authorized services entails exposure of system integrity. It behooves > any organization to ensure that its personnel writing such code are > well-trained and thoroughly knowledgeable about how the system works, is > designed, and what those exposures are. It's also perfectly clear many > organizations, including many ISVs, do not. This kind of knowledge and > experience doesn't come from blindly following two-sentence replies from > who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, > but how would a newbie know?). > > :> > > :>You could easily read a paper on the latest techniques in brain > surgery. > > :>I'd be skeptical about your ability to do it, unless you had the prior > training and experience it requires. > > :> > > :>The point is, you need that training and experience, and you also need > to be able to train and study on your own, as there's very little in the > way of formal education in our field. Neither IBM-MAIN nor StackOverflow > are a substitute for the fundamentals. > > :> > > :>sas > > :> > > :>On Mon, Nov 12, 2018 at 1:56 PM David W Noon < > 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: > > :> > > :>> On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 > > :>> (peter.far...@broadridge.com) wrote about "Why are sophisticated > > :>> system-level coding examples not available? [was: RE: Recommended > > :>> method for accessing secondary access spaces]" (in > > :>> ): > > :>> > > :>> > Not jumping on Ed Jaffe or Peter Relson or any of
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
This type coding z/os internals must make up about 1% of software development I’m quite sure that for Java there isn’t this type of problem > On Nov 12, 2018, at 5:54 PM, Binyamin Dissen > wrote: > > There are a large number of parts to make sure that things are done the right > way, and that a fault will not bring the system to a crash. > > While one might be able to show examples of simple techniques, there is a lot > of infrastructure required to handle problems. > > For example, what happens if you force an SSAR to a swapable address space > that happens to be swapped in and the address space gets swapped out in the > middle? If I recall correctly, the next page fault that I had in the target > address space caused a MEMTERM of the home address space - which meant no > ESTAEs got control. > > > > On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" > wrote: > > :>And that was my whole point -- Where are the examples for programmers to > see how to do it the right way? > :> > :>If SHARE has some presentations it is good to know that. Not the easiest > place to search for stuff, but at least it is accessible. > :> > :>Yes, of course experience is the best teacher, but without even examples of > how to do something it is awfully hard to figure it out on your own. > :> > :>". . . thoroughly knowledgeable about how the system works" is a whole > 'nother can of worms. Back in the day places like universities in some > cities offered "adult education" courses on MVS debugging and internals. I > took a two-semester course like that back around the time that the MVS lock > manager was first introduced, and it was wonderful, complex, interesting > material to learn. > :> > :>Of course, all that is ancient history now. No university or education > center offers anything like that anymore. Much more profitable to offer > certification courses in Windows. > :> > :>Peter > :> > :>-Original Message- > :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On > Behalf Of Steve Smith > :>Sent: Monday, November 12, 2018 3:33 PM > :>To: IBM-MAIN@LISTSERV.UA.EDU > :>Subject: Re: Why are sophisticated system-level coding examples not > available? [was: RE: Recommended method for accessing secondary access spaces] > :> > :>There are some good SHARE presentations on some of these techniques. > :>Unfortunately for you, I'm too lazy to search for them. > :> > :>However, and this is important, anything and everything you do that uses > authorized services entails exposure of system integrity. It behooves any > organization to ensure that its personnel writing such code are well-trained > and thoroughly knowledgeable about how the system works, is designed, and > what those exposures are. It's also perfectly clear many organizations, > including many ISVs, do not. This kind of knowledge and experience doesn't > come from blindly following two-sentence replies from who knows who on > IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, but how would a > newbie know?). > :> > :>You could easily read a paper on the latest techniques in brain surgery. > :>I'd be skeptical about your ability to do it, unless you had the prior > training and experience it requires. > :> > :>The point is, you need that training and experience, and you also need to > be able to train and study on your own, as there's very little in the way of > formal education in our field. Neither IBM-MAIN nor StackOverflow are a > substitute for the fundamentals. > :> > :>sas > :> > :>On Mon, Nov 12, 2018 at 1:56 PM David W Noon < > 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: > :> > :>> On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 > :>> (peter.far...@broadridge.com) wrote about "Why are sophisticated > :>> system-level coding examples not available? [was: RE: Recommended > :>> method for accessing secondary access spaces]" (in > :>> ): > :>> > :>> > Not jumping on Ed Jaffe or Peter Relson or any of the other > :>> > thoughtful and helpful responders in this email chain, but it still > :>> > rankles me that there are no good examples anywhere (not at IBM and > :>> > not at CBT) for programmers to review that show exactly how to set > :>> > up and use "SRB to the other address space and PC-ss back to the > :>> > requesting address space" or any similarly sophisticated > :>> > system-level application coding
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
Absolutely agree. Just not of the PC-ss / SRB-to-other-AS / complete-and-sophisticated-error-recovery kind of code, that I remember seeing or hearing about. Not that it couldn't already be there and I just missed seeing it. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Seymour J Metz Sent: Tuesday, November 13, 2018 5:04 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] While I won't claim that all of the code in the CBT tape is good, there is certainly code there worth reading. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Farley, Peter x23353 Sent: Monday, November 12, 2018 5:11 PM To: IBM-MAIN@listserv.ua.edu Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] And that was my whole point -- Where are the examples for programmers to see how to do it the right way? If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. ". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Steve Smith Sent: Monday, November 12, 2018 3:33 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are some good SHARE presentations on some of these techniques. Unfortunately for you, I'm too lazy to search for them. However, and this is important, anything and everything you do that uses authorized services entails exposure of system integrity. It behooves any organization to ensure that its personnel writing such code are well-trained and thoroughly knowledgeable about how the system works, is designed, and what those exposures are. It's also perfectly clear many organizations, including many ISVs, do not. This kind of knowledge and experience doesn't come from blindly following two-sentence replies from who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, but how would a newbie know?). You could easily read a paper on the latest techniques in brain surgery. I'd be skeptical about your ability to do it, unless you had the prior training and experience it requires. The point is, you need that training and experience, and you also need to be able to train and study on your own, as there's very little in the way of formal education in our field. Neither IBM-MAIN nor StackOverflow are a substitute for the fundamentals. sas On Mon, Nov 12, 2018 at 1:56 PM David W Noon < 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: > On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 > (peter.far...@broadridge.com) wrote about "Why are sophisticated > system-level coding examples not available? [was: RE: Recommended > method for accessing secondary access spaces]" (in > ): > > > Not jumping on Ed Jaffe or Peter Relson or any of the other > > thoughtful and helpful responders in this email chain, but it still > > rankles me that there are no good examples anywhere (not at IBM and > > not at CBT) for programmers to review that show exactly how to set > > up and use "SRB to the other address space and PC-ss back to the > > requesting address space" or any similarly sophisticated > > system-level application coding technique. > > > > Why is system-level application coding made an obscure mystery to > > which only IBM and (some) ISV's have access? Good examples that > > show how to "do the right thing" would avoid an awful lot of > > dangerous > experimentation. > > "Security through obscurity" is, I think all here would agree. NOT a > > good thing. -- This message and any attachments
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
While I won't claim that all of the code in the CBT tape is good, there is certainly code there worth reading. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 From: IBM Mainframe Discussion List on behalf of Farley, Peter x23353 Sent: Monday, November 12, 2018 5:11 PM To: IBM-MAIN@listserv.ua.edu Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] And that was my whole point -- Where are the examples for programmers to see how to do it the right way? If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. ". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Steve Smith Sent: Monday, November 12, 2018 3:33 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are some good SHARE presentations on some of these techniques. Unfortunately for you, I'm too lazy to search for them. However, and this is important, anything and everything you do that uses authorized services entails exposure of system integrity. It behooves any organization to ensure that its personnel writing such code are well-trained and thoroughly knowledgeable about how the system works, is designed, and what those exposures are. It's also perfectly clear many organizations, including many ISVs, do not. This kind of knowledge and experience doesn't come from blindly following two-sentence replies from who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, but how would a newbie know?). You could easily read a paper on the latest techniques in brain surgery. I'd be skeptical about your ability to do it, unless you had the prior training and experience it requires. The point is, you need that training and experience, and you also need to be able to train and study on your own, as there's very little in the way of formal education in our field. Neither IBM-MAIN nor StackOverflow are a substitute for the fundamentals. sas On Mon, Nov 12, 2018 at 1:56 PM David W Noon < 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: > On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 > (peter.far...@broadridge.com) wrote about "Why are sophisticated > system-level coding examples not available? [was: RE: Recommended > method for accessing secondary access spaces]" (in > ): > > > Not jumping on Ed Jaffe or Peter Relson or any of the other > > thoughtful and helpful responders in this email chain, but it still > > rankles me that there are no good examples anywhere (not at IBM and > > not at CBT) for programmers to review that show exactly how to set > > up and use "SRB to the other address space and PC-ss back to the > > requesting address space" or any similarly sophisticated > > system-level application coding technique. > > > > Why is system-level application coding made an obscure mystery to > > which only IBM and (some) ISV's have access? Good examples that > > show how to "do the right thing" would avoid an awful lot of > > dangerous > experimentation. > > "Security through obscurity" is, I think all here would agree. NOT a > > good thing. -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archi
Why are sophisticated system-level coding examples not available?
Whilst they may be a trifle dated, the Xephon MVS Update publications - available on CBTTAPE - did hold a lot of coding examples covering many aspects of the MVS system. In the past, I have used them to helpful effect. The major issue I encountered was the absence of an index covering all the separate issues (somewhere close to 100 if I recall). An interesting project for a recent retiree with time on their hands, perhaps? MKB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
While I really wish IBM really would have some better examples than what is in SAMPLIB and SHASSRCE, you really can learn most of what you will need from manuals and the rest of it is (unfortunately for me) trial and error. When you are developing Systems programming code, if you son'e have an LPAR that you can break (a lot) then you really can benefit from purchasing the ZPDT and run your own copy. There is no substitute for being able to test your systems programming code. Unlike a applications programmer, a little mistake on our part can really ruin an LPAR quite effectively. Brian -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
Tony, Speaking as a former vendor (a long time ago in a galaxy far, far away . . . ), far be it from me to suggest that you give away valuable intellectual property. That is contrary to all self-interest (never mind the enlightened kind), and I would not ask or expect any vendor to do that. BUT. If the code you spent so many man-hours perfecting is mainly carefully crafted interfaces to IBM-supplied GUPI API's and recovery techniques, that is another can of worms entirely. If the IBM is not providing ALL of its customers with the level and clarity of documentation needed to use the GUPI API's and interfaces that it provides (well, minus the ones it charges NDA-level fees for like the enclave-on-ZiIP secrets) then it is IBM who is seriously at fault. What you spent man-days perfecting should have been just a SMOP based on IBM-supplied documentation of a level and clarity sufficient for a competent programmer to use. But also I do agree that there are more cheating, self-aggrandizing programmers out there whose idea of "sharing" is considerably less than ethical. The less-than-ethical side of the "hacker" culture (the "black" hats and just plain criminals) have given rise to far too much evil behavior all around the world. If you're not a journalist, it is ethical to name the sources of your ideas, but not everyone seems to think so. Cheers. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Tony Thigpen Sent: Monday, November 12, 2018 8:28 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] Speaking as a vendor. There are several interfaces that I had to invest a *lot* of time to get working right. And using those interfaces is what makes my products efficient and market worthy. If I were to publish some of my interface code, some new guy would have 75% of a product that can compete with my product. In other words, what I spend a man-year bringing to market, he can bring to market in just 3 man-months because he used my code. I don't mind market competition, but I do mind competing against my own code. And, that is just the business facts. On the flip side, I do share code that is small or that I acquired from someone else. As an example, I just made an update to a program 'found on the internet' that was written by someone who has passed away. This update was made for a specific vendor and is code that they will offer to their clients. I insisted that they ship both the unchanged source code and the new source code (since I had only changed about 20 lines). Another point: If you look at my web site and the free programs, you will find several TCP/IP Client and Server programs in Cobol. http://dinomasters.com/coolstuff I help people a lot with this type of programming. But, I remember the case where someone asked my help on a program that a previous programmer had written. When he sent me the code, it was one of my samples with just my name removed and the previous programmer's name added. I even found my emails with the previous employee helping him understand the programs. And, he told everybody the code was his (per the guy that I helped later). That stinks. [The bug was already corrected on my web site and available for download.] Tony Thigpen Farley, Peter x23353 wrote on 11/12/18 1:13 PM: > Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful and > helpful responders in this email chain, but it still rankles me that there > are no good examples anywhere (not at IBM and not at CBT) for programmers to > review that show exactly how to set up and use "SRB to the other address > space and PC-ss back to the requesting address space" or any similarly > sophisticated system-level application coding technique. > > Why is system-level application coding made an obscure mystery to which only > IBM and (some) ISV's have access? Good examples that show how to "do the > right thing" would avoid an awful lot of dangerous experimentation. > "Security through obscurity" is, I think all here would agree. NOT a good > thing. > > If you don't show programmers how to do it right, you can't really yell at > them for not doing so. > > Maybe if the ISV's got together (at SHARE maybe?) they could agree on > publishing stripped-down HOWTO examples based on the work they have already > done to "do the right thing". That way no one ISV is alone in exposing any > potentially valuable intellectual property. > > And of course IBM really ought to be publishing good examples too, but I > suspect the answer to that is the usual "what business justifica
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
Speaking as a vendor. There are several interfaces that I had to invest a *lot* of time to get working right. And using those interfaces is what makes my products efficient and market worthy. If I were to publish some of my interface code, some new guy would have 75% of a product that can compete with my product. In other words, what I spend a man-year bringing to market, he can bring to market in just 3 man-months because he used my code. I don't mind market competition, but I do mind competing against my own code. And, that is just the business facts. On the flip side, I do share code that is small or that I acquired from someone else. As an example, I just made an update to a program 'found on the internet' that was written by someone who has passed away. This update was made for a specific vendor and is code that they will offer to their clients. I insisted that they ship both the unchanged source code and the new source code (since I had only changed about 20 lines). Another point: If you look at my web site and the free programs, you will find several TCP/IP Client and Server programs in Cobol. http://dinomasters.com/coolstuff I help people a lot with this type of programming. But, I remember the case where someone asked my help on a program that a previous programmer had written. When he sent me the code, it was one of my samples with just my name removed and the previous programmer's name added. I even found my emails with the previous employee helping him understand the programs. And, he told everybody the code was his (per the guy that I helped later). That stinks. [The bug was already corrected on my web site and available for download.] Tony Thigpen Farley, Peter x23353 wrote on 11/12/18 1:13 PM: Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful and helpful responders in this email chain, but it still rankles me that there are no good examples anywhere (not at IBM and not at CBT) for programmers to review that show exactly how to set up and use "SRB to the other address space and PC-ss back to the requesting address space" or any similarly sophisticated system-level application coding technique. Why is system-level application coding made an obscure mystery to which only IBM and (some) ISV's have access? Good examples that show how to "do the right thing" would avoid an awful lot of dangerous experimentation. "Security through obscurity" is, I think all here would agree. NOT a good thing. If you don't show programmers how to do it right, you can't really yell at them for not doing so. Maybe if the ISV's got together (at SHARE maybe?) they could agree on publishing stripped-down HOWTO examples based on the work they have already done to "do the right thing". That way no one ISV is alone in exposing any potentially valuable intellectual property. And of course IBM really ought to be publishing good examples too, but I suspect the answer to that is the usual "what business justification can you show to make it a profitable exercise to spend valuable and scarce resources doing?". How about helping your customers not to give themselves serious trouble that you could help them avoid? Just my $0.02USD worth. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Ed Jaffe Sent: Monday, November 12, 2018 11:35 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Recommended method for accessing secondary access spaces On 11/12/2018 7:28 AM, Joseph Reichman wrote: I can use CSA storage to pass back the data if after I copy it over I release it We used to do that back in the pre-ESA/390 days. That technique carries with it all sorts of hideous timing/cleanup issues that simply don't exist with the PC-ss technique. Food for thought... -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
+1 Good way of suggesting justification for examples! Best Regards, Doug . On Nov 12, 2018, at 19:55, Charles Mills wrote: The profit comes from the potential for increased utility for the platform. It's hard to connect specific dots "if you show Peter Farley how to do DUCT TRAP somewhere someone will buy another z box" but it is not hard to imagine the ultimate connection. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Farley, Peter x23353 Sent: Monday, November 12, 2018 3:26 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] Then the not-yet-available examples ought to include all the error recovery infrastructure needed to assure the least system impact possible. Like the brief discussions I had with others on this list a few years back about code to set the DUCT TRAP fields so that TRAP and COMPARE-AND-TRAP instructions would work as architected. IIRC, the conversation went something like this: "Use PC-ss with a server address space that schedules an SRB in your address space to do that, but really, really don't do that because there's no system support for it." "When will there be system support for it?" "What's the business justification for expending those scarce resources?" Etc., etc. An example that showed how to safely set and unset the DUCT TRAP fields with all the attendant recovery infrastructure needed would be a lovely, practical example to have available. Not that I'm holding my breath waiting for it to appear. This set of knowledge isn't unknowable, only obscure and esoteric. IMHO, just hiding it doesn't serve the community or the employers who pay us. Why does there always have to be profit in spreading knowledge? But I have always known that I am a cockeyed optimist about the free availability of knowledge, so I already know the answer to that question even if I don't like it much. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Binyamin Dissen Sent: Monday, November 12, 2018 5:54 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are a large number of parts to make sure that things are done the right way, and that a fault will not bring the system to a crash. While one might be able to show examples of simple techniques, there is a lot of infrastructure required to handle problems. For example, what happens if you force an SSAR to a swapable address space that happens to be swapped in and the address space gets swapped out in the middle? If I recall correctly, the next page fault that I had in the target address space caused a MEMTERM of the home address space - which meant no ESTAEs got control. On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" wrote: :>And that was my whole point -- Where are the examples for programmers to see how to do it the right way? :> :>If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. :> :>Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. :> :>". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. :> :>Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. :> :>Peter -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
The profit comes from the potential for increased utility for the platform. It's hard to connect specific dots "if you show Peter Farley how to do DUCT TRAP somewhere someone will buy another z box" but it is not hard to imagine the ultimate connection. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Farley, Peter x23353 Sent: Monday, November 12, 2018 3:26 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] Then the not-yet-available examples ought to include all the error recovery infrastructure needed to assure the least system impact possible. Like the brief discussions I had with others on this list a few years back about code to set the DUCT TRAP fields so that TRAP and COMPARE-AND-TRAP instructions would work as architected. IIRC, the conversation went something like this: "Use PC-ss with a server address space that schedules an SRB in your address space to do that, but really, really don't do that because there's no system support for it." "When will there be system support for it?" "What's the business justification for expending those scarce resources?" Etc., etc. An example that showed how to safely set and unset the DUCT TRAP fields with all the attendant recovery infrastructure needed would be a lovely, practical example to have available. Not that I'm holding my breath waiting for it to appear. This set of knowledge isn't unknowable, only obscure and esoteric. IMHO, just hiding it doesn't serve the community or the employers who pay us. Why does there always have to be profit in spreading knowledge? But I have always known that I am a cockeyed optimist about the free availability of knowledge, so I already know the answer to that question even if I don't like it much. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Binyamin Dissen Sent: Monday, November 12, 2018 5:54 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are a large number of parts to make sure that things are done the right way, and that a fault will not bring the system to a crash. While one might be able to show examples of simple techniques, there is a lot of infrastructure required to handle problems. For example, what happens if you force an SSAR to a swapable address space that happens to be swapped in and the address space gets swapped out in the middle? If I recall correctly, the next page fault that I had in the target address space caused a MEMTERM of the home address space - which meant no ESTAEs got control. On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" wrote: :>And that was my whole point -- Where are the examples for programmers to see how to do it the right way? :> :>If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. :> :>Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. :> :>". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. :> :>Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. :> :>Peter -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
+1 Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Farley, Peter x23353 Sent: Monday, November 12, 2018 3:26 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] Then the not-yet-available examples ought to include all the error recovery infrastructure needed to assure the least system impact possible. Like the brief discussions I had with others on this list a few years back about code to set the DUCT TRAP fields so that TRAP and COMPARE-AND-TRAP instructions would work as architected. IIRC, the conversation went something like this: "Use PC-ss with a server address space that schedules an SRB in your address space to do that, but really, really don't do that because there's no system support for it." "When will there be system support for it?" "What's the business justification for expending those scarce resources?" Etc., etc. An example that showed how to safely set and unset the DUCT TRAP fields with all the attendant recovery infrastructure needed would be a lovely, practical example to have available. Not that I'm holding my breath waiting for it to appear. This set of knowledge isn't unknowable, only obscure and esoteric. IMHO, just hiding it doesn't serve the community or the employers who pay us. Why does there always have to be profit in spreading knowledge? But I have always known that I am a cockeyed optimist about the free availability of knowledge, so I already know the answer to that question even if I don't like it much. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Binyamin Dissen Sent: Monday, November 12, 2018 5:54 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are a large number of parts to make sure that things are done the right way, and that a fault will not bring the system to a crash. While one might be able to show examples of simple techniques, there is a lot of infrastructure required to handle problems. For example, what happens if you force an SSAR to a swapable address space that happens to be swapped in and the address space gets swapped out in the middle? If I recall correctly, the next page fault that I had in the target address space caused a MEMTERM of the home address space - which meant no ESTAEs got control. On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" wrote: :>And that was my whole point -- Where are the examples for programmers to see how to do it the right way? :> :>If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. :> :>Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. :> :>". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. :> :>Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. :> :>Peter -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
Just my $.02... Back when I was learning to program I was told the best way to learn to program well was to read well-written code. Lou -- Artificial Intelligence is no match for Natural Stupidity - Unknown On Mon, Nov 12, 2018 at 4:21 PM Paul Gilmartin < 000433f07816-dmarc-requ...@listserv.ua.edu> wrote: > On Mon, 12 Nov 2018 22:11:15 +, Farley, Peter x23353 wrote: > > > >Of course, all that isaancient history now. No university or education > center offers anything like that anymore. Much more profitable to offer > certification courses in Windows. > > > Marist? But still, a limited choice. > > -- gil > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
Then the not-yet-available examples ought to include all the error recovery infrastructure needed to assure the least system impact possible. Like the brief discussions I had with others on this list a few years back about code to set the DUCT TRAP fields so that TRAP and COMPARE-AND-TRAP instructions would work as architected. IIRC, the conversation went something like this: "Use PC-ss with a server address space that schedules an SRB in your address space to do that, but really, really don't do that because there's no system support for it." "When will there be system support for it?" "What's the business justification for expending those scarce resources?" Etc., etc. An example that showed how to safely set and unset the DUCT TRAP fields with all the attendant recovery infrastructure needed would be a lovely, practical example to have available. Not that I'm holding my breath waiting for it to appear. This set of knowledge isn't unknowable, only obscure and esoteric. IMHO, just hiding it doesn't serve the community or the employers who pay us. Why does there always have to be profit in spreading knowledge? But I have always known that I am a cockeyed optimist about the free availability of knowledge, so I already know the answer to that question even if I don't like it much. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Binyamin Dissen Sent: Monday, November 12, 2018 5:54 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are a large number of parts to make sure that things are done the right way, and that a fault will not bring the system to a crash. While one might be able to show examples of simple techniques, there is a lot of infrastructure required to handle problems. For example, what happens if you force an SSAR to a swapable address space that happens to be swapped in and the address space gets swapped out in the middle? If I recall correctly, the next page fault that I had in the target address space caused a MEMTERM of the home address space - which meant no ESTAEs got control. On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" wrote: :>And that was my whole point -- Where are the examples for programmers to see how to do it the right way? :> :>If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. :> :>Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. :> :>". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. :> :>Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. :> :>Peter -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
There are a large number of parts to make sure that things are done the right way, and that a fault will not bring the system to a crash. While one might be able to show examples of simple techniques, there is a lot of infrastructure required to handle problems. For example, what happens if you force an SSAR to a swapable address space that happens to be swapped in and the address space gets swapped out in the middle? If I recall correctly, the next page fault that I had in the target address space caused a MEMTERM of the home address space - which meant no ESTAEs got control. On Mon, 12 Nov 2018 22:11:15 + "Farley, Peter x23353" wrote: :>And that was my whole point -- Where are the examples for programmers to see how to do it the right way? :> :>If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. :> :>Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. :> :>". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. :> :>Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. :> :>Peter :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Steve Smith :>Sent: Monday, November 12, 2018 3:33 PM :>To: IBM-MAIN@LISTSERV.UA.EDU :>Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] :> :>There are some good SHARE presentations on some of these techniques. :>Unfortunately for you, I'm too lazy to search for them. :> :>However, and this is important, anything and everything you do that uses authorized services entails exposure of system integrity. It behooves any organization to ensure that its personnel writing such code are well-trained and thoroughly knowledgeable about how the system works, is designed, and what those exposures are. It's also perfectly clear many organizations, including many ISVs, do not. This kind of knowledge and experience doesn't come from blindly following two-sentence replies from who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, but how would a newbie know?). :> :>You could easily read a paper on the latest techniques in brain surgery. :>I'd be skeptical about your ability to do it, unless you had the prior training and experience it requires. :> :>The point is, you need that training and experience, and you also need to be able to train and study on your own, as there's very little in the way of formal education in our field. Neither IBM-MAIN nor StackOverflow are a substitute for the fundamentals. :> :>sas :> :>On Mon, Nov 12, 2018 at 1:56 PM David W Noon < 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: :> :>> On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 :>> (peter.far...@broadridge.com) wrote about "Why are sophisticated :>> system-level coding examples not available? [was: RE: Recommended :>> method for accessing secondary access spaces]" (in :>> ): :>> :>> > Not jumping on Ed Jaffe or Peter Relson or any of the other :>> > thoughtful and helpful responders in this email chain, but it still :>> > rankles me that there are no good examples anywhere (not at IBM and :>> > not at CBT) for programmers to review that show exactly how to set :>> > up and use "SRB to the other address space and PC-ss back to the :>> > requesting address space" or any similarly sophisticated :>> > system-level application coding technique. :>> > :>> > Why is system-level application coding made an obscure mystery to :>> > which only IBM and (some) ISV's have access? Good examples that :>> > show how to "do the right thing" would avoid an awful lot of :>> > dangerous :>> experimentation. :>> > "Security through obscurity" is, I think all here would agree. NOT a :>> > good thing. -- Binyamin Dissen http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
On Mon, 12 Nov 2018 22:11:15 +, Farley, Peter x23353 wrote: > >Of course, all that isaancient history now. No university or education center >offers anything like that anymore. Much more profitable to offer >certification courses in Windows. > Marist? But still, a limited choice. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
And that was my whole point -- Where are the examples for programmers to see how to do it the right way? If SHARE has some presentations it is good to know that. Not the easiest place to search for stuff, but at least it is accessible. Yes, of course experience is the best teacher, but without even examples of how to do something it is awfully hard to figure it out on your own. ". . . thoroughly knowledgeable about how the system works" is a whole 'nother can of worms. Back in the day places like universities in some cities offered "adult education" courses on MVS debugging and internals. I took a two-semester course like that back around the time that the MVS lock manager was first introduced, and it was wonderful, complex, interesting material to learn. Of course, all that is ancient history now. No university or education center offers anything like that anymore. Much more profitable to offer certification courses in Windows. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Steve Smith Sent: Monday, November 12, 2018 3:33 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] There are some good SHARE presentations on some of these techniques. Unfortunately for you, I'm too lazy to search for them. However, and this is important, anything and everything you do that uses authorized services entails exposure of system integrity. It behooves any organization to ensure that its personnel writing such code are well-trained and thoroughly knowledgeable about how the system works, is designed, and what those exposures are. It's also perfectly clear many organizations, including many ISVs, do not. This kind of knowledge and experience doesn't come from blindly following two-sentence replies from who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, but how would a newbie know?). You could easily read a paper on the latest techniques in brain surgery. I'd be skeptical about your ability to do it, unless you had the prior training and experience it requires. The point is, you need that training and experience, and you also need to be able to train and study on your own, as there's very little in the way of formal education in our field. Neither IBM-MAIN nor StackOverflow are a substitute for the fundamentals. sas On Mon, Nov 12, 2018 at 1:56 PM David W Noon < 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: > On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 > (peter.far...@broadridge.com) wrote about "Why are sophisticated > system-level coding examples not available? [was: RE: Recommended > method for accessing secondary access spaces]" (in > ): > > > Not jumping on Ed Jaffe or Peter Relson or any of the other > > thoughtful and helpful responders in this email chain, but it still > > rankles me that there are no good examples anywhere (not at IBM and > > not at CBT) for programmers to review that show exactly how to set > > up and use "SRB to the other address space and PC-ss back to the > > requesting address space" or any similarly sophisticated > > system-level application coding technique. > > > > Why is system-level application coding made an obscure mystery to > > which only IBM and (some) ISV's have access? Good examples that > > show how to "do the right thing" would avoid an awful lot of > > dangerous > experimentation. > > "Security through obscurity" is, I think all here would agree. NOT a > > good thing. -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
I was in several of the OCO sessions at SHARE. They were heated but in summary there were two major points. Intellectual property(the clones were trying to reverse engineer MVS), change control-Hursley was saying the large majority of their problems were coming from modified IBM code. Our post SHARE review we recommended to buy the source and hold on as better documentation for the Interfaces was sure to follow. It never did... In a message dated 11/12/2018 2:22:13 PM Central Standard Time, edja...@phoenixsoftware.com writes: They WERE published many years ago and then OCO came along and took those great examples away. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
There are some good SHARE presentations on some of these techniques. Unfortunately for you, I'm too lazy to search for them. However, and this is important, anything and everything you do that uses authorized services entails exposure of system integrity. It behooves any organization to ensure that its personnel writing such code are well-trained and thoroughly knowledgeable about how the system works, is designed, and what those exposures are. It's also perfectly clear many organizations, including many ISVs, do not. This kind of knowledge and experience doesn't come from blindly following two-sentence replies from who knows who on IBM-MAIN (I know who's who on IBM-MAIN, as many of us do, but how would a newbie know?). You could easily read a paper on the latest techniques in brain surgery. I'd be skeptical about your ability to do it, unless you had the prior training and experience it requires. The point is, you need that training and experience, and you also need to be able to train and study on your own, as there's very little in the way of formal education in our field. Neither IBM-MAIN nor StackOverflow are a substitute for the fundamentals. sas On Mon, Nov 12, 2018 at 1:56 PM David W Noon < 013a910fd252-dmarc-requ...@listserv.ua.edu> wrote: > On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 > (peter.far...@broadridge.com) wrote about "Why are sophisticated > system-level coding examples not available? [was: RE: Recommended method > for accessing secondary access spaces]" (in > ): > > > Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful > > and helpful responders in this email chain, but it still rankles me > > that there are no good examples anywhere (not at IBM and not at CBT) > > for programmers to review that show exactly how to set up and use "SRB > > to the other address space and PC-ss back to the requesting address > > space" or any similarly sophisticated system-level application coding > > technique. > > > > Why is system-level application coding made an obscure mystery to which > > only IBM and (some) ISV's have access? Good examples that show how to > > "do the right thing" would avoid an awful lot of dangerous > experimentation. > > "Security through obscurity" is, I think all here would agree. NOT a good > > thing. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
In answer to the last question, GUPI interfaces. "Do the right thing in the right way." In these sophisticated cases GUPI may also require APF authorization, which is OK if that is what the process requires to make it "done right". If you don't have it you probably shouldn't be trying to use these techniques. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Paul Gilmartin Sent: Monday, November 12, 2018 3:19 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] On Mon, 12 Nov 2018 10:52:02 -0800, Charles Mills wrote: >+1 >I would say that sometimes right after a feature comes out there is a >presentation at SHARE, e.g., "How to use the new PC-ss facility." That is not >optimal if your first need to use PC-ss comes five or ten years after it first >is available. Some SHARE presentations are available online; some are not. >Some stand alone pretty well without the speaker's words; some do not. > >ISVs have their plates full just like IBM. We have even less incentive than >IBM to volunteer manpower to create HOWTO documentation, so I don't see it >happening that way. > FAQ? Wiki? (I know of neither. Perhaps Planet MVS?) >What business justification for IBM? Little now. But good documentation >examples should have been part of the budget when the facility was originally >implemented. >-Original Message- >From: Farley, Peter x23353 >Sent: Monday, November 12, 2018 10:14 AM > >Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful and >helpful responders in this email chain, but it still rankles me that there are >no good examples anywhere (not at IBM and not at CBT) for programmers to >review that show exactly how to set up and use "SRB to the other address space >and PC-ss back to the requesting address space" or any similarly sophisticated >system-level application coding technique. > >Why is system-level application coding made an obscure mystery to which only >IBM and (some) ISV's have access? Good examples that show how to "do the >right thing" would avoid an awful lot of dangerous experimentation. "Security >through obscurity" is, I think all here would agree. NOT a good thing. > Are you thinking of GUPI or non-GUPI interfaces? Peter R. largely, prudently avoids discussing the latter. -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
On 11/12/2018 10:56 AM, David W Noon wrote: I think most of the low-level techniques were derived from code seen on the IBM-supplied microfiche (remember that?) that arrived with MVS installation media. It would benefit the mainframe industry if microfiche (or a more modern medium) were reinstated. There are no longer any other platform-level vendors in mainframes any more, so nobody is going to bootleg z/OS as their own operating system. I think you make a good point about why great programming examples have not been published by IBM. They WERE published many years ago and then OCO came along and took those great examples away. -- Phoenix Software International Edward E. Jaffe 831 Parkview Drive North El Segundo, CA 90245 https://www.phoenixsoftware.com/ This e-mail message, including any attachments, appended messages and the information contained therein, is for the sole use of the intended recipient(s). If you are not an intended recipient or have otherwise received this email message in error, any use, dissemination, distribution, review, storage or copying of this e-mail message and the information contained therein is strictly prohibited. If you are not an intended recipient, please contact the sender by reply e-mail and destroy all copies of this email message and do not otherwise utilize or retain this email message or any or all of the information contained therein. Although this email message and any attachments or appended messages are believed to be free of any virus or other defect that might affect any computer system into which it is received and opened, it is the responsibility of the recipient to ensure that it is virus free and no responsibility is accepted by the sender for any loss or damage arising in any way from its opening or use. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
On Mon, 12 Nov 2018 10:52:02 -0800, Charles Mills wrote: >+1 >I would say that sometimes right after a feature comes out there is a >presentation at SHARE, e.g., "How to use the new PC-ss facility." That is not >optimal if your first need to use PC-ss comes five or ten years after it first >is available. Some SHARE presentations are available online; some are not. >Some stand alone pretty well without the speaker's words; some do not. > >ISVs have their plates full just like IBM. We have even less incentive than >IBM to volunteer manpower to create HOWTO documentation, so I don't see it >happening that way. > FAQ? Wiki? (I know of neither. Perhaps Planet MVS?) >What business justification for IBM? Little now. But good documentation >examples should have been part of the budget when the facility was originally >implemented. >-Original Message- >From: Farley, Peter x23353 >Sent: Monday, November 12, 2018 10:14 AM > >Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful and >helpful responders in this email chain, but it still rankles me that there are >no good examples anywhere (not at IBM and not at CBT) for programmers to >review that show exactly how to set up and use "SRB to the other address space >and PC-ss back to the requesting address space" or any similarly sophisticated >system-level application coding technique. > >Why is system-level application coding made an obscure mystery to which only >IBM and (some) ISV's have access? Good examples that show how to "do the >right thing" would avoid an awful lot of dangerous experimentation. "Security >through obscurity" is, I think all here would agree. NOT a good thing. > Are you thinking of GUPI or non-GUPI interfaces? Peter R. largely, prudently avoids discussing the latter. -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
On Mon, 12 Nov 2018 18:13:30 +, Farley, Peter X23353 (peter.far...@broadridge.com) wrote about "Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]" (in ): > Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful > and helpful responders in this email chain, but it still rankles me > that there are no good examples anywhere (not at IBM and not at CBT) > for programmers to review that show exactly how to set up and use "SRB > to the other address space and PC-ss back to the requesting address > space" or any similarly sophisticated system-level application coding > technique. > > Why is system-level application coding made an obscure mystery to which > only IBM and (some) ISV's have access? Good examples that show how to > "do the right thing" would avoid an awful lot of dangerous experimentation. > "Security through obscurity" is, I think all here would agree. NOT a good > thing. I can offer an opinion based on my years as a developer for various ISVs. Each ISV considers its more sophisticated code to be some kind of magic joojoo that it wants to keep private as a competitive advantage. The curious part is, most developers have worked for a variety of ISVs and have spread the magic as they went, so the slick code tended to be fairly similar in all the ISV companies. I think most of the low-level techniques were derived from code seen on the IBM-supplied microfiche (remember that?) that arrived with MVS installation media. It would benefit the mainframe industry if microfiche (or a more modern medium) were reinstated. There are no longer any other platform-level vendors in mainframes any more, so nobody is going to bootleg z/OS as their own operating system. -- Regards, Dave [RLU #314465] *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* david.w.n...@googlemail.com (David W Noon) *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
+1 I would say that sometimes right after a feature comes out there is a presentation at SHARE, e.g., "How to use the new PC-ss facility." That is not optimal if your first need to use PC-ss comes five or ten years after it first is available. Some SHARE presentations are available online; some are not. Some stand alone pretty well without the speaker's words; some do not. ISVs have their plates full just like IBM. We have even less incentive than IBM to volunteer manpower to create HOWTO documentation, so I don't see it happening that way. What business justification for IBM? Little now. But good documentation examples should have been part of the budget when the facility was originally implemented. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Farley, Peter x23353 Sent: Monday, November 12, 2018 10:14 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces] Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful and helpful responders in this email chain, but it still rankles me that there are no good examples anywhere (not at IBM and not at CBT) for programmers to review that show exactly how to set up and use "SRB to the other address space and PC-ss back to the requesting address space" or any similarly sophisticated system-level application coding technique. Why is system-level application coding made an obscure mystery to which only IBM and (some) ISV's have access? Good examples that show how to "do the right thing" would avoid an awful lot of dangerous experimentation. "Security through obscurity" is, I think all here would agree. NOT a good thing. If you don't show programmers how to do it right, you can't really yell at them for not doing so. Maybe if the ISV's got together (at SHARE maybe?) they could agree on publishing stripped-down HOWTO examples based on the work they have already done to "do the right thing". That way no one ISV is alone in exposing any potentially valuable intellectual property. And of course IBM really ought to be publishing good examples too, but I suspect the answer to that is the usual "what business justification can you show to make it a profitable exercise to spend valuable and scarce resources doing?". How about helping your customers not to give themselves serious trouble that you could help them avoid? -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Why are sophisticated system-level coding examples not available? [was: RE: Recommended method for accessing secondary access spaces]
Not jumping on Ed Jaffe or Peter Relson or any of the other thoughtful and helpful responders in this email chain, but it still rankles me that there are no good examples anywhere (not at IBM and not at CBT) for programmers to review that show exactly how to set up and use "SRB to the other address space and PC-ss back to the requesting address space" or any similarly sophisticated system-level application coding technique. Why is system-level application coding made an obscure mystery to which only IBM and (some) ISV's have access? Good examples that show how to "do the right thing" would avoid an awful lot of dangerous experimentation. "Security through obscurity" is, I think all here would agree. NOT a good thing. If you don't show programmers how to do it right, you can't really yell at them for not doing so. Maybe if the ISV's got together (at SHARE maybe?) they could agree on publishing stripped-down HOWTO examples based on the work they have already done to "do the right thing". That way no one ISV is alone in exposing any potentially valuable intellectual property. And of course IBM really ought to be publishing good examples too, but I suspect the answer to that is the usual "what business justification can you show to make it a profitable exercise to spend valuable and scarce resources doing?". How about helping your customers not to give themselves serious trouble that you could help them avoid? Just my $0.02USD worth. Peter -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Ed Jaffe Sent: Monday, November 12, 2018 11:35 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Recommended method for accessing secondary access spaces On 11/12/2018 7:28 AM, Joseph Reichman wrote: > I can use CSA storage to pass back the data if after I copy it over I > release it We used to do that back in the pre-ESA/390 days. That technique carries with it all sorts of hideous timing/cleanup issues that simply don't exist with the PC-ss technique. Food for thought... -- This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN