1. A device comprising: a housing; a storage device disposed in the housing, the storage device including a plurality of executable applications stored therein and each executable application of the plurality of executable applications are assigned an allocation strategy from a plurality of different allocation strategies; 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 containing memory blocks of varying sizes; 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, wherein the memory allocation is based on an allocation strategy assigned to the at least one application from the plurality of different allocation strategies, and the allocation strategy defines a prioritized order for the first group, the second group, and the memory heap.