A distributed processing system (10) includes a plurality of processing
modules, such as MPUs (12), DSPs (14), and coprocessors/DMA channels
(16). Power management software (38) in conjunction with profiles (36)
for the various processing modules and the tasks to executed are used to
build scenarios which meet predetermined power objectives, such as
providing maximum operation within package thermal constraints or using
minimum energy. Actual activities associated with the tasks are monitored
during operation to ensure compatibility with the objectives. The
allocation of tasks may be changed dynamically to accommodate changes in
environmental conditions and changes in the task list.