Quarkts

An open-source OS for embedded applications that supports prioritized cooperative scheduling, time control, inter-task communications primitives, hierarchical state machines and CoRoutines.
Alternatives To Quarkts
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Unity3d Finite State Machine1,052
2 years ago6mitC#
An intuitive Unity3d finite state machine (FSM). Designed with an emphasis on usability, without sacrificing utility.
Unityhfsm519
22 days ago10mitC#
A simple yet powerful class based hierarchical finite state machine for Unity3D
Quarkts147
25 days ago1mitC
An open-source OS for embedded applications that supports prioritized cooperative scheduling, time control, inter-task communications primitives, hierarchical state machines and CoRoutines.
Swissarmylib141
4 years agomitC#
Collection of helpful utilities we use in our Unity projects.
Hal68
2 years ago1mitKotlin
🔴 A non-deterministic finite-state machine for Android & JVM that won't let you down
Lw_coroutine35
a year agootherC
纯C语言高性能的轻量级协程,比protothread更高效,仅一个bp.h文件。 Lightweight coroutine with high performance in pure C language, more efficient than protothread, only one bp.h file.
M2a01_musimpron30
5 years agoC
Small yet powerful state machine coroutine library
Demos18
2 months agomitMakefile
Free, simple, extremely lightweight, stackless, cooperative, co-routine system (OS) for microcontrollers
Async_coro10
9 years ago2C
Asynchronous IO + coroutine, a high performance solution for networking server. You can write code as synchronous model, rather than control state machine by yourself.
Unity_coroutines7
6 years agomitRust
Alternatives To Quarkts
Select To Compare


Alternative Project Comparisons
Readme

Built for C/C++ CI Static-Analisys documentation pages-build-deployment Codacy Badge CodeFactor DeepSource codebeat badge GitHub release (latest by date) MISRAC2012 CERT C Standard Maintenance License Join the chat at https://gitter.im/embedded-c/QuarkTS-OS Hits

Logo

QuarkTS : An open-source OS for small embedded applications.

  • Download the latest release here
  • Read the documentation online here

QuarkTS is an operating system that provides a modern environment to build stable and predictable event-driven multitasking embedded software. The OS is built on top of a cooperative quasi-static scheduler and its simplified kernel implements a specialized round-robin scheme using a linked-chain approach and an event-queue to provide true FIFO priority-scheduling.

Features:

  • Prioritized cooperative scheduling.
  • Time control (Timed tasks and software timers)
  • Inter-Task communication primitives, queues, notifications and event-flags.
  • State-Machines ( hierarchical support )
  • Co-routines.
  • AT Command Line Interface (CLI)

QuarkTS is developed using a formal and rigorous process framed in compliance with the MISRA C 2012 and CERT coding standard guidelines and complemented with multiple static-analysis checks targeted to safe critical applications.

Why cooperative?

Rather than having preemption, tasks manage their own life-cycle. This brings significant benefits, fewer re-entrance problems are encountered, because tasks cannot be interrupted arbitrarily by other tasks, but only at positions permitted by the programmer, so you mostly do not need to worry about pitfalls of the concurrent approach (resource-sharing, race-conditions, deadlocks, etc...).

What is it made for?

The design goal of QuarkTS is to achieve its stated functionality using a small, simple, and (most importantly) robust implementation to make it suitable on resource-constrained microcontrollers, where a full-preemptive RTOS is an overkill and their inclusion adds unnecessary complexity to the firmware development. In addition with a state-machines support, co-routines, time control and the inter-task communication primitives, QuarkTS provides a modern environment to build stable and predictable event-driven multitasking embedded software. Their modularity and reliability make this OS a great choice to develop efficiently a wide range of applications in low-cost devices, including automotive controls, monitoring and Internet of Things.

Why should I choose it?

QuarkTS is not intended to replace o compete with the other great and proven RTOS options already available today, for example FreeRTOS or MicroC/OS-II, in fact, you should check these options first. However, due to its size and features, is intended to play in the space between RTOSes and bare-metal. QuarkTS was written for embedded developers who want more functionality than what existing task schedulers offer, but want to avoid the space and complexity of a full RTOS, keeping the taste of a robust and safe one.

Support for C++ and Arduino

  • Check the C++ port : QuarkTS++ here
  • Also available for Arduino from the Library Manager
Popular Coroutine Projects
Popular State Machine Projects
Popular Control Flow Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
C
Operating System
Internet Of Things
Arm
Coroutine
Microcontroller
Avr
Stm32
State Machine
Embedded Systems
Event Driven
Multitasking