|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | - | - |
| components/ | H | 25-Apr-2025 | - | 637,388 | 428,940 |
| documentation/ | H | 25-Apr-2025 | - | 2,858 | 1,739 |
| examples/ | H | 25-Apr-2025 | - | 10,913 | 7,565 |
| include/ | H | 25-Apr-2025 | - | 3,464 | 2,145 |
| libcpu/ | H | 25-Apr-2025 | - | 73,619 | 48,491 |
| src/ | H | 25-Apr-2025 | - | 11,730 | 6,636 |
| tools/ | H | 25-Apr-2025 | - | 90,174 | 71,750 |
| .gitattributes | H A D | 25-Apr-2025 | 459 | 43 | 40 |
| .gitignore | H A D | 25-Apr-2025 | 268 | 37 | 33 |
| .travis.yml | H A D | 25-Apr-2025 | 7 KiB | 109 | 83 |
| AUTHORS | H A D | 25-Apr-2025 | 571 | 46 | 35 |
| ChangeLog.md | H A D | 25-Apr-2025 | 61 KiB | 1,122 | 905 |
| Kconfig | H A D | 25-Apr-2025 | 100 | 4 | 3 |
| LICENSE | H A D | 25-Apr-2025 | 11.1 KiB | 202 | 169 |
| README.md | H A D | 25-Apr-2025 | 4.5 KiB | 89 | 56 |
| README_zh.md | H A D | 25-Apr-2025 | 5.8 KiB | 98 | 62 |
README.md
1# RT-Thread #
2
3[中文页](README_zh.md) |
4
5[](https://github.com/RT-Thread/rt-thread/blob/master/LICENSE)
6[](https://github.com/RT-Thread/rt-thread/releases)
7[](https://travis-ci.org/RT-Thread/rt-thread)
8[](https://gitter.im/RT-Thread/rt-thread?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
9[](https://github.com/RT-Thread/rt-thread/pulls)
10[](https://github.com/RT-Thread/rt-thread/pulls)
11
12RT-Thread is an open source IoT operating system from China, which has strong scalability: from a tiny kernel running on a tiny core, for example ARM Cortex-M0, or Cortex-M3/4/7, to a rich feature system running on MIPS32, ARM Cortex-A8, ARM Cortex-A9 DualCore etc.
13
14## Overview ##
15
16RT-Thread RTOS like a traditional real-time operating system. The kernel has real-time multi-task scheduling, semaphore, mutex, mail box, message queue, signal etc. However, it has three different things:
17
18* Device Driver;
19* Component;
20* Dyanmic Module
21
22The device driver is more like a driver framework, UART, IIC, SPI, SDIO, USB device/host, EMAC, MTD NAND etc. The developer can easily add low level driver and board configuration, then combined with the upper framework, he/she can use lots of features.
23
24The Component is a software concept upon RT-Thread kernel, for example a shell (finsh/msh shell), virtual file system (FAT, YAFFS, UFFS, ROM/RAM file system etc), TCP/IP protocol stack (lwIP), POSIX (thread) interface etc. One component must be a directory under RT-Thread/Components and one component can be descripted by a SConscript file (then be compiled and linked into the system).
25
26The Dyanmic Module, formerly named as User Applicaion (UA) is a dyanmic loaded module or library, it can be compiled standalone without Kernel. Each Dyanmic Module has its own object list to manage thread/semaphore/kernel object which was created or initialized inside this UA. More information about UA, please visit another [git repo](https://github.com/RT-Thread/rtthread-apps).
27
28## Board Support Package ##
29
30RT-Thread RTOS can support many architectures:
31
32* ARM Cortex-M0
33* ARM Cortex-M3/M4/7
34* ARM Cortex-R4
35* ARM Cortex-A8/A9
36* ARM920T/ARM926 etc
37* MIPS32
38* x86
39* Andes
40* C-Sky
41* RISC-V
42* PowerPC
43
44## License ##
45
46RT-Thread is Open Source software under the Apache License 2.0 since RT-Thread v3.1.1. License and copyright information can be found within the code.
47
48 /*
49 * Copyright (c) 2006-2018, RT-Thread Development Team
50 *
51 * SPDX-License-Identifier: Apache-2.0
52 */
53
54Since 9th of September 2018, PRs submitted by the community may be merged into the main line only after signing the Contributor License Agreement(CLA).
55
56NOTE:
57
58RT-Thread using the Apache license v2.0 is only launched after the release of v3.1.1, and is still in preparation right now.
59
60## Usage ##
61
62RT-Thread RTOS uses [scons](http://www.scons.org) as building system. Therefore, please install scons and Python 2.7 firstly.
63So far, the RT-Thread scons building system support the command line compile or generate some IDE's project. There are some option varaibles in the scons building script (rtconfig.py):
64
65* ```CROSS_TOOL``` the compiler which you want to use, gcc/keil/iar.
66* ```EXEC_PATH``` the path of compiler.
67
68In SConstruct file:
69
70```RTT_ROOT``` This variable is the root directory of RT-Thread RTOS. If you build the porting in the bsp directory, you can use the default setting. Also, you can set the root directory in ```RTT_ROOT``` environment variable and not modify SConstruct files.
71
72When you set these variables correctly, you can use command:
73
74 scons
75
76under BSP directory to simplely compile RT-Thread RTOS.
77
78If you want to generate the IDE's project file, you can use command:
79
80 scons --target=mdk/mdk4/mdk5/iar/cb -s
81
82to generate the project file.
83
84NOTE: RT-Thread scons building system will tailor the system according to your rtconfig.h configuration header file. For example, if you disable the lwIP in the rtconfig.h by commenting the ```#define RT_USING_LWIP```, the generated project file should have no lwIP related files.
85
86## Contribution ##
87
88Please refer the contributors in the github. Thank all of RT-Thread Developers.
89