yahiafarghaly / Prettyos
Licence: mit
A Preemptive Hard Real Time kernel for embedded devices.
Stars: ✭ 36
Programming Languages
c
50402 projects - #5 most used programming language
Projects that are alternatives of or similar to Prettyos
Uc Os2
µC/OS-II is a preemptive, highly portable, and scalable real-time kernels. Designed for ease of use on a huge number of CPU architectures.
Stars: ✭ 120 (+233.33%)
Mutual labels: real-time, kernel, os, rtos
rnk
rnk is a RTOS targeting ARM architecture.
Stars: ✭ 22 (-38.89%)
Mutual labels: arm, real-time, kernel, rtos
Rt Thread
RT-Thread is an open source IoT operating system.
Stars: ✭ 6,466 (+17861.11%)
Mutual labels: arm, embedded-systems, kernel, rtos
Uc Os3
µC/OS-III is a preemptive, highly portable, and scalable real-time kernel. Designed for ease of use on a huge number of CPU architectures.
Stars: ✭ 284 (+688.89%)
Mutual labels: real-time, kernel, os, rtos
ez-rtos
A micro real-time operating system supporting task switching, delay function, memory allocator and critical section. It is writen on ARM Cortex-M3 assemble language, it runs successfully on STM32F103 MCU.
Stars: ✭ 57 (+58.33%)
Mutual labels: arm, os, operating-systems
Traceshark
This is a tool for Linux kernel ftrace and perf events visualization
Stars: ✭ 63 (+75%)
Mutual labels: scheduling, real-time, kernel
r3
R3-OS — Experimental static (μITRON-esque) RTOS for deeply embedded systems, testing the limit of Rust's const eval and generics
Stars: ✭ 87 (+141.67%)
Mutual labels: kernel, embedded-systems, rtos
GENADEV OS
An AArch64 hobbyist OS for the Raspberry Pi 3 B+
Stars: ✭ 14 (-61.11%)
Mutual labels: arm, kernel, os
phoenix-rtos-kernel
Phoenix-RTOS microkernel repository
Stars: ✭ 77 (+113.89%)
Mutual labels: real-time, kernel, rtos
Talks
schedule and materials about my presentations
Stars: ✭ 245 (+580.56%)
Mutual labels: arm, kernel, rtos
Frosted
Frosted: Free POSIX OS for tiny embedded devices
Stars: ✭ 194 (+438.89%)
Mutual labels: arm, kernel, os
DemOS
Free, simple, extremely lightweight, stackless, cooperative, co-routine system (OS) for microcontrollers
Stars: ✭ 18 (-50%)
Mutual labels: arm, os, rtos
Qpcpp
QP/C++ real-time embedded framework/RTOS for embedded systems based on active objects (actors) and hierarchical state machines
Stars: ✭ 124 (+244.44%)
Mutual labels: arm, embedded-systems, rtos
Drone Core
The core crate for Drone, an Embedded Operating System.
Stars: ✭ 263 (+630.56%)
Mutual labels: real-time, os, rtos
Pikort
A tiny Linux-like real-time kernel optimized for ARM Cortex-M chips
Stars: ✭ 268 (+644.44%)
Mutual labels: arm, kernel, rtos
Mylinux
myLinux is a small UNIX like OS for embedded systems based on Westermo NetBox
Stars: ✭ 53 (+47.22%)
Mutual labels: arm, embedded-systems, kernel
LudOS
A toy monolithic kernel written in C++
Stars: ✭ 38 (+5.56%)
Mutual labels: kernel, os, operating-systems
A Preemptive Hard Real time kernel for embedded devices.
☑ List of Supported Features
-
Static and Dynamic Priority Schedulers
-
Preemptive Scheduling using a static priority scheduling class.
- An RMS (Rate Monotonic Scheduling) can be effective for use.
- Number of tasks at each priority level is 1.
-
EDF (Earliest Deadline First)
- Limited Support for kernel services.
-
Preemptive Scheduling using a static priority scheduling class.
-
Configurable Number of Tasks.
-
Lock/Unlock Scheduler.
-
Support Memory Management .
- Using a basic memory manager for fixed-sized allocatable objects in a memory partition (i.e region).
-
For Static Priority Scheduling
- Runtime Priority Change.
- Suspend/Resume Tasks.
-
Mutex Support.
- Including OCPP ( Original Ceiling Priority Protocol ) to overcome priority inversion scenarios.
- Support Semaphores, Message Mailboxes and EventFlags .
-
Hooks APIs at Application and CPU port level.
-
Software based Tasks' stack overflow detection.
💻 Porting availability
System | BSP / CPU Port | Notes |
---|---|---|
TI Stellaris LM4F120 | ✔️ | |
Linux machine | ✔️ | Requires POSIX.1b standards as minimal |
To add another port, Please read this porting guide first.
🗃️ Include the RTOS
You include only a single header file pretty_os.h which contains the list of the public APIs with a proper description for each one.
📝 License
Copyright © 2020 - present, Yahia Farghaly Ashour.
This project is MIT Licensed.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].