1. A method of performing dynamic voltage and frequency scaling (DVFS) operations on a mobile device that includes a multicore processor, the method comprising: applying a default DVFS program to each processor core in the multicore processor to scale an operating frequency of each processor core in the multicore processor; receiving in the mobile device via an application programming interface a plurality of DVFS programs; identifying for each processor core in the multicore processor at least one DVFS program in the received plurality of DVFS programs that is suitable for scaling the operating frequency of each respective processor core; storing each of the identified DVFS programs in the non-volatile memory in association with each respective processor core and in a hierarchical order for each respective processor core; traversing the hierarchical order for at least one processing core; selecting a first DVFS program encountered when traversing the hierarchical order; and applying the selected first DVFS program as part of a startup routine of the mobile device to its respective processor core to scale the operating frequency of the respective processing core.