A method and system for allocating pre-selected physical memory locations to an application executing on a data processing system. Memory allocation subroutines, interacting with the programming interfaces of the operating system (OS), allocates and looks down blocks of memory. The memory allocation subroutines then de-allocates the memory blocks based on whether or not the memory blocks fall within the pre-selected range of physical memory locations. The physical memory locations of the blocks locked down are discovered using the driver. The driver takes the virtual address of the specified memory locations and returns with a corresponding physical address. The memory allocation subroutines provide functions that allow the program developer to specify the number of physical pages to allocate and a range of physical addresses and comprises algorithm(s) that allocates the physical memory within the selected range.
In accordance with the teachings described herein, systems and methods are provided for managing memory on a mobile device. A maximum amount of available data storage memory may be allocated for storing data for each of a plurality of software applications loaded on the mobile device. If additional memory is needed for an executing software application, then one of the plurality of software applications may be selected for memory clean-up. Data may then be deleted from the data storage memory allocated to the selected software application in accordance with a pre-established memory retention policy for the selected software application.
In accordance with the teachings described herein, systems and methods are provided for managing memory on a mobile device. A maximum amount of available data storage memory may be allocated for storing data for each of a plurality of software applications loaded on the mobile device. If additional memory is needed for an executing software application, then one of the plurality of software applications may be selected for memory clean-up. Data may then be deleted from the data storage memory allocated to the selected software application in accordance with a pre-established memory retention policy for the selected software application.