Emulation of a data processing system
AssigneeWang Laboratories, Inc.
InventorsLoren O. Albright, David J. Angel, Patrick Klos, James P. Moskun, Carol W. Tyler
Life of this patent
Estimating the term…
Loading patent…
AssigneeWang Laboratories, Inc.
InventorsLoren O. Albright, David J. Angel, Patrick Klos, James P. Moskun, Carol W. Tyler
Estimating the term…
Emulation method and apparatus allowing a first system, which is not designed as a functional duplicate of a second system, to emulate the second system. The input/output structure of the second system is emulated in the first system by means of routines stored therein and which direct the already existing input/output structure to operate in the same manner as the input/output structure of the second system. The emulation routines are in turn invoked through the non-maskable interrupt mechanism of the first system by a modification thereto which detects the occurrence of "foreign" input/output requests; that is, input/output requests occuring in programs originally written for the second system and which are not normally recognized by the first system. The means for detecting foreign input/output requests includes means for comparing input/output request port addresses to the range of port addresses occupied by the system input/output devices and indicating when a port address is within the range of address space occupied by the system input/output devices. The foreign request detection means generates a non-maskable interrupt to invoke an input/output emulation routine upon the occurrence of input/output requests which do not normally fall within the range of input/output ports supported by the first system.
In a data processing system including means for storing programs, CPU means responsive to the programs for processing the data, input/output devices, an input/output structure responsive to the programs for communicating information between the system and the external devices and an interrupt means responsive to operation of the system for interrupting the execution of a current operation in response to an interrupt request and executing an interrupt operation to service the interrupt request, wherein the input/output structure of the system has ports to the input/output devices which occupy a first range of the system address space and the programs include requests for input/output operations directed to the ports in the first range of the system address space, emulation means for allowing the execution of programs written for another system by emulating the input/output structure of the other system wherein the input/output devices of the other system have ports located within a second range of address space and the programs written for the other system include requests for input/output operations directed to ports in in the second range of the address space, the emulation means comprising:
Dependencies are inferred from the claim text.