A method for performing application swapping in a multiprocessor system (10; 20; 216; 300), the multiprocessor system (10; 20; 216; 300) being an integrated circuit, the method comprising: a. loading a plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) on the multiprocessor system (10; 20; 216; 300), wherein the multiprocessor system (10; 20; 216; 300) comprises a plurality of processors and a plurality of memories interspersed among the processors, wherein said loading comprises distributing instructions and data from the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) among different respective ones of the plurality of memories for execution by associated processors; b. executing the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) on the multiprocessor system (10; 20; 216; 300), wherein the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) execute together and communicate with each other to perform a real time operation, wherein the real time operation performs at least one of input or output with real time data, wherein the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) process the real time data, wherein the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) comprise a first application and a plurality of other applications; c. swapping the first application with a second application, wherein the second application is not one of the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) that was previously loaded and executing on the multiprocessor system (10; 20; 216; 300), wherein said swapping is performed without stopping the plurality of other applications, wherein the plurality of other applications continue to execute during said swapping to perform the real time operation and process the real time data; d. wherein after said swapping, the plurality of other applications continue to execute with the second application, and wherein at least a subset of the plurality of other applications communicate with the second application to perform the real time operation and process the real time data. a. loading a plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) on the multiprocessor system (10; 20; 216; 300), wherein the multiprocessor system (10; 20; 216; 300) comprises a plurality of processors and a plurality of memories interspersed among the processors, wherein said loading comprises distributing instructions and data from the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) among different respective ones of the plurality of memories for execution by associated processors; b. executing the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) on the multiprocessor system (10; 20; 216; 300), wherein the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) execute together and communicate with each other to perform a real time operation, wherein the real time operation performs at least one of input or output with real time data, wherein the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) process the real time data, wherein the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) comprise a first application and a plurality of other applications; c. swapping the first application with a second application, wherein the second application is not one of the plurality of applications (5A-5J; 7A-7G; 8; 9A-B; 410A-E; 440A-D; 460A-B) that was previously loaded and executing on the multiprocessor system (10; 20; 216; 300), wherein said swapping is performed without stopping the plurality of other applications, wherein the plurality of other applications continue to execute during said swapping to perform the real time operation and process the real time data; d. wherein after said swapping, the plurality of other applications continue to execute with the second application, and wherein at least a subset of the plurality of other applications communicate with the second application to perform the real time operation and process the real time data.