(IBM Mainframe Discussion List) wrote:
... The main danger in using STARTIO is when you build a channel program with real addresses that has read CCWs in it, as you can easily overlay storage that is not yours. Write CCWs will not overlay storage, but you will write the wrong data out to the I/O device if you get those real addresses wrong. As with any other authorized service, STARTIO must be used cautiously.
Real CCW addresses are also used by the documented EXCPVR interface. The biggest problem with STARTIO is that there is no allocation, DCB, or OPEN required. All it needs is an IOSB -- which contains pointers to the channel program and UCB. Using STARTIO, you can construct a channel program to read or write any records anywhere on any device. This puts you one subtle programming error away from "wiping out" something important that isn't yours. The other danger is having to write code that executes in SRB mode -- with PSW key zero -- to manage I/O completion.
Without question, STARTIO is a dangerous interface -- made even more dangerous by the total lack of documentation on its use.
-- Edward E Jaffe Phoenix Software International, Inc 5200 W Century Blvd, Suite 800 Los Angeles, CA 90045 310-338-0400 x318 [EMAIL PROTECTED] http://www.phoenixsoftware.com/ ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

