I think I should describe more about LEJOS OSEK for those who are not familiar with terms and words used in LEJOS OSEK (especially about OSEK).
-What is OSEK
OSEK is an open standard specification for automotive electronics and software such as engine management system, anti-lock break system.
For more detailed information, please check:
http://en.wikipedia.org/wiki/OSEK.
OSEK conformed software (i.e. Real-Time Operating System) has been used in the millions of vehicles on the road such as Mercedes Benz, BMW, VW…
-What is TOPPERS OSEK
Specification of OSEK is open and now some parts of OSEK are standardized by ISO. The official ISO number is ISO 17356.
So technically, anybody can develop an OSEK conformed Real-Time Operating System (RTOS).
TOPPERS OSEK is an open source OSEK kernel and developed by TOPPERS project.
TOPPERS(Toyohashi OPen Platform for Embedded Real-time Systems) has been managed by a Non Profit Organization founded in Sep. 2003 and
has been led by Professor Hiroaki Takada of Nagoya University in Japan.
-Pros of LEJOS OSEK
1. You can write application in ANSI C/C++ (not C based, but real C with GCC) for the NXT.
2. You can develop real-time control application (i.e. NXTway) by using OSEK provided features (I.e. Rate Monotonic Scheduling with 1 msec resolution, multi-tasking, event synchronization, resource protection for shared global resource...)
3. Fast execution and less memory consumption. LEJOS OSEK does not use virtual machine (or byte interpreter) technology,
so application is natively executed on the ARM7 and LEJOS OSEK itself consumed only about 10 Kbytes. (Rest of memory, you can use for your application)
4. Equivalent to automotive software development environment. If you wanted to work for (or were interested in) automotive industry,
LEJOS OSEK might be a good material to learn about how they develop software for vehicles.
-Cons of LEJOS OSEK
1. No nice GUI/File system. LEJOS OSEK is tightly linked with application statically.
2. No safety guard for memory protection. If you used C pointer in wrong way, program may be crashed.
takashic