A system and method for managing position independent code using a
software framework is presented. A software framework provides the
ability to cache multiple plug-in's which are loaded in a processor's
local storage. A processor receives a command or data stream from another
processor, which includes information corresponding to a particular
plug-in. The processor uses the plug-in identifier to load the plug-in
from shared memory into local memory before it is required in order to
minimize latency. When the data stream requests the processor to use the
plug-in, the processor retrieves a location offset corresponding to the
plug-in and applies the plug-in to the data stream. A plug-in manager
manages an entry point table that identifies memory locations
corresponding to each plug-in and, therefore, plug-ins may be placed
anywhere in a processor's local memory.