Patent ID: 7111303

Claim:
A computer system comprising: a processor; and a virtual machine operating system for communication between first and second applications, said first and second applications executing in different user portions of said virtual machine operating system and supporting Internet Protocol (IP), said virtual machine operating system comprising: a first user portion of said operating system for executing the first application and including a first device driver for a first virtual network interface card (NIC); a second user portion of said operating system for executing the second application and including a second device driver for a second virtual NIC; a base portion of said operating system, said base portion being shared by said first and second user portions and including said first and second virtual NICs, said base portion maintaining one or more tables correlating first and second IP addresses of said first and second virtual NICs, respectively to first and second buffer addresses of first and second input buffers, respectively, for said first and second device drivers, respectively; and wherein said first device driver is programmed to receive an IP datagram from said first application and pass it to said first virtual NIC using IP, said datagram including an IP address of said second virtual NIC and an indication that said second application should receive said datagram; in response to receipt of said IP datagram, said first virtual NIC is programmed to determine said second buffer address of said second input buffer based on said IP address of said second virtual NIC in said datagram and said one or more tables, and transfer said IP datagram to said second input buffer.