2 repository-uri
Systems that translate managed objects into native C-style memory layouts like structs and unions.
Distinct from Virtual Memory Mappers: Focuses on the mapping of data structures for interoperability, not virtual memory page management or lifecycle tracking.
Explore 2 awesome GitHub repositories matching operating systems & systems programming · Native Memory Mappers. Refine with filters or upvote what's useful.
JNA is a foreign function interface and native memory mapper that allows Java applications to call functions in shared native libraries without writing custom JNI wrapper code. It serves as a JNI alternative framework for invoking C functions and mapping native data structures using high-level interfaces. The library distinguishes itself through its ability to translate Java objects and primitives into C-style structs, unions, and pointers for cross-platform memory exchange. On Windows, it provides a dedicated toolkit for interacting with Component Object Model objects using both early and la
Translates Java objects and primitives into C-style structs, unions, and pointers for cross-platform memory exchange.
JavaCPP este o punte JNI C++ și o interfață de funcții străine (FFI) care oferă un generator de binding-uri, un încărcător de biblioteci native și un manager de memorie nativă. Automatizează crearea de wrappere Java în jurul header-elor C++ native și a bibliotecilor partajate pentru a permite interoperabilitatea între cele două limbaje. Proiectul dispune de un generator de binding-uri C++ care parsează fișierele header pentru a produce automat codul glue necesar și interfețele pentru apelarea funcțiilor native. Include un încărcător de biblioteci native care localizează și extrage binarele specifice platformei din classpath într-un cache local pentru execuția la runtime. Sistemul gestionează accesul la memorie nativă de înaltă performanță prin maparea directă a pointerilor și urmărirea resurselor pentru a preveni scurgerile de memorie. Gestionează maparea complexă a tipurilor pentru structurile de date C++ și suportă maparea callback-urilor native pentru a lega pointerii de funcții la metodele Java. Setul de instrumente permite înlocuirea metodelor gestionate cu implementări C++ sau assembly pentru a optimiza timpul de execuție și a reduce overhead-ul resurselor.
Provides high-performance memory access by mapping managed objects to native C-style memory layouts using direct pointers.