Javolution
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
| Javolution | |
|---|---|
| Developer | Jean-Marie Dautelle |
| Stable release | 7.0.0
/ July 2, 2017 |
| Written in | Java, C++ |
| Operating system | Cross-platform |
| Size | 480 KB (archived) |
| Type | Real-Time Library |
| License | BSD |
| Website | javolution |
| Repository | |
Javolution is a real-time library aiming to make Java or Java-Like/C++ applications faster and more time predictable. Indeed, time-predictability can easily be ruined by the use of the standard library (lazy initialization, array resizing, etc.) which is not acceptable for safety-critical systems. The open source Javolution library addresses these concerns[1] for the Java platform and native applications. It provides numerous high-performance classes and utilities useful to non real-time applications as well. Such as:
- Collections[2] classes, supporting custom views,[3] closure-based iterations, map-reduce paradigm, parallel computing, etc.
- Worst-case execution time behavior documented using Realtime[4] Java annotations
- Fractal structures[5] to maintain high-performance regardless of the size of the data
- OSGi contexts[6] allowing cross cutting concerns (concurrency, logging, security, ...) to be addressed at run-time through OSGi published services without polluting the application code (separation of concerns)
- Algorithmic parallel computing support with concurrent contexts[7] and general-purpose computing on graphics processing units with compute context[8]
- Struct/Union[9] base classes for direct interfacing with native applications
- Perfometer[10] utility class to measure worst-case execution time with high precision
- XML Marshalling/unmarshalling facility[11] capable of direct serialization/deserialization of existing classes (no intermediate data structure required)
- StAX-like XML reader/writer[12] which does not require object creation (such as String) and consequently faster than standard StAX
- Simple yet powerful configuration management[13] for your application.
Since version 6.0, Javolution makes it easy to port[14] any Java source code to C++ for cross-platform native compilation. OSGi and JUnit have been ported and are included with the core C++ distribution.
All modules (Java and native) are built using maven. Javolution can be used[15] either as an OSGi bundle (preferred) or as a standalone library.
References
- ^ Fully Time Deterministic Java
- ^ javolution.util
- ^ Collection Views
- ^ Realtime Annotation
- ^ Fractal Table
- ^ OSGi Contexts
- ^ Concurrent Contexts
- ^ "Compute Contexts". Archived from the original on 2013-12-29. Retrieved 2013-12-27.
- ^ Struct/Union
- ^ Perfometer Utility[permanent dead link]
- ^ XML Marshalling/unmarshalling Facility
- ^ StAX-Like Readers/Writers
- ^ Javolution Configuration Management
- ^ "Javolution C++ Overview" (PDF). Archived from the original (PDF) on 2013-10-01. Retrieved 2013-08-19.
- ^ Javolution Usage Overview
External links
- Javolution website
- Fully Time Deterministic Java – AIAA Space 2007 Conference
- Validating Java for Safety-Critical Applications – AIAA Space 2005 Conference
- Turbo-Charging Java for Real-Time Applications Archived 2009-02-05 at the Wayback Machine – Java Developer Journal Article
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.