Jc

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

Maintainer:
Hartmut Schorrig
Driver:
Not yet selected
Licence:
GNU LGPL v2.1

RDF metadata

View full history Series and milestones

trunk series is the current focus of development.

All code Code

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

Get Involved

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

Downloads

Jc does not have any download files registered with Launchpad.