20 个仓库
Assignment and enforcement of priority levels to distribute processor time among tasks.
Distinguishing note: Candidates focus on UI layout priority or job queue ordering, not CPU execution priority.
Explore 20 awesome GitHub repositories matching operating systems & systems programming · Task Priority Management. Refine with filters or upvote what's useful.
This project is a bare-metal operating system developed for ARM64 architecture. It serves as a low-level implementation of kernel engineering, focusing on the fundamental construction of an OS from the hardware level up. The system is distinguished by its comprehensive approach to ARM64 processor control, featuring a red-black tree task scheduler and a hierarchical page table system for virtual memory management. It implements a sophisticated privilege model that handles transitions between kernel and user modes, ensuring process isolation through address space splitting and exception level m
Assigns priority levels to tasks to ensure high-priority processes receive more processor time.
RT-Thread is an IoT real-time operating system and embedded device kernel. It provides a lightweight execution environment for microcontrollers, combining a real-time kernel with a hardware abstraction layer to manage multi-threaded task scheduling and hardware resource allocation. The project is built as a modular framework that utilizes a package-based ecosystem. This allows for the integration of reusable software libraries and high-level services through a loosely coupled architecture. The system covers real-time task scheduling, resource-constrained memory management, and embedded hardw
Implements a priority-based preemptive scheduler to manage CPU execution for multi-threaded tasks.
Embassy is an asynchronous framework for microcontrollers that provides a runtime for cooperative multitasking. It enables the execution of multiple concurrent tasks to maximize energy efficiency and CPU usage, utilizing an async executor that puts the processor to sleep when idle. The framework includes a comprehensive set of embedded components, featuring a hardware abstraction layer for peripherals like GPIO, SPI, I2C, and UART, alongside a TCP/IP network stack and a USB device stack. It also provides a Bluetooth Low Energy host stack for wireless communication and a bootloader framework t
Supports multiple executor instances at different priority levels to allow high-priority task preemption.
FreeRTOS is a real-time operating system for embedded devices that provides a kernel for predictable task execution. It utilizes priority-based preemptive scheduling and deterministic timing to manage simultaneous hardware tasks. The project includes a symmetric multiprocessing kernel that distributes processing workloads across multiple CPU cores using a shared memory architecture. It also provides a thread-safe TCP/IP networking stack for managing internet protocol traffic and IPv6 connectivity on embedded processors. The system incorporates an embedded memory manager with fixed-size alloc
Implements a priority-based preemptive scheduler to ensure deterministic real-time responsiveness for critical tasks.
Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for building and executing fault-tolerant, multi-step pipelines as directed acyclic graphs (DAGs), with automatic retries, scheduling, and real-time observability. The system is built around durable task checkpointing, which persists execution state after each step so work can resume from the last checkpoint after a worker crash or restart, and it supports event-driven task resumption that pauses a task until a matching external event arrives. The platform distinguishes itself through it
Assigns priority levels to tasks so critical work runs before less urgent ones.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Explains how timer interrupts and rescheduling flags enforce time slices and prioritization in kernel scheduling.
TencentOS-tiny 是一款专为微控制器设计的实时操作系统,旨在管理各种硬件模块的任务调度和资源分配。它作为一个嵌入式平台和模块化内核,支持在不同的芯片架构上部署实时软件。 该系统内置了协议栈,能够实现终端物联网设备与云平台之间的安全数据传输和连接。 该项目涵盖了实时任务管理、嵌入式软件部署和微控制器管理。它采用了模块化的微内核架构和硬件抽象层,实现了内核与特定芯片组的解耦。
Manages real-time execution by assigning and enforcing priority levels to distribute CPU resources.
Taskwarrior is a command-line task manager that lets you create, modify, filter, and complete to-do items directly from the terminal. It stores all tasks in a single plain-text file for portability and manual editing, and includes a custom expression language for selecting tasks by status, priority, tags, and date ranges. The tool distinguishes itself through several integrated capabilities. It computes a numeric urgency score for each task based on weighted factors like age, tags, and due date to determine ordering. A recurrence template engine generates new task instances from a template af
Computes a numeric urgency score from weighted factors like age, tags, and due date to order tasks.
RIOT 是一款专为资源受限微控制器设计的实时操作系统。它提供了一个用于管理嵌入式设备上的硬件外设、内存和多任务处理的内核,具有微控制器硬件抽象层,以统一不同芯片组之间的硬件访问。 该系统采用具有优先级执行功能的抢占式无时钟(tickless)任务调度器,以最大限度地提高电池供电硬件的能效。它还包括一个由加密 API 和安全传输协议组成的嵌入式安全框架,以促进经过身份验证的无线固件更新。 该项目进一步实现了一个支持 IPv6、IPv4 和以太网的模块化网络栈,用于设备连接。它涵盖了传感器和执行器的外设硬件控制、灵活的设备内存管理,以及通过专用运行时执行可移植二进制文件和脚本的功能。
Manages system processes using a preemptive tickless mechanism to maximize energy efficiency on battery-operated devices.
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
Utilizes non-preemptive scheduling to ensure predictable latency and eliminate jitter.
LiteOS 是一个轻量级实时操作系统(RTOS)内核,专为内存和处理能力受限的设备而设计。它为嵌入式物联网(IoT)开发提供了基础,专注于稳定且可预测的系统资源管理。 该系统实现了抢占式任务调度器和中断驱动的资源管理,以确保实时响应性。它结合了无时钟(tickless)空闲机制和优化的睡眠-唤醒周期,以降低电池供电硬件的功耗。 该内核包含通过信号量进行任务同步以及静态内存分配以防止运行时碎片化的能力。其他功能涵盖通过标准安全数据传输协议进行的物联网云集成、系统性能监控以及用于系统调试和命令执行的串行接口 Shell。
Features a kernel scheduler that can interrupt lower-priority tasks to ensure high-priority real-time execution.
Mbed OS 是专为互联物联网设备和微控制器硬件设计的实时操作系统。它提供了一个基础框架,将实时操作系统与嵌入式安全框架、用于控制传感器和外设的硬件抽象层以及用于云端编排的设备管理平台相结合。 该系统建立了安全基础,以保护互联产品免受未经授权的访问和漏洞攻击。它还通过将嵌入式设备连接到云服务,实现了远程监控和硬件编排。 该平台通过实时任务协调管理并发执行,并为不同微控制器架构的硬件管理提供了标准化接口。它还包括用于实现自定义系统错误处理和恢复行为的机制。
Features a preemptive priority-based scheduler to guarantee deterministic timing for critical real-time operations.
FreeRTOS-Kernel 是一个用于微控制器的实时操作系统内核。它通过基于优先级的任务调度器、嵌入式内存管理器和进程间通信框架提供多任务环境,以确保时间关键型任务满足截止期限。 该内核包含一个软件定时器引擎,用于在预定义的时间间隔或设定的延迟后执行函数。它支持并发任务的最小模型,并为内存资源受限的系统提供轻量级协程执行。 该项目涵盖了广泛的嵌入式资源管理,包括通过队列和事件组进行的任务间通信,以及确定性的系统资源调度。 项目集成通过使用获取工具或版本控制子模块的构建系统集成来管理。
Implements a preemptive scheduler that ensures high-priority tasks can interrupt lower-priority ones for real-time response.
p-queue 是一个 JavaScript Promise 队列和并发任务调度器,旨在限制活动异步操作的数量。它作为一个异步速率限制器和 Promise 生命周期管理器,以防止资源耗尽。 该项目以基于优先级的任务调度和令牌桶速率限制来控制执行频率而脱颖而出。它与用于任务取消的中止信号集成,并提供暂停、恢复和清除挂起操作的机制。 该工具涵盖了更广泛的流量管理能力,包括操作超时和并发限制。它还包括用于跟踪队列状态和挂起任务计数的监控原语,以及用于队列空闲的同步机制。
Supports priority-based task scheduling to ensure critical operations are processed before lower-priority ones.
Slurm 是一个专为高性能计算环境设计的集群工作负载管理器和作业调度器。它作为一个分布式计算编排器,在集群中的多个计算节点上排队并执行大规模计算任务。 该系统充当资源仲裁者,在并发用户之间分配硬件节点和处理器,以防止资源冲突并最大化效率。它协调跨不同物理服务器同时启动多个进程,以执行并行作业和科学工作负载。 该平台涵盖了广泛的能力领域,包括批处理作业调度、计算资源分配和并行工作负载执行。它根据资源可用性和优先级管理作业的定时和执行。
Orders pending workloads in a logical queue and dispatches them according to user priorities.
embedded-notes 是一系列专注于嵌入式 Linux、Linux 内核内部机制和 C 语言编程的技术学习指南和开发笔记。它既是嵌入式系统开发的参考资料,也是该领域技术面试的备考资源。 该项目提供了关于编写设备驱动程序、管理虚拟内存以及理解内核内部机制的详细文档。它还包括关于 MQTT 和 TCP/IP 等物联网网络协议的指南,并概述了芯片架构和硬件外设的架构细节。 这些资料涵盖了广泛的系统编程领域,包括手动内存管理、进程生命周期管理以及实时操作系统概念的实现。它还包括低级工具的参考资料,例如 ARM 交叉编译、二进制分析以及用于构建自动化的 Shell 脚本。
Details techniques for resolving priority inversion to ensure real-time system stability.
NuttX 是一个符合 POSIX 标准的实时操作系统,专为资源受限的嵌入式环境而设计。它作为可扩展的微控制器操作系统,提供了一个类 Unix 环境,用于管理硬件并在从 8 位到 64 位的架构上运行应用程序。 该系统通过实现遵循 POSIX 和 ANSI 标准的内核来确保高软件可移植性。这允许开发者在不同的硬件架构上使用标准化的 API 调用创建可移植的嵌入式应用程序。 该项目包括模块化内核架构和硬件抽象层,以将系统与特定芯片外设解耦。它利用基于优先级的抢占式调度来实现确定性响应,并提供模拟硬件环境的工具,以便在没有物理板的情况下测试固件。
Provides priority-based preemptive scheduling to ensure deterministic real-time responses.
This project is an educational operating system kernel designed to demonstrate the fundamental architectural principles of memory paging and process management. It is implemented as a minimal kernel that serves as a practical reference for building a functioning system from the ground up. The implementation features a preemptive multitasking kernel that switches execution contexts between threads to share a single CPU. It includes an x86 virtual memory manager that uses paging to map virtual addresses to physical memory and isolate processes. The system covers low-level hardware interfacing
Implements CPU execution state swapping to enable preemptive multitasking across multiple threads.
Kaneo is an open-source project management platform built around a kanban board interface for organizing tasks into columns with drag-and-drop status management. It functions as a self-hosted task manager that supports multiple workspaces, organizations, and role-based access control, with all persistent data stored in a PostgreSQL relational database and exposed through a RESTful JSON API. The platform distinguishes itself through deep external integration capabilities, connecting project workflows to GitHub, Gitea, Slack, Discord, and Telegram with automated event-driven actions. A webhook
Enables updating the urgency level of a task to manage development workflow.
Libredesk is an omnichannel support management system designed to unify live chat and email communications into a single dashboard. It provides a comprehensive environment for managing customer interactions, agent roles, and team assignments to organize support workloads. The project distinguishes itself through AI customer support automation, which includes generating automated responses and refining message tones. It also supports the development and integration of custom chat widgets using WebSockets and JavaScript APIs. The system covers a broad set of capabilities, including customer re
Allows adjusting the importance level of customer conversations via API to prioritize response queues.