1. A method for sharing an address translation table for multiple I/O adaptors, comprising: allocating a plurality of memory regions each for one of the multiple I/O adaptors; building the address translation table having a top-level address; creating a plurality of hardware contexts each corresponding to one of the plurality of memory regions, each hardware context including a translation table pointer, a virtual address of the corresponding memory region, and a protection scheme of the corresponding memory region; and assigning the top-level address of the address translation table to the translation table pointer of each of the plurality of hardware contexts.