A Practical Dynamic Frequency Scaling Scheduling Algorithm for General Purpose Embedded Operating System