13. The apparatus of claim 1 , wherein the hardware accelerator comprises an Input/Output request queue interacting with the processor for receiving and sequentially storing the instructions pending execution of each instruction; a task processor for processing the instructions from the Input/Output request queue; and an active object list for tracking the number of reference counts to an instance and for deallocating an instance that is not in use based upon a result of the task processor processing the instructions.
1. An apparatus, comprising: a hardware accelerator capable of being interfaced with a processor for accelerating the execution of an application written utilizing an object-oriented programming language by offloading the execution of the application from the processor to the hardware accelerator; and a software stub that controls interfacing of the hardware accelerator with the processor; wherein the object-oriented programming language includes at least one of a Java programming language and C++; wherein the apparatus is operable such that object requests made by a thread running on the processor are offloaded to the hardware accelerator for allowing the processor to process instructions.