Patent ID: 7106339

Claim:
A system comprising: an application processor to execute one or more software applications; a companion device, in communication with the application processor, to perform one or more companion functions; a first memory in communication with said application processor; a second memory in communication with said companion device; and a memory mapper to map at least a portion of said first memory and at least a portion of said second memory into a system memory space for use by the application processor as memory that is not dedicated to a function associated with said companion device; wherein said application processor is to issue an instruction to said companion device requesting access to a local bus associated with said companion device when an application running on said application processor identifies a system memory location that is mapped from the second memory, said instruction to act as an interrupt within said companion device; wherein said application processor is to run a memory cycle using address and data busses to access the system memory when an application running on said application processor identifies a system memory location that is mapped from said first memory; and wherein said memory mapper is programmed to identify an available portion of said second memory to be mapped into said system memory space, said available portion being a portion of said second memory that is not being used by said companion device to perform said one or more companion functions, wherein said available portion of said second memory varies based on current local memory demands of said companion device.