21 个仓库
Collections of libraries, headers, and tools required to build applications for specific operating system environments.
Explore 21 awesome GitHub repositories matching operating systems & systems programming · Platform SDKs. Refine with filters or upvote what's useful.
Swift is a high-performance, general-purpose programming language designed for safety and speed. It features a modular compiler front-end that transforms source code into optimized machine binaries, utilizing a value-oriented type system that prioritizes predictable state management through value and reference types. The language is built on a task-based concurrency model that schedules asynchronous operations across multicore hardware to ensure data race safety. The project distinguishes itself through a native, bi-directional interoperability mechanism that allows for direct integration wit
Targeting Android architectures allows building and deploying binaries directly to physical devices or virtual emulators.
SerenityOS is a complete, self-hosted desktop operating system built from the kernel up. It features a monolithic kernel architecture that manages system services, hardware drivers, and networking within a single address space. The system provides a full computing environment, including a proprietary windowing system and a suite of native desktop applications, all while maintaining a POSIX-compliant interface for standard system programming. The project is distinguished by its integrated development workflow, which relies on a cross-compilation build pipeline to generate system images from ho
Provides kernel interfaces and graphical components for building native applications.
TinyGo is a specialized compiler and development toolkit designed to bring the Go programming language to resource-constrained microcontrollers and WebAssembly environments. It provides a bare-metal runtime environment that enables high-level code execution without the need for a traditional operating system, utilizing an LLVM-based backend to generate efficient machine instructions. The project distinguishes itself through aggressive optimization techniques tailored for small hardware, including a static memory allocation strategy and whole-program dead code elimination that significantly re
Provides cross-compilation support for generating Linux-compatible binary executables.
F Prime 是一个基于组件的框架,专为嵌入式和航天软件的开发与部署而设计。它提供了一种模块化架构,将软件逻辑与通信接口解耦,允许开发者通过领域特定建模语言定义系统结构。这种基于模型的方法支持自动化代码生成,在确保复杂系统拓扑一致性的同时,维护了软件模块之间严格的接口契约。 该框架的特色在于其集成的构建系统和地面数据操作套件。它实现了嵌入式软件全生命周期的自动化,从交叉编译和依赖管理到遥测与命令接口的生成。通过为机载飞行软件和地面监控提供统一的环境,它促进了跨不同硬件平台的分布式嵌入式系统的无缝集成、测试及指挥控制。 除了核心架构外,该项目还包含用于系统可观测性的综合工具,包括实时遥测可视化、事件日志记录和诊断追踪。它支持从裸机环境到实时操作系统的多种部署场景,并提供了内存管理、状态驱动行为建模和异步任务执行机制。 该项目以 C++ 仓库形式维护,并提供详尽的文档和支持跨平台开发的构建系统。
Configures the build system to compile and link software components specifically for standard Linux operating systems.
jetson-inference is a set of libraries and tools for executing optimized deep learning models on embedded GPU hardware. Its primary purpose is to enable real-time computer vision and AI inference at the edge with low latency and high throughput. The project distinguishes itself through high-performance streaming analytics and the ability to execute concurrent AI pipelines on auto-grade silicon. It provides specialized support for multi-sensor stream processing, utilizing zero-copy data transport to load camera frames directly into GPU memory. The codebase covers a broad surface of capabiliti
Creates production-ready, secure embedded Linux distributions using validated recipes and reference images.
OpenWrt-Rpi is a firmware builder and embedded Linux build toolset designed to compile custom router operating system images for Raspberry Pi and NanoPi hardware. It utilizes a GitHub Actions CI pipeline to automate the generation of fresh firmware images from the latest source code via daily updates. The project maintains a custom package repository and local software sources for managing community plugins and kernel modules. This infrastructure is used to ensure version consistency and prevent dependency conflicts during the installation of network drivers and system extensions. The build
Provides a toolset for creating specialized, production-ready Linux distributions for embedded ARM and x86 hardware.
Builds reproducible, optimized embedded Linux distributions using Yocto Project recipes validated for Jetson hardware.
This repository provides a Docker base image built on Alpine Linux, designed to produce containers under 5 MB. It is a minimal Linux container image that uses the apk package manager for installing software from the Alpine Linux repository. The image is constructed with a musl-based C library and a BusyBox-based userland, replacing GNU coreutils with a single compact binary. It structures the filesystem as a single root filesystem layer to minimize storage and transfer overhead, and is compatible with multi-stage Docker builds to keep final images lean. The project covers building smaller an
Uses musl libc instead of glibc to produce smaller statically linked binaries.
This is the official documentation repository for Raspberry Pi hardware and software. It covers the complete range of Raspberry Pi single-board computers, the RP-series microcontrollers, and the Raspberry Pi operating system. The documentation provides reference material for setting up devices, configuring hardware, and using the system for tasks including AI inference, camera and video capture, embedded development, and remote access. The documentation covers the full boot chain from the GPU firmware and EEPROM bootloader through to kernel loading, with detailed guidance on boot configuratio
Provides guides for building custom kernels, configuring bootloaders, and managing device tree overlays on Raspberry Pi.
该项目是一个 OpenWrt 固件构建系统和嵌入式 Linux 构建工具,旨在为 NanoPi 硬件创建定制的路由器固件镜像。它作为一个网络 OS 定制套件,提供了一个结构化的环境,用于编译集成了特定驱动程序、软件包和内核优化的定制操作系统镜像。 该系统通过深度硬件和性能调优脱颖而出,包括用于流量加速的内核空间流卸载和用于防止单核处理瓶颈的对称多处理中断平衡。它实现了专门的硬件集成,例如用于 5G 频段的 USB 无线适配器支持、冷却风扇控制和 CPU 时钟速度优化,以解锁硬件频率限制。 该构建过程涵盖了广泛的功能,包括自定义补丁集成、自动分区扩展以及用于家庭网络服务的预装软件捆绑。它支持网络管理功能,如 DNS 配置、VPN 隧道、广告拦截以及用于在嵌入式硬件上运行应用程序的容器支持。 该项目利用 shell 脚本来自动化固件镜像的生成并管理系统更新。
Provides a comprehensive system for building production-ready Linux distributions tailored for embedded ARM networking hardware.
Maturin is a build tool that compiles Rust crates into Python wheel packages, supporting multiple binding systems such as PyO3, CFFI, and UniFFI to create native extension modules. It manages the full build pipeline from Rust compilation to wheel assembly, including cross-compilation for different operating systems and architectures without requiring native hardware. The tool integrates development-mode installation with automatic rebuilds: when a Python import hook detects source changes, it triggers recompilation before the module loads. Editable installs link the compiled module into site-
Validates Linux wheels against portability rules and tags them for broad distribution compatibility.
Build Linux is a toolset for assembling a custom Linux distribution entirely from source code, automating the process described by Linux From Scratch. It compiles every system component from upstream source, giving the builder full control over included packages and configuration. The build process relies on a Makefile-driven orchestration that coordinates the entire sequence, using script-defined package recipes for each component. It employs chroot isolation to keep build artifacts separate from the host, and follows a stage-wise bootstrapping approach that first builds a minimal set of tem
Creates small, optimized Linux systems suitable for resource-constrained or embedded environments.
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Supports compilation specifically for the musl libc implementation on Linux using dedicated compiler flags.
This repository is the Armbian build framework — an embedded Linux build system for generating custom operating system images tailored to single-board computers, primarily targeting ARM and RISC-V architectures. The build process is orchestrated by GNU Makefiles and relies on a chroot-based environment to assemble the root filesystem, manage cross-compilation toolchains, and aggregate binary firmware blobs for hardware compatibility. Kernel and bootloader source trees are fetched via git, with structured patches applied in a controlled sequence, while each supported board is described by a ded
Creates custom embedded Linux distributions with kernel, bootloader, and filesystem for ARM/ARM64 boards.
该项目是 OpenWrt 操作系统的交叉编译构建系统和软件仓库。它提供了一个由社区维护的软件安装包、构建脚本和应用程序定义的精选集合,用于为特定的目标硬件架构编译第三方库和实用程序。 该系统作为一个嵌入式 Linux 软件源,利用交叉编译工作流将外部源代码转换为兼容的二进制文件。它包括一系列网络工具(如 DNS 服务器和 VPN),专为路由器环境和资源受限设备量身定制。 构建功能涵盖了广泛的软件类别,包括系统实用程序、外部 C 和 C++ 库、邮件服务以及用于音频、视频和图像处理的多媒体应用程序。这些组件通过模块化的包定义和补丁系统集成到自定义固件扩展中。
Functions as an embedded Linux software feed providing a curated collection of application definitions and patches.
Unikraft is a modular library operating system and unikernel framework designed to compile applications into minimal, bootable virtual machine images. It serves as an OCI-compliant image builder and a cloud-native hypervisor target, enabling the creation of specialized runtimes that include only the specific drivers and libraries required by a single application. The system features a Linux compatibility layer that maps standard API calls and POSIX standards to unikernel libraries, allowing unmodified binaries to run without a full general-purpose kernel. It distinguishes itself by allowing c
Links object files against the musl C library using native build systems to simplify software porting.
This project is a collection of common Unix utilities compiled as statically linked binaries. It provides a portable Nix toolset and a bundle of POSIX utilities designed to run across different Linux distributions without requiring shared library dependencies. The collection focuses on cross-distribution compatibility and minimal environment setup. By utilizing a musl-based toolchain and static-link compilation, these utilities are distributed as standalone files that execute immediately without the need for a package manager or external system packages. The project covers a range of portabl
Uses a musl-based toolchain to ensure binaries remain compatible across diverse Linux distributions.
fnnas is a Debian-based network attached storage operating system and deployment framework designed to transform x86 and Arm64 hardware into private storage servers. It provides a custom operating system image builder and a kernel compilation tool for building and packaging specific kernels and device tree blobs for various hardware platforms. The project includes a hardware-specific deployer that maps device models to required bootloaders and kernel tags. It features an eMMC backup and recovery tool to save factory system images from internal storage and restore them to revert system changes
Creates specialized Linux distributions for embedded hardware targets with configurable filesystem sizes.
Musl-cross-make is a build system that automatically downloads, patches, and compiles source components to generate relocatable cross-compilation toolchains targeting the musl C library. It functions as an automated build environment for creating custom cross-compilers and standard library toolchains for alternative target architectures. The system orchestrates the sequential downloading, patching, configuring, and compiling of multi-component toolchains, applying distribution-specific bug fixes and architecture patches directly to extracted source trees. It downloads required upstream source
Builds custom compilers and standard library environments tailored for lightweight distributions using musl.
RPi-Monitor 是一个专为嵌入式 Linux 环境和单板计算机设计的监控套件。它提供了一个框架,用于收集实时硬件遥测数据、跟踪系统性能指标,并通过基于 Web 的仪表盘进行可视化。该系统旨在通过利用固定大小的循环数据库(RRD)来处理长期数据持久化,确保在不超过存储容量的情况下维护历史记录。 该项目通过专注于嵌入式硬件集成和灵活部署脱颖而出。它支持监控外部物理传感器,并可在容器化环境中部署,或通过构建配方直接集成到自定义嵌入式 Linux 发行版中。为了适应受限或易失性文件系统,该软件包含只读操作模式,而其模块化插件架构允许添加自定义脚本和外部硬件显示器。 除了本地监控,该系统还通过标准协议和 JSON 端点公开遥测数据,作为更广泛网络基础设施的代理。它包括一个基于阈值的警报引擎,以便在性能偏离定义参数时触发通知,并通过身份验证和反向代理集成强制执行安全性,以管理对仪表盘的远程访问。
Integrates monitoring tools directly into custom operating system builds using build recipes and layers.