awesome-repositories.com
ब्लॉग
awesome-repositories.com

AI-संचालित खोज के साथ बेहतरीन ओपन-सोर्स रिपॉजिटरी खोजें।

एक्सप्लोर करेंक्यूरेटेड खोजेंओपन-सोर्स विकल्पसेल्फ-होस्टेड सॉफ्टवेयरब्लॉगसाइटमैप
प्रोजेक्टहमारे बारे मेंहम रैंकिंग कैसे करते हैंप्रेसMCP सर्वर
कानूनीगोपनीयताशर्तें
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
libffi avatar

libffi/libffi

0
View on GitHub↗
4,281 स्टार्स·817 फोर्क्स·C·3 व्यूज़sourceware.org/libffi↗

Libffi

libffi एक फॉरेन फ़ंक्शन इंटरफ़ेस लाइब्रेरी है जो रनटाइम पर अन्य भाषाओं में लिखे गए फ़ंक्शंस को कॉल करने में सक्षम बनाती है। यह एक मल्टी-आर्किटेक्चर ABI रैपर और डायनामिक कॉल फ़्रेम जनरेटर के रूप में कार्य करती है, जो तर्क प्रकारों (argument types) और रिटर्न मानों के रनटाइम विवरण के आधार पर बाहरी फ़ंक्शंस के निष्पादन की अनुमति देती है।

यह प्रोजेक्ट विभिन्न हार्डवेयर आर्किटेक्चर और ऑपरेटिंग सिस्टम में विविध कॉलिंग कन्वेंशन को संभालने के लिए एक पोर्टेबल इंटरफ़ेस प्रदान करता है। इसमें एक्जीक्यूटेबल क्लोजर एलोकेशन की क्षमताएं शामिल हैं, जो फॉरेन कोड को एक्जीक्यूटेबल मेमोरी में संग्रहीत जंप टेबल के माध्यम से होस्ट भाषा के भीतर कॉलबैक ट्रिगर करने की अनुमति देती हैं।

फ़ंक्शन इनवोकेशन के अलावा, यह लाइब्रेरी लो-लेवल असेंबली स्टब्स को मैनेज करती है और प्रकारों को रजिस्टर में मैप करने के ओवरहेड को कम करने के लिए कॉल प्लान कैशिंग का उपयोग करती है। इसमें विभिन्न लिंकर फॉर्मेट्स के बीच सिंबल-आधारित वर्ज़न स्क्रिप्ट को बदलने के लिए एक बाइनरी वर्ज़न स्क्रिप्ट कन्वर्टर भी शामिल है।

Features

  • Foreign Function Interfaces - Provides a foreign function interface to call functions in other languages by dynamically constructing call frames.
  • Dynamic Call Frame Construction - Constructs function call stacks at runtime by arranging arguments in memory according to hardware calling conventions.
  • Assembly Stubs - Provides low-level assembly stubs to bridge generic function calls to hardware-specific register and stack layouts.
  • Multi-Architecture ABI Wrappers - Wraps diverse calling conventions across multiple hardware architectures and operating systems.
  • Calling Convention Abstractions - Supports various calling conventions like stdcall, thiscall, and fastcall across different hardware architectures.
  • Dynamic Call Frame Generators - Generates function call frames at runtime based on dynamic descriptions of argument and return types.
  • Language Interoperability - Enables execution of code across different programming languages using a portable interface for various calling conventions.
  • Portable Function Invocations - Executes compiled functions regardless of the target hardware calling convention through a portable interface.
  • Executable Memory Allocations - Allocates memory regions with execution permissions to store jump tables for redirecting foreign calls.
  • Function-Pointer Callbacks - Creates executable closures that allow native libraries to trigger logic and functions within the host language.
  • Executable Closure Allocations - Allocates memory with execution permissions to create function closures for external callbacks.
  • Executable Closure Providers - Generates executable closures that allow external programs to trigger callbacks within the host language via jump tables.
  • Call Plan Caches - Caches pre-calculated argument layouts to reduce the overhead of mapping types to registers for frequent calls.
  • General Libraries - Portable foreign-function interface library for C.
  • जनरल पर्पस लाइब्रेरीज़ - Portable foreign-function interface library.
  • Scripting and Bindings - Portable library for implementing foreign function interfaces.

स्टार हिस्ट्री

libffi/libffi के लिए स्टार हिस्ट्री चार्टlibffi/libffi के लिए स्टार हिस्ट्री चार्ट

AI सर्च

और अधिक बेहतरीन रिपॉजिटरी खोजें

अपनी ज़रूरत को सरल भाषा में बताएं — AI हजारों क्यूरेटेड ओपन-सोर्स प्रोजेक्ट्स को प्रासंगिकता के आधार पर रैंक करता है।

Start searching with AI

Libffi के ओपन-सोर्स विकल्प

समान ओपन-सोर्स प्रोजेक्ट्स, जो Libffi के साथ साझा की गई सुविधाओं के आधार पर रैंक किए गए हैं।
  • pyo3/pyo3PyO3 का अवतार

    PyO3/pyo3

    15,344GitHub पर देखें↗

    This project provides a framework for binding Rust and Python, enabling the creation of native extension modules and the embedding of the Python interpreter within host applications. It functions as a cross-language interoperability library that facilitates the execution of scripts, the definition of classes, and the sharing of data structures across the boundary of the two runtimes. The framework distinguishes itself through the use of procedural macros to automate the generation of boilerplate code, simplifying the process of exposing native functions and data types. It employs type-level m

    Rustbindingffipython
    GitHub पर देखें↗15,344
  • node-ffi/node-ffinode-ffi का अवतार

    node-ffi/node-ffi

    4,322GitHub पर देखें↗

    node-ffi is a foreign function interface library for Node.js that enables calling functions from native C dynamic libraries without writing manual C++ bindings. It serves as a system for loading shared objects and DLLs into process memory, translating JavaScript values into binary representations, and executing external binaries at runtime. The project utilizes a wrapper around the libffi library to construct call frames and execute native functions with dynamic arguments. It distinguishes itself by providing a native memory manager for allocating raw pointers and a mapping system that connec

    JavaScript
    GitHub पर देखें↗4,322
  • pyodide/pyodidepyodide का अवतार

    pyodide/pyodide

    14,685GitHub पर देखें↗

    This project provides a full Python interpreter compiled to WebAssembly, enabling the execution of Python code and scientific libraries directly within web browsers and server-side environments. By bridging the gap between language runtimes, it allows developers to run computational tasks, manage packages, and perform data analysis in client-side environments without requiring a backend server. The platform distinguishes itself through a comprehensive foreign function interface that enables bidirectional data exchange, object proxying, and function calling between Python and JavaScript. It in

    Pythonpythonwebassembly
    GitHub पर देखें↗14,685
  • java-native-access/jnajava-native-access का अवतार

    java-native-access/jna

    8,916GitHub पर देखें↗

    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

    Java
    GitHub पर देखें↗8,916
Libffi के सभी 30 विकल्प देखें→

अक्सर पूछे जाने वाले प्रश्न

libffi/libffi क्या करता है?

libffi एक फॉरेन फ़ंक्शन इंटरफ़ेस लाइब्रेरी है जो रनटाइम पर अन्य भाषाओं में लिखे गए फ़ंक्शंस को कॉल करने में सक्षम बनाती है। यह एक मल्टी-आर्किटेक्चर ABI रैपर और डायनामिक कॉल फ़्रेम जनरेटर के रूप में कार्य करती है, जो तर्क प्रकारों (argument types) और रिटर्न मानों के रनटाइम विवरण के आधार पर बाहरी फ़ंक्शंस के निष्पादन की अनुमति देती है।

libffi/libffi की मुख्य विशेषताएं क्या हैं?

libffi/libffi की मुख्य विशेषताएं हैं: Foreign Function Interfaces, Dynamic Call Frame Construction, Assembly Stubs, Multi-Architecture ABI Wrappers, Calling Convention Abstractions, Dynamic Call Frame Generators, Language Interoperability, Portable Function Invocations।

libffi/libffi के कुछ ओपन-सोर्स विकल्प क्या हैं?

libffi/libffi के ओपन-सोर्स विकल्पों में शामिल हैं: pyo3/pyo3 — This project provides a framework for binding Rust and Python, enabling the creation of native extension modules and… node-ffi/node-ffi — node-ffi is a foreign function interface library for Node.js that enables calling functions from native C dynamic… pyodide/pyodide — This project provides a full Python interpreter compiled to WebAssembly, enabling the execution of Python code and… java-native-access/jna — JNA is a foreign function interface and native memory mapper that allows Java applications to call functions in shared… y-crdt/y-crdt — This project is a memory-safe library implemented in Rust that provides a high-performance engine for managing shared,… bytedeco/javacpp — JavaCPP is a JNI C++ bridge and foreign function interface that provides a binding generator, a native library loader,…