As part of my masters thesis I designed and implemented modifications to the FreeRTOS kernel and MicroBlaze portable layer to enable tasks to be scheduled concurrently on multicore processors. I also implemented a software-based mutual exclusion API in the kernel for use in creating critical sections in a concurrent environment.
Because the port I modified was the one developed for MicroBlaze by Tyler Newton, I’m not sure how helpful it will be to you. In any case, you can read my thesis at the following URL: https://sourceforge.net/projects/freertosxcore/files/thesis.pdf/download
. You can also download all the source code from a public SVN repository on SourceForge: https://freertosxcore.svn.sourceforge.net/svnroot/freertosxcore
Do bear in mind that this is not production code and requires significant further development before it can be used in a live product. Having said this, if you are interested in a multicore version of FreeRTOS you should hopefully find it useful!