Yes. I think that you did. I can not address of FLEX-ES handles it, but I suspect that it performs in a manner similar to Hercules.
Hercules has code that it executes for each instruction that it simulates. So yes, it calls a simulation routine for each instruction. It is efficient, but not as efficient as a translation scheme. As I understand it from the filing, PSI actually performs a just-in-time translation of the IBM instructions into equivalent native Itanium code. Now it is of course that case that translation of some of the instructions will generate multiple Itanium instructions or even involve calls to native Itanium subroutines. Look at it this way. As instruction processing moves through the IBM code, a test is made to determine if Itanium code has been generated for the next sequential instruction. If yes, execution simply falls through into the JIT-generated Itanium code. If no, control is passed to a JIT compilation procedure, which takes the new instruction, or preferably as many instructions as can be reasonably identified up to the end of the current page (4K), and generates native Itanium code. Control is then returned to the point form which the JIT compilation procedure was called and execution continues. If an exception is raised, the appropriate mapping is made back to the native IBM storage address. The user does not see the underlying Itanium code. The user sees the IBM code, which is retained for reference/data/debugging. Also, if a page change occurs due to a store, I/O operation, etc., Itanium instructions mapped from that page would be marked invalid, and retranslation would occur as necessary. But the critical point is that IBM alleges that PSI is translating licensed IBM executable object code into executable object code for another hardware platform. This is what is prohibited by IBM licensing agreements. Now some will say that this is merely the difference between apples and oranges. IBM does not see it that way. Nor for that matter do I. John P Baker Software Engineer Maybe so, but although I am a software developer I have a good understanding of the hardware platforms, and I don't quite understand the distinction between simulator and emulator, in this context. Are you saying that Flex/Hercules calls simulation routines for each zSeries instruction, while the PSI does the same except that it makes use of Itanium instructions which are similar? I can't believe your statement that PSI is translating object code. That would mean that every piece of code loaded, from NUC, to LPA, to LINKLIB, to user libraries, would have to be translated in memory to Itanium-compatible code. This would make debugging impossible. What would show up in a dump? Did I misinterpret your statement? -- Bruce A. Black Senior Software Developer for FDR Innovation Data Processing 973-890-7300 personal: [EMAIL PROTECTED] sales info: [EMAIL PROTECTED] tech support: [EMAIL PROTECTED] web: www.innovationdp.fdr.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

