| US 7,552,436 B2 | ||
| Memory mapped input/output virtualization | ||
| Frank William Brice, Jr., Hurley, N.Y. (US); Richard K. Errickson, Poughkeepsie, N.Y. (US); Mark S. Farrell, Pleasant Valley, N.Y. (US); Charles W. Gainey, Jr., Poughkeepsie, N.Y. (US); Thomas A. Gregg, Highland, N.Y. (US); Carol B. Hernandez, Poughkeepsie, N.Y. (US); Damian L. Osisek, Vestal, N.Y. (US); and Donald W. Schmidt, Stone Ridge, N.Y. (US) | ||
| Assigned to International Business Machines, Armonk, N.Y. (US) | ||
| Filed on Nov. 25, 2003, as Appl. No. 10/723,405. | ||
| Prior Publication US 2005/0114586 A1, May 26, 2005 | ||
| This patent is subject to a terminal disclaimer. | ||
| Int. Cl. G06F 9/46 (2006.01); G06F 3/00 (2006.01) | ||
| U.S. Cl. 718—104 [710/3; 710/5] | 17 Claims |

| 1. A method of performing memory mapped input output operations to an alternate address space comprising:
establishing a first instruction directed to a first memory mapped input output alternate address space associated with an
adapter to store data in accordance with resource address designation, said resource address designation configured for decomposition
thereof such that said first memory mapped input output alternate address space associated with said adapter is accessible;
establishing a second instruction directed to said first memory mapped input output alternate address space associated with
an adapter to load data in accordance with said resource address designation;
allocating, through a host program, at least one of a real resource and a virtual resource associated with said first memory
mapped input output alternate address space to a guest program started by the host program;
ensuring that a process executed by the guest program corresponds to said at least one of the real resource and the virtual
resource allocated to the guest program, in a manner that is not visible to the quest program; and
wherein said process issues at least one of said first instruction and said second instruction and thereby causes execution
of at least one of said store and load with said first memory mapped input output alternate address space.
|