In a message dated 11/21/2008 6:24:02 P.M. Central Standard Time, [EMAIL PROTECTED] writes: >Well, this was one of the first IBM related things that popped up in Google: _http://www.freepatentsonline.com/6453277.html_ (http://www.freepatentsonline.com/6453277.html) Be careful when reading through the text of a patent application. There are certain words that are used inside patent applications that are there for ancient, historical, and legal reasons and do not necessarily relate exactly to the real world of computers as we know them. I suspect that one reason for the arcane terminology in patent applications is to obfuscate the explanation. "Plurality" is a good example of such obfuscatory and archaic words. >"A method and system of emulating an input/output (I/O) device in a mainframe environment. A started task executing as part of the operating system gains control of I/O instructions directed to virtual devices by insuring that such I/O instructions cause interrupts. The fact that the started task gains control of I/O instructions directed to a particular device is what makes that device virtual. If the started task weren't doing this, then the device would have to be real. The started task could also intercept instructions going to a real device and do things that would not affect the reality of the device; e.g., scan the channel program looking for character string XYZ being transferred to or from the device, and, if found, signal the operator, cancel the application, etc. One way for a started task to insure that such I/O instructions cause interrupts is to do what VM does; namely, force all software running on that processor to be in problem state. Then any privileged instructions will cause interrupts which this started task could then intercept. If the privileged instruction is not one of the 15 or so that operate on I/O hardware, then the started task does nothing special with the intercepted instruction (although it must allow the instruction to execute, or else perfectly simulate what it does). If the intercepted instruction is one of the I/O instructions, then the started task would presumably look at the device involved. If the device is one that the started task wants to treat as virtual, then the STC must do something special. Otherwise it allows the I/O instruction to execute normally (either allow it to execute or else perfectly simulate it). After having read part of the patent application you mentioned, I see a much simpler way to cause an interrupt when an SSCH or TSCH is executed against one particular device, which is to change what's in the UCB field containing the subchannel number in such a way that the subchannel number is invalid, and then a program interrupt will occur when any I/O instruction (SSCH, TSCH, MSCH, etc.) which has to specify a subchannel number as one of its operands is executed. The STC would have to replace the program interrupt new PSW's instruction address, so that all program interrupts go into the STC, which then examines the type of program interrupt, particular machine instruction involved, etc. According to what this patent says, its software is not intercepting channel commands (CCWs), but is intercepting machine instructions (SSCH, e.g.) that are being executed against a particular device which the software wants to treat as virtual. >The started task then hooks the branch point for such interrupts. This means it replaces the instruction address part of the I/O interrupt new PSW so that an I/O interrupt will take you immediately into the STC rather than into IOS. Then the STC has to make sure that no matter what the STC does, the status of the system will be restored as it was when the I/O interrupt occurred, and then it when the STC ends all its processing it must branch to the location that was originally in the I/O interrupt new PSW. >Upon obtaining control, the started task causes the I/O source to believe a transaction with a predefined data space in a general storage area on board the mainframe is actually a transaction with a physical device." Upon obtaining control, an STC can do whatever it likes with the "device" against which the intercepted instructions were being executed. >Which led to the actual patent here: _http://www.patentstorm.us/patents/6453277/fulltext.html_ (http://www.patentstorm.us/patents/6453277/fulltext.html) >How this can be a patent I don't understand. I thought patents were for inventions, and copyrights were for software.
Bill Fairchild Rocket Software **************Check out smokin’ hot deals on laptops, desktops and more from Dell. Shop Deals (http://pr.atwola.com/promoclk/100000075x1213345834x1200842686/aol?redir=http://ad.doubleclick.net/clk;209513277;31396581;l) ---------------------------------------------------------------------- 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