1. A device comprising: a housing; a storage device disposed in the housing, the storage device including a plurality of executable applications stored therein; a memory device disposed in the housing, wherein the memory space of the memory device is logically partitioned into at least a first group of one or more contiguous memory blocks, a second group of one or more contiguous memory blocks each smaller than the one or more memory blocks of the first group, and a memory heap; and a processor disposed in the housing and configured to execute the plurality of applications stored in the storage device; wherein the device is configured to allocate memory, from at least one of a memory block of the first group, a memory block of the second group, or the memory heap, to at least one application of the plurality of executable applications upon execution of the at least one application by the processor, and wherein the memory allocation is based on an allocation strategy associated with the at least one application.