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.