Task mapping plays a crucial role in achieving high performance and energy savings in heterogeneous multiprocessor platforms. The problem of optimally mapping tasks onto a set of given heterogeneous processors for maximal throughput/minimal overall energy consumption has been known, in general, to be NP-complete. This problem is exacerbated when mapping multiple applications onto the target platform. To address this problem, this paper proposes an iterative multi-application mapping algorithm that operates at run time. Based on statically derived optimal (or near optimal) mappings for each separate application, this algorithm will quickly find a near optimal mapping under the objectives of high performance and low energy consumption for the simultaneously running applications on heterogeneous platforms. We have evaluated our algorithm using a heterogeneous MPSoC system with three real applications. Experimental results reveal the effectiveness of our proposed algorithm by comparing derived solutions to the ones obtained from other well-known algorithms.