1. A method of managing system memory for optimizing performance of a portable computing device, said method comprising: receiving a cache creation request from an application being executed by the portable computing device, wherein the application specifies, in said received cache creation request, data to be cached in a memory area of the system memory; receiving a memory usage event from one or more different applications being executed by the portable computing device, said memory usage event specifying a current memory state of the portable computing device and indicating whether additional memory is required by the one or more different applications to perform their operations; determining, based on the cache creation request and the memory usage event, whether the portable computing device has sufficient available memory for caching the data specified in the cache creation request; when the determining indicates the portable computing device has sufficient available memory for caching the specified data: defining the memory area of the system memory of a portable computing device to be used for caching the specified data during execution of the application, said memory area comprising a plurality of memory segments, said memory segments each having a storage capacity available for caching; allocating one or more of the memory segments for caching the specified data to be cached; storing the specified data to be cached in the one or more allocated memory segments; and retrieving the cached specified data from the one or more allocated memory segments for processing by the application; and when the determining indicates the portable computing device does not have sufficient available memory for caching the specified data: generating a pending cache creation request for the particular specified data specified in the received cache creation request and thereafter holding the pending cache creation request until the portable computing device has sufficient memory for caching the particular specified data; in response to generating the pending cache creation request, monitoring the available memory of the portable computing device; when the monitoring indicates the portable computing device has sufficient available memory for caching the specified data: defining a memory area of the system memory of a portable computing device used for caching the particular specified data in the held cache creation request during execution of the application, said memory area comprising a plurality of memory segments, said memory segments each having a storage capacity available for caching; allocating one or more of the memory segments for caching the particular specified data to be cached; storing the particular specified data to be cached in the one or more allocated memory segments; and retrieving the cached particular specified data from the one or more memory segments for processing by the application.