Registered 2011-02-26 by Hartmut Schorrig

A C-language library especially for embedded applications which offers Java-similar routines. It contains common C-base algorithms and a Definition of an OSAL-Interface (Operation System Adaption Layer). The OSAL is implemented for Windows and Linux. The usability of the OSAL is tested on some embedded platforms (not Part of Open-Source).

The CRuntimeJavalike-C-routines were created from 2004. The Reason: For embedded applications no proper basic functions are present. But in Java there is a well proper base system
* for all multithreading requirements (class java.lang.Thread, methods synchronized for Objects etc)
* for all Input/Output requirements (java.io)
* for Container, especially lock-free with atomicAccess (ConcurrentLinkedQueue etc)
* etc. etc.
The feeling for that concepts and using as interface for C-language seems a stable concept for basic-functions in C rather than the old-style basic functions like fprintf etc and rather than direct usage of the special offers of the underlying operation system. The last one prevents testing on PC or needs a special adaption and blocks re-using.

A next goal was the establishment of a Java2C-translator, which allows to write and test algorithm in Java and then translate to C-language. The CRuntimeJavalike-base-system replaces the functionality of the Java-basics for the embedded C-software.

Some more complex functionality of the CRuntimeJavalike is programmed in Java and translated to C. The pure C-Source-code should be able to use and understand well. But it should not be improved in C.

C++-usage: All functionality is provided in C. But there are wrappers for C++ to get a better calling style. The usage of C++ for embedded applications is recommended by me, if a subset is used. The whole slang of C++ may not so proper in my mind: C is more closed to machine code, it is known whats happen.

The CRuntimeJavalike-functions are not complex. They are no more complex as any hand-written functions for the same requests, which are present in many software. A user can include the whole sources and use step by step the ones or other function. There is a hierarchical systems from solitaire basic functions, functions which uses some OSAL-calls, and more complex functions. The usage prepares the flow-path to program more ObjectOriented till usage of Java in embedded.

Project information

Hartmut Schorrig
Not yet selected

RDF metadata

View full history Series and milestones

trunk series is the current focus of development.

All code Code

Version control system:
Programming languages:
C, C++, Java

Get Involved

  • warning
    Report a bug
  • warning
    Ask a question
  • warning
    Help translate


Jc does not have any download files registered with Launchpad.