RT-Thread
Developer | Bernard Xiong & RT-Thread Team |
---|---|
OS family | Real-time operating systems |
Working state | Current |
Source model | Open source |
Latest release | 1.1.1 / June 2013 |
Marketing target | Embedded devices |
Platforms | ARM (ARM7, ARM9, Cortex-M3, Cortex-R4, Cortex-M4), AVR32, x86, M16C, NIOS, MIPS |
Kernel type | Single Kernel |
License | GPLv2 |
Official website | www.rt-thread.org |
RT-Thread[1][2] is an open source real-time operating system for embedded devices. It is distributed under the GPLv2 licence. RT-Thread is developed by the RT-Thread Studio based in China, after five years' fully concentrated development. It is aimed to change the current situation in China that there is no well used open source real-time operating system in the microcontroller area.
RT-Thread kernel
- Object oriented real-time core (while remaining the elegant and flexible style of C Programming Language);
- 8, 32 or 256 priority scheduling multi-thread scheduling; Using the round-robin policy ensures that all threads having the same priority level will be scheduled equally;
- Synchronization of threads: semaphore and mutual exclusion semaphore (mutex) to prevent priority inversion;
- Complete and efficient support for communication between threads, including mailbox, message queues, event flag;
- Static memory management supports thread suspend/resume when it allocates/frees a memory block and thread-safe dynamic heap management;
- A device driver framework to provide standard interface to high level application;
FinSH shell
- Command line that accepts C-like expression;
- Access system core functions directly via command line like C Programming Language grammar;
- Access system global variables directly via command line like C Programming Language grammar;
- Command history records and automatic complete for the Command Prompt;
Device File System
- Virtual File System optimised for small device
- POSIX style API;
- Support the different implementation of file systems
- Wrapper for ELM Chan's FatFs filesystem.
TCP/IP protocol stack
LwIP is a lightweight TCP/IP protocol stack with the following capabilities.
- Standard BSD Socket interface.
- IP, ICMP, UDP, TCP supported.
- DNS, DHCP, PPP supported.
- TFTP, HTTP, FTP supported (refer to the netutil component).
RT-Thread/GUI
- Integrated with RT-Thread;
- Multi-Thread supported;
- Multi-Window supported;
- Rich Widgets such as: label, button, checkbox, radiobox, etc.
- Client/Server Architecture hai;
- Client: Workbench/View/Window Architecture;
- Chinese GB2312 display.
CPU architectures
The following CPU architectures are supported:
ARM[3]
- AT91SAM7S, AT91SAM7X
- AT91SAM926x
- FM3
- LM3S
- LPC1100, LPC122x, LPC17xx
- LPC214x, LPC24xx
- NUC1xx
- PK40X25
- S3C24x0
- S3C44B0
- SEP4020
- STM F1, F2, F4
- AM335X
- RM48X50
- AVR32UC3
IA32(X86)
M16C
MIPS
- JZ47xx
- LOONGSON
- LOONGSON 1B
NIOS
NEC
See also
References
External links
- RT-Thread Official Homepage(Chinese)
- RT-Thread Official Homepage(English)
- RT-Thread Documentation
- RT-Thread Source Code on code.google.com
This article is issued from Wikipedia - version of the Thursday, February 18, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.