eSOL announced that they have launched the eSOL eMCOS SDK, a software development kit for many-core processors. The eMCOS SDK consists of the eSOL eMCOS many-core real-time operating system (RTOS), its integrated middleware components that offer network, file, and USB services, and the eSOL eMCOS IDE Plug-in development and analysis tools. Developers can immediately execute and evaluate their Linux and TRON software assets on a many-core processor, since eMCOS supports POSIX and T-Kernel APIs and comes with standard driver stacks.

The eMCOS SDK initially supports the 36-core TILE-Gx8036™ processor. A many-core processor with tens or hundreds of cores boasts overwhelming computing capability and low power consumption. The many-core technology is best suited for intelligent connected embedded systems requiring advanced image processing and recognition, and hard real-time processing of huge amounts of data.

Many-core processors are being adapted to more and more applications, including autonomous driving technology, robots, computer vision, and medical devices. However, the company has a significant challenge for software development for many-core processors. Conventional RTOSes for single-core and multi-core processors will not work on many-core processors because of the difference in hardware principals and its architectures.

eSOL developed eMCOS, a totally different RTOS from existing RTOSes, to address such a challenge. A microkernel is allocated to each individual core to offer basic services, including inter-core message passing, local thread scheduling, and thread management. Advanced OS services, including device drivers plus file system and network services, are provided by distributed server threads running under microkernels on multiple cores within a many-core processor.

This fundamental architecture allows a reduction in the sharing of OS data among multiple cores, and offers scalability on any many-core processor without a cache coherency mechanism. Moreover, eSOL's patent-pending eMCOS Semi-priority-based Scheduling™ algorithm ensures fast real-time responses as well as the high throughput and scalability that are expected from many-core processors. Application developers do not need to pay attention to which cores execute their program, as eMCOS employs the same programming model as that of other multi-core RTOSes, including eSOL's eT-Kernel Multi-Core Edition.

eMCOS OS APIs are offered with the familiar C function interface. eMCOS does not require developers to recognize message-passing behavior that is conducted internally and automatically within APIs. eMCOS supports POSIX and T-Kernel APIs.

eSOL also developed the eSOL eMCOS IDE Plug-in tools for application development, which work as plug-ins for the Eclipse-based IDEs provided by many-core semiconductor manufacturers. The eMCOS IDE plug-ins include a debugger to control execution of programs on many-core processors allowing opening a debug window for each thread, a sampling-based Realtime Profiler to analyze and display system performance, and a Message Profiler to analyze message communication behaviors.