Jump to content

RT-Thread

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Popolon (talk | contribs) at 12:36, 9 September 2020 (CPU architectures). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
RT-Thread
DeveloperBernard Xiong & RT-Thread Team
OS familyReal-time operating systems
Working stateCurrent
Source modelOpen source
Latest release4.0.2 / December 20, 2019; 5 years ago (2019-12-20)
Repository
Marketing targetEmbedded devices
PlatformsARM (ARM7, ARM9, Cortex-M3, Cortex-R4, Cortex-M4, Cortex-A), AVR32, x86, M16C, NIOS, MIPS
Kernel typeSingle Kernel
LicenseApache 2.0
Official websitewww.rt-thread.org

RT-Thread[1][2] is an open source real-time operating system for embedded devices. It is distributed under the Apache 2.0+ licence. RT-Thread is developed by the RT-Thread Development Team based in China, after ten 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 panguage);
  • 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 expressions;
  • Access system core functions directly via the command line
  • Access system global variables directly via the command line
  • Command history records and automatic completion 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]

AVR32

  • UC3

Blackfin

  • bf53x

IA32(X86)

M16C

  • m16c62p

MIPS

NIOS

PowerPC

  • ppc405

RX

RISC-V

unicore32

  • sep6200

NEC V850

  • 70f34

Xilinx

  • MicroBlaze

See also

References

  1. ^ "RT-Thread 启动下一代RTOS演化".
  2. ^ "RT-Thread github".
  3. ^ "RT-Thread.org- Connected Community - ARM".
  4. ^ "GigaDevice unveils the GD32V series with RISC-V core, in a brand new 32-bit general purpose microcontroller". www.gigadevice.com. Retrieved 2019-08-29.