25 مستودعات
Portable software libraries written in C for direct binary linking into other applications.
Distinct from C Shared Libraries: Candidates are either C++ specific or limited to specific domains like logging or cryptography; this is a general C library identity.
Explore 25 awesome GitHub repositories matching operating systems & systems programming · C Libraries. Refine with filters or upvote what's useful.
libgit2 is a portable, cross-platform C library that provides a programmatic interface for integrating Git version control directly into applications. It serves as a linkable implementation of Git internals, allowing developers to manage repositories and manipulate version control data without requiring a system installation of the Git command line tool. The library functions as an embedded API and object database manager capable of reading and writing commits, trees, blobs, and tags. It includes a network transport client to handle the transfer of repository data over protocols such as SSH a
Provides a portable, cross-platform C library for integrating Git version control directly into applications.
SQLite هو محرك قاعدة بيانات علائقية بدون خادم (serverless) ومكتبة مبنية بلغة C تقوم بتخزين البيانات في ملف قرص محلي واحد. يعمل كقاعدة بيانات SQL مضمنة، حيث يتكامل مباشرة مع التطبيقات دون الحاجة إلى عملية خادم منفصلة. يتضمن المحرك قدرات متخصصة لفهرسة البحث في النصوص الكاملة (full-text search) والاستعلام عن البيانات المكانية باستخدام هياكل R-Tree لنطاقات الإحداثيات الجغرافية أو الهندسية. يوفر النظام دعماً واسعاً لمعالجة بيانات SQL، واستعادة قواعد البيانات وإصلاحها، وتتبع التغييرات لمزامنة التعديلات بين قواعد البيانات. كما يتميز بواجهة تعتمد على الطرفية (terminal) لإدارة قواعد البيانات وتكوينها.
Ships as a portable C library that can be compiled as a shared library or embedded source.
Conan is a package manager and binary repository for C and C++ that resolves and installs external libraries to ensure consistent build environments across different platforms. It functions as a native dependency resolver and a cross-platform build tool designed to facilitate reproducible native builds. The project provides capabilities for native package hosting, allowing users to implement a server to store and distribute pre-compiled libraries and their required dependencies. It also supports standalone binary bundling to create executable files that include all necessary runtime dependenc
Manages the resolution and installation of C and C++ libraries for consistent cross-platform environments.
pysheeet هي مكتبة مرجعية تقنية توفر مجموعة مختارة من مقتطفات التعليمات البرمجية وأنماط التنفيذ لتطوير Python المتقدم، وتكامل النظام، والحوسبة عالية الأداء. تعمل كدليل شامل لتنفيذ برمجة الشبكات منخفضة المستوى، وإضافات C الأصلية، والبرمجة غير المتزامنة والمتزامنة. يوفر المشروع أطر عمل متخصصة لتطوير ونشر نماذج اللغات الكبيرة، بما في ذلك أدوات لاستنتاج GPU الموزع والخدمة عالية الأداء. يتضمن أيضاً أنماطاً مفصلة لتنظيم مجموعات الحوسبة عالية الأداء، وتغطية تخصيص موارد GPU وإدارة عبء العمل متعدد العقد. تغطي المكتبة سطحاً واسعاً من القدرات، بما في ذلك اتصالات الشبكة الآمنة والتشفير، والتعيين الكائني-العلائقي وإدارة قواعد البيانات، وتنفيذ هياكل البيانات والخوارزميات المعقدة. كما توفر أدوات لإدارة الذاكرة، وقابلية التشغيل البيني الأصلية عبر واجهات الوظائف الخارجية، وتكامل نظام التشغيل على مستوى النظام.
Implements the invocation of functions from shared libraries using foreign function interfaces.
This project is an interactive programming education resource and tutorial designed for learning the Rust programming language and systems programming concepts. It provides a collection of runnable and editable code examples that serve as a practical reference for language syntax and implementation. The resource features an interactive code sandbox that allows users to execute and test code snippets in real time. It emphasizes the verification of technical accuracy by executing embedded code blocks during the build process to ensure all examples remain functional. The content covers a compre
Demonstrates how to link and execute functions from external C libraries using extern blocks.
iStoreOS is an embedded network operating system and router firmware based on OpenWrt. It provides a specialized Linux distribution designed to manage routing, switching, and device-level configurations on network hardware. The system includes a web-based management interface for configuring network settings and installing software packages. It enables the customization and extension of network appliances through a writable filesystem and integrated package management. The project covers home network administration and embedded network management, allowing for the provisioning of specialized
Utilizes the musl C library to ensure a small memory footprint on network hardware.
sqlite-vec is a C-based vector library and SQLite extension that adds virtual tables for storing and querying high-dimensional embeddings. It functions as a database plugin for performing nearest neighbor searches using distance metrics such as L2, cosine, and Hamming distance. The project provides a portable embedding store that supports deployment across Android, iOS, desktop environments, and web browsers via WebAssembly. It distinguishes itself by converting numerical arrays into compact binary formats and utilizing quantization to reduce the memory footprint and storage size of vector in
Ships as a low-level C library for converting, quantizing, and storing numerical vectors.
Hiredis is a minimalistic C client library designed to send commands and receive responses from Redis servers using a binary-safe protocol. It functions as a core toolkit providing a Redis protocol parser, a secure connector, and both synchronous and asynchronous driver interfaces. The library distinguishes itself through a decoupled protocol parser that converts raw byte streams into structured data objects independently of the network transport layer. It supports high-performance pipelining to batch multiple commands into a single network round-trip and provides a secure networking layer fo
Ships as a portable software library written in C for direct binary linking into applications.
CXX is a code generator that produces a safe, zero-overhead FFI bridge between Rust and C++. It lets functions and data types from either language be used directly in the other, with static type safety enforced at compile time and no copying, serialization, or runtime checks across the boundary. The bridge supports the full range of cross-language interactions: Rust can call C++ functions and use C++ types, and C++ can call Rust functions and use Rust types. Standard library types like strings, vectors, and smart pointers are mapped automatically between the two languages, while opaque types
Invokes C++ functions from Rust through a statically analyzed FFI bridge with full type safety.
Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces
Binds directly to existing C libraries with explicit allocation and copying for seamless integration.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Provides unverified C prototyping libraries for initializing the system, managing threads, and loading ELF binaries.
IncludeOS هو نظام تشغيل من نوع unikernel يجمع كود التطبيق مع تعريفات النواة الضرورية فقط في صورة واحدة قابلة للإقلاع. يعمل النظام كجهاز افتراضي سحابي فعال من حيث الموارد وبيئة تشغيل خفيفة بدون خادم (serverless) مصممة لتقليل استهلاك الذاكرة وأوقات الإقلاع. يوفر المشروع طبقة توافق مع Linux عبر مكتبة C، مما يسمح بتجميع وتشغيل التطبيقات المكتوبة لـ Linux داخل بيئة unikernel. كما يعمل كإطار عمل لأجهزة الشبكة لبناء جدران حماية وموازنات أحمال عالية الأداء باستخدام حزم TCP/IP قابلة للتهيئة. تشمل قدراته الواسعة إنشاء صور جهاز مصغرة للنشر على منصات مثل KVM وQemu وVMware، بالإضافة إلى تعزيز أمان أجهزة IoT المضمنة عبر منع إعادة التهيئة أثناء التشغيل. يدعم النظام بدء تشغيل الخدمة السريع لتحسين أوقات التشغيل البارد (cold starts) ويستخدم جدولة غير استباقية للحفاظ على زمن استجابة متوقع.
Provides a minimal C standard library implementation to enable Linux applications to run within the unikernel environment.
clib هو مدير حزم ومدير تبعيات بلغة C يُستخدم لتثبيت وتحديث وإدارة مكتبات C الخارجية وتبعيات الملفات التنفيذية من المستودعات البعيدة. يعمل كأداة توزيع لهيكلة الكود المصدري والبيانات الوصفية لنشر مكتبات C ومجموعة أدوات تطوير للحفاظ على بيئات بناء متسقة. يوفر المشروع إطار عمل لتوزيع مكتبات C وحل التبعيات، باستخدام ملفات البيان لتتبع إصدارات المكتبات المطلوبة وضمان عمليات بناء قابلة للتكرار عبر أنظمة مختلفة. وهو يبسط سير عمل تطوير C من خلال إدارة تثبيت وإلغاء تثبيت الملفات الثنائية الأصلية وأدوات التطوير. يغطي النظام مجموعة واسعة من إمكانيات برمجة النظام، بما في ذلك تحليل الذاكرة، وقياس الأداء، واختبار الوحدات. كما يتضمن أدوات لإدارة هياكل البيانات، والتفاعل مع نظام الملفات، والتجزئة التشفيرية، وتشفير البيانات، واتصالات الشبكة.
Serves as a dependency manager that tracks required C library versions in manifests for consistent builds.
Tbox هي مجموعة شاملة من مكتبات الأدوات منخفضة المستوى ومجموعات الأدوات لتطوير C المحمول. توفر مكتبة أدوات C متعددة المنصات تعمل كبديل خفيف الوزن للمكتبات القياسية، وتوفر إدارة ذاكرة محسنة وتجريدات نظام لضمان توافق الأجهزة عبر أنظمة تشغيل مختلفة. يتميز المشروع بإطار عمل متخصص من حاويات البيانات القياسية، بما في ذلك جداول التجزئة، والمتجهات، والقوائم المرتبطة مع البحث والفرز المتكامل. كما يوفر مجموعة أدوات مخصصة للشبكات والتسلسل، وإدارة طلبات HTTP، وتشفير SSL، وتحويل البيانات بين تنسيقات JSON وXML والثنائية. تمتد مساحة القدرات إلى تنفيذ المهام المتزامنة عبر الروتينات المشتركة (coroutines) ومجمعات الخيوط، وتجريدات استدعاء النظام الموحدة، وعرض الرسومات ثنائية الأبعاد. تشمل الوظائف الإضافية توليد تجزئة التشفير، وتنفيذ التعبيرات النمطية، والحساب بالنقطة الثابتة، وإدارة مجمع الذاكرة. تتضمن مجموعة الأدوات أيضاً أدوات متخصصة لتتبع طرق Objective-C على iOS وmacOS، بالإضافة إلى جهاز افتراضي قادر على معالجة تعليمات نصوص x86.
Ships a lightweight alternative to the standard C library optimized for minimal memory footprint and binary size.
tiny-AES-c is a lightweight C language cryptography library that provides a symmetric cipher implementation of the Advanced Encryption Standard. It functions as a portable set of functions for encrypting and decrypting data using a shared secret key. The library is designed for embedded system security, enabling cryptographic operations on hardware with limited memory and processing power. It provides these capabilities without relying on large external dependencies. The implementation utilizes a standard C library approach, employing table-based substitution and in-place buffer mutation to
Provides a portable software library written in C for direct binary linking into other applications.
uthash is a macro-based data structure library for C that provides header-only implementations of hash tables, linked lists, stacks, and dynamic arrays. It allows for key-based lookups and organized data storage without requiring external library linking. The library uses intrusive linking to embed metadata directly into user-defined structures via macros. This approach enables in-place structure extension, allowing hash and link fields to be added to existing structs without separate memory allocations for container nodes. The project also covers specialized memory and data stream managemen
Provides a portable collection of C libraries for fundamental data structure management.
klib هي مجموعة أدوات شاملة لتوسيع مكتبة C القياسية وبنى البيانات. توفر المجموعة مجموعة من الأدوات الأساسية لإدارة الذاكرة، وتنظيم البيانات، ووظائف الأداة العامة لتطبيقات C المستقلة. يتميز المشروع بإمكانيات متخصصة لتحليل تسلسل المعلومات الحيوية، بما في ذلك تحليل تنسيقات FASTA و FASTQ و Newick وتنفيذ محاذاة تسلسل Smith-Waterman ونماذج ماركوف المخفية. تتضمن المجموعة أيضاً مكتبة حسابات رياضية للروتينات العددية وتقييم التعبيرات، بالإضافة إلى عميل HTTP و FTP خفيف الوزن لاسترجاع البيانات البعيدة ذات الوصول العشوائي. تغطي مجموعة الأدوات سطحاً واسعاً من بدائيات الحوسبة عالية الأداء، بما في ذلك نماذج تعدد الخيوط، وبناء مصفوفة اللاحقة في زمن خطي، وخوارزميات الفرز المحسنة. تنفذ المجموعة مجموعة متنوعة من هياكل فهرسة البيانات الفعالة مثل جداول الهاش مع العنونة المفتوحة، وأشجار B، وأشجار AVL المتداخلة، مدعومة بإدارة التسلسل القائمة على تجمع الذاكرة. تشمل الأدوات الإضافية تحليل بيانات JSON وتفسير وسيطات سطر الأوامر.
Serves as a portable C library extension providing general-purpose data structures and utility functions.
c2rust is a source-to-source translation suite and C-to-Rust transpiler designed to convert C source code and libraries into functionally equivalent unsafe Rust code. It operates as a pipeline that preserves original behavior and data structures, producing translated code that compiles as compatible shared libraries or Rust crates. The system includes an automated Rust refactoring framework that uses pattern-based AST rewriting to transform unsafe Rust into safe, idiomatic constructs. It utilizes an ownership inference engine to determine when raw pointers can be converted into safe reference
Converts complete C library source trees into equivalent Rust code that compiles as shared libraries.
هذا المشروع عبارة عن نظام تشغيل محمول مفتوح المصدر مصمم لاستبدال برمجيات الأجهزة المملوكة بنظام يقوده المجتمع. غرضه الأساسي هو تمكين تطوير صور نظام مخصصة وتمديد دورات حياة الأجهزة المحمولة، وتوفير تحديثات للأجهزة بعد انتهاء دعم الشركة المصنعة الرسمي. يسمح النظام بإزالة البرمجيات غير المرغوب فيها (bloatware) وتعديل سلوكيات مستوى النظام من خلال تطوير ROM مخصص. يمكن للمستخدمين تجميع صور نظام كاملة من أشجار المصدر لتكييف نظام التشغيل لأجهزة محمولة محددة. تستخدم البنية التحتية نواة Linux معدلة، ومكتبة C مخصصة محسنة لبيئات الذاكرة المنخفضة، وطبقة تجريد الأجهزة لفصل إطار العمل عن تعريفات الأجهزة المحددة. يستخدم بيئة تنفيذ مدارة وإطار عمل نمطي لفصل التنفيذات الخاصة بالمورد عن النظام العام.
Provides a custom C library optimized for low-memory mobile environments instead of the standard GNU C library.
UltraJSON هي مكتبة JSON عالية الأداء ومحلل مكتوب بلغة C مع روابط لـ Python. توفر بديلاً سريعاً لمعالجة JSON القياسية لفك تشفير سلاسل JSON إلى هياكل بيانات أصلية وتشفير هياكل البيانات مرة أخرى إلى سلاسل JSON. تستخدم المكتبة محركاً يعتمد على C لتقليل زمن انتقال المعالجة وزيادة الإنتاجية لإنشاء وتحليل JSON. وهي مصممة لتسريع خطوط أنابيب البيانات وتحسين التعامل مع حمولات JSON.
Provides a high-performance JSON library written in C for binary linking and Python integration.