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 是一个无服务器的关系型数据库引擎和 C 语言库,将数据存储在单个本地磁盘文件中。它作为嵌入式 SQL 数据库运行,直接集成到应用程序中,无需单独的服务器进程。 该引擎包含用于全文搜索索引和使用 R-Tree 结构进行空间数据查询的专门功能,适用于地理或几何坐标范围。 该系统提供了对 SQL 数据操作、数据库恢复与修复以及用于在数据库间同步修改的变更追踪的广泛支持。它还具有用于数据库管理和配置的终端界面。
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 资源分配和多节点工作负载管理。 该库涵盖了广泛的功能,包括安全网络通信和加密、对象关系映射和数据库管理,以及复杂数据结构和算法的实现。它还提供用于内存管理、通过外部函数接口(FFI)进行原生互操作以及系统级 OS 集成的实用程序。
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 is a unikernel operating system that bundles application code with only the necessary kernel drivers into a single bootable image. It functions as a resource-efficient cloud service virtual machine and a lightweight serverless runtime environment designed to minimize memory footprints and boot times. The project provides a Linux compatibility layer via a C library, allowing applications written for Linux to be compiled and executed within the unikernel environment. It also serves as a network appliance framework for building high-performance firewalls and load balancers using config
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 和二进制格式之间的数据转换。 能力范围扩展到通过协程和线程池进行的并发任务执行、统一的系统调用抽象和 2D 图形渲染。其他功能包括加密哈希生成、正则表达式执行、定点算术和内存池管理。 该工具包还包括用于 iOS 和 macOS 上 Objective-C 方法追踪的专用工具,以及能够处理 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 是一个基于宏的 C 语言数据结构库,提供了哈希表、链表、栈和动态数组的仅头文件(header-only)实现。它允许在无需链接外部库的情况下进行基于键的查找和组织化数据存储。 该库使用侵入式链接(intrusive linking)通过宏将元数据直接嵌入到用户定义的结构体中。这种方法实现了原地结构扩展,允许在不为容器节点进行额外内存分配的情况下,将哈希和链接字段添加到现有的结构体中。 该项目还涵盖了专门的内存和数据流管理,包括用于连续数据流的固定大小循环缓冲区,以及具有自动内存分配功能的字符串缓冲区。这些工具极大地简化了资源受限环境和嵌入式系统中的数据处理。
Provides a portable collection of C libraries for fundamental data structure management.
klib 是一个全面的 C 标准库扩展和数据结构工具包。它为独立的 C 应用程序提供了一套基础工具,涵盖内存管理、数据组织和通用实用函数。 该项目具备生物信息学序列分析的专项能力,包括解析 FASTA、FASTQ 和 Newick 格式,以及实现 Smith-Waterman 序列比对和隐马尔可夫模型(HMM)。它还包含用于数值计算和表达式求值的数学库,以及用于随机访问远程数据的轻量级 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.
这是一个开源移动操作系统,旨在用社区驱动的系统取代专有设备软件。其主要目的是支持开发自定义系统镜像并延长移动设备的使用寿命,在官方制造商支持结束后为硬件提供更新。 该系统允许通过自定义 ROM 开发移除臃肿软件并修改系统级行为。用户可以从源代码树编译完整的系统镜像,从而为特定的移动硬件定制操作系统。 底层架构利用了修改后的 Linux 内核、针对低内存环境优化的自定义 C 库,以及用于将框架与设备特定驱动程序解耦的硬件抽象层。它采用托管执行环境和模块化框架,将供应商特定的实现与通用系统分离开来。
Provides a custom C library optimized for low-memory mobile environments instead of the standard GNU C library.
UltraJSON 是一个用 C 编写的高性能 JSON 库和解析器,具有 Python 绑定。它提供了一种标准 JSON 处理的快速替代方案,用于将 JSON 字符串解码为原生数据结构,并将数据结构编码回 JSON 字符串。 该库利用基于 C 的引擎来减少处理延迟并提高 JSON 生成和解析的吞吐量。它旨在加速数据管道并优化 JSON 负载的处理。
Provides a high-performance JSON library written in C for binary linking and Python integration.