US 7,464,191 B2
System and method for host initialization for an adapter that supports virtualization
Richard Louis Arndt, Austin, Tex. (US); Giora Biran, Zichron-Yaakov (Israel); Patrick Allen Buckland, Austin, Tex. (US); Harvey Gene Kiel, Rochester, Minn. (US); Vadim Makhervaks, Austin, Tex. (US); Renato John Recio, Austin, Tex. (US); Leah Shalev, Zichron-Yaakov (Israel); and Jaya Srikrishnan, Wappingers Falls, N.Y. (US)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Filed on Feb. 25, 2005, as Appl. No. 11/65,830.
Prior Publication US 2006/0195626 A1, Aug. 31, 2006
Int. Cl. G06F 13/28 (2006.01); G06F 13/24 (2006.01); G06F 3/00 (2006.01)
U.S. Cl. 710—10  [710/1; 710/34; 710/8; 710/9; 710/36; 710/37; 710/313; 711/1; 711/141] 17 Claims
OG exemplary drawing
 
1. A method of host initialization in a data processing system that includes a plurality of different system images, each one of the plurality of system images independently executing an operating system, the method comprising the computer implemented steps of:
allocating, in the adapter memory, a protection table segment for each one of the plurality of different system images, each one of the protection table segments including a plurality of protection table entries, wherein each one of the protection table segments cannot be accessed by ones of the plurality of system images other than the one of the plurality of system images for which each one of the protection table segments was allocated;
associating an address table segment with each one of the plurality of system images, wherein each one of the address table segments cannot be accessed by ones of the plurality of system images other than the one of the plurality of system images for which each one of the address table segments was allocated;
for each one of the plurality of system images: including in one of the plurality of protection table entries, which is included in the protection table segment that is allocated for the one of the plurality of system images, a protection domain, a logical address, and an address table pointer that points to the address table segment that is associated with the one of the plurality of system images;
allocating a first processing queue table segment in an adapter memory, wherein the first processing queue table segment is associated with a first system image allocated in a host memory of the data processing system;
allocating, in the adapter memory, a first protection table segment that defines attributes of a plurality of regions of the host memory, wherein the plurality of regions are associated with the first system image allocated in the host memory of the data processing system;
allocating, in the adapter memory, a first address table segment associated with a first entry in the first protection table segment that respectively defines physical addresses associated with the first entry in the first protection table segment; and
responsive to allocating the first protection table segment and the first address table segment, mapping the physical addresses to logical addresses, wherein the mapping is defined by the first protection table segment and the first address table segment.