Patent ID: 7159059
Filing Date: 2007-01-02
Classification: G06F

Abstract:
1. A computing element, comprising: a first storage area operable to receive and store input data and output data, wherein the input data comprises data received from an external host device for peripheral processing; a second storage area comprising an application program having a predetermined function, wherein the application program is operable to apply the predetermined function to the input data to generate the output data, wherein the output data comprises a transformation of the input data by the predetermined function; a processor operable to execute the application program on the input data and generate the output data based on the predetermined function; a host bus control module operable to manage access to the first storage area and the second storage area, the host bus control module having control software executable by the processor to restrict an external host device to writing the input data to and reading the output data from the first storage area, the control software further executable to prevent access by the external host to the second storage area such that the computing element appears as a passive mass storage device to the external host device, and wherein the application program further comprises: a plurality of processes, wherein each one of the plurality of processes is operable to receive a process input data message and perform a predetermined process function to generate a process output data message; a plurality of queues, wherein each one of the plurality of queues is connected with one of the plurality of processes and operable to receive and transfer the process input data message to the respective one of the plurality of processes; and a software bus interconnecting each of the plurality of queues and each of the plurality of processes, the software bus executable by the processor to receive and deliver the respective process output data message to a predetermined one of the plurality of queues as the respective process input data message, wherein one of the process input data messages comprises the input data, and wherein one of the process output data messages comprises the output data.