emCORE is a fork of emBIOS which aims at even more flexibility. It supports/enforces dynamic memory allocation and the apps are runtime-relocatable. It supports libraries which can extend the functionality of shared code even more. emCORE can be seen as an experiment about how bad memory fragmentation can be on these small devices and about the other side effects of using this approach. It may or may not supersede emBIOS. (well, it probably will but not yet)
These features make emCORE much more powerful and extendable and are a great leap forward to accomplish our goal of making a really flexible but also lightweight operating system for embedded ARM devices with debugging and threading built in.