From RT-Thread to FreeRTOS: Why I Decided to Start a New Learning Journey
Hello everyone!
Recently, many friends have asked me: “Haven’t you already learned RT-Thread? Why do you want to learn FreeRTOS?”
Today, I want to discuss this topic and also announce that I will be updating my FreeRTOS learning notes from time to time, hoping to progress together with everyone.
Having Learned RT-Thread, Why Learn FreeRTOS?
1. Completeness of the Technology Stack
In the embedded field, FreeRTOS and RT-Thread are like “twin stars”. RT-Thread is widely used in China, has an active community, and abundant Chinese resources, making it an excellent choice for getting started with RTOS.
However, FreeRTOS, as one of the most widely used RTOS globally, has a very high market share, especially after being acquired by AWS, with the launch of AWS FreeRTOS becoming an important choice in the IoT field.
Mastering both means your technology stack is more complete and your adaptability is stronger.
2. Different Design Philosophies
RT-Thread is a more “modern” operating system, providing rich components and a complete ecosystem, even including advanced features like file systems and network protocol stacks.
FreeRTOS, on the other hand, is more “pure” and “lightweight”, with a very streamlined kernel that only provides the core functionalities of scheduling, task management, and synchronization. This minimalist design allows it to perform excellently on resource-constrained MCUs.
Learning FreeRTOS will deepen your understanding of the essence of RTOS.
3. Employment and Project Requirements
Realistically, many foreign companies and international projects are using FreeRTOS. If you want to enter a broader job market or participate in international projects, FreeRTOS is almost a necessary skill.
Moreover, in actual work, you may encounter situations where you need to port code between the two systems. Only by learning both can you navigate these situations with ease.
4. Deepening Understanding of RTOS
The greatest gain from learning a second RTOS is not just “I have learned another system”, but through comparison, you will discover:
- • The different implementation methods of task scheduling
- • The various strategies for memory management
- • The different design ideas for synchronization and mutual exclusion mechanisms
- • The techniques for porting to different hardware platforms
This “cross-system” perspective will elevate your understanding of RTOS to a new level.
About the Upcoming Learning Notes
I plan to start with the basics of FreeRTOS, including but not limited to:
- • Task creation and management
- • Queues, semaphores, and mutexes
- • Software timers
- • Event groups and task notifications
- • Comparison of memory management schemes
- • Porting to common MCU platforms
- • Comparative analysis with RT-Thread
The notes will be updated periodically, and I will try to ensure:
- • ✅ Theory combined with practice
- • ✅ Clear and commented code
- • ✅ Common pitfalls reminders
- • ✅ Learning through comparison with RT-Thread
In Conclusion
Learning is a never-ending journey; every new skill mastered adds to your confidence.
RT-Thread has quickly introduced us to the world of RTOS, while FreeRTOS will take us further. The two are not in conflict; rather, they complement each other.
If you are also learning embedded systems or are interested in RTOS, feel free to follow my updates, and let’s progress together!
If you have any questions or suggestions, please feel free to leave a comment for discussion~
I am Yidian Yidian, focusing on embedded development, growing together with you.
Don’t forget to click “Looking” so you won’t miss any updates! 👇