1. In a processor having an internal memory and coupled to an external memory, a method for storage and execution of an algorithm represented by a plurality of program code blocks that is too large to be stored entirely within the internal memory, comprising the steps of: retrieving a first block of the plurality of program code blocks from the external memory; accessing a first semaphore to determine availability of a first memory slot in the internal memory; storing the first program code block into the first memory slot; modifying the first semaphore to indicate unavailability of the first memory slot; and executing the first program code block.