This document reviews different types of schedulers used for energy management in embedded systems. It discusses dynamic voltage and frequency scaling (DVFS) which aims to reduce energy consumption by varying CPU frequency and voltage dynamically. Real-time DVFS ensures quality of service by developing task schedules while reducing energy via DVFS. The paper surveys various DVFS scheduling algorithms that utilize CPU idle time to change frequency/voltage or use other techniques to meet power requirements. These algorithms can be offline, using worst-case execution times to pre-schedule all tasks, or online, making decisions in real-time based on past task executions to improve scheduling.