Patent ID: 7900010

Claim:
A memory manager for allocating memory in an embedded multimedia system, the embedded multimedia system being configured for running one or more applications, each of the one or more applications having one or more components thereof, the memory manager comprising: a first unit configured for receiving a plurality of memory allocation requests from the one or more components associated with each of the one or more applications, wherein the plurality of memory allocation requests includes parameters for indicating details of memory allocation requirements of each of the plurality of memory allocation requests; and a second unit configured for: optimizing configuration of memory allocations for the plurality of memory allocation requests based on the parameters associated with each of the plurality of memory allocation requests; generating a memory map based on the optimized configuration of memory allocations, wherein the memory map being indicative of the configuration of memory allocations; providing the memory map to each of the one or more applications; and allocating the memory in the system according to the memory map if the memory map is acceptable by each of the one or more applications, wherein the first unit is further configured for receiving a first memory architecture from the one or more applications and the second unit optimizes the configuration of memory allocations according to the parameters of the plurality of memory allocation requests and the first memory architecture if the memory map is not acceptable by anyone of the one or more applications.