This paper presents a high level dynamic task allocation algorithm that is inspired by the biological development process and the immune system. For a microprocessor (
P) array, a program is partitioned into a number of workload oriented tasks with data dependencies and a number of internal status-oriented tasks. Each
P in the array is capable of processing one of these tasks. The algorithm assigns tasks to the
P array that satisfies the requirements of the problem, and it dynamically recovers the system from faults at runtime.