14014 views|112 replies

625

Posts

209

Resources
The OP
 

Prize-giving activity - the embedded operating system I know [Copy link]

 

Event time : From now until December 20, 2019

How to participate : Tell us what embedded operating systems you know, what you think about embedded systems, and what suggestions you have for embedded system programming. The format of the content is not limited.

Activity Notes :

  • Stick to one account per person, please do not participate in the competition with multiple aliases.
  • Encourage and protect originality. Entries must be original and first published on the EEWorld forum. After the event, you can forward and mark the source.
    Once multiple vests, plagiarism and other cheating behaviors are discovered, you will be disqualified from the event and your personal credit score will be affected.
  • Considering that some netizens are exposed to a wide range of embedded systems, you can post multiple times under the same account to participate in the event
  • If you have any questions, please contact the administrator @okhxyyo @高进. Welcome everyone to give suggestions and supervise the activities
  • EEWorld reserves the right of final interpretation of this activity

Awards :

  • First Prize: Logitech Wireless Keyboard and Mouse MK345 Kit × 1
  • Second Prize: Inflatable Pillow × 3
  • Third Prize: All participants can get 50 download points (with EE download points, you can download EE premium materials at the download center)
This post is from Embedded System
Add and join groups EEWorld service account EEWorld subscription account Automotive development circle

Latest reply

Linux and uCOS are very powerful, and it depends on the project. Simple projects can run on bare metal. The operating system can meet higher requirements.   Details Published on 2019-12-22 12:02

80

Posts

1

Resources
2
 

RT-Thread, which accounts for half of the domestic RTOS usage rate, has rich components and is open source and free

This post is from Embedded System
 
 

2865

Posts

4

Resources
3
 

The first one I came into contact with was the ucLinux embedded real-time operating system. The graphical interface and network of ucLinux are very stable. It is very good when only developing graphical interfaces and applications. The main features are stability and low cost. I have also used Android, which is similar to Linux. Both operating systems are more suitable for relatively large systems, such as the data acquisition instrument project I have done and a project similar to a medical monitor. The main feature is the development of applications similar to industrial computers. However, ucLinux recommends that general users use the BSP packages launched by major companies. Generally, do not easily develop or transplant Linux drivers by yourself. Because Linux drivers are more difficult to write than Windows drivers! The drivers will be very unstable.
At the beginning, I also used the Windows CE system and developed a teaching project. I didn’t have a deep understanding of it. It felt similar to PC development. It mainly used C# development, so it felt that it had nothing to do with traditional embedded systems. A little further away is Windows XP Embedded Edition! The main feature of this version is that it can cut system applications and use flash disks to run. It is even more like a PC.
The above are all large operating systems. The first real-time operating system I came into contact with was uC/OSⅡ. At that time, I started with the book "Embedded Real-time Operating System uCOS-II" translated by Teacher Shao Beibei. This book gives a very detailed introduction to embedded operating systems. I learned a lot of operating system knowledge through this book. At the same time, I also got to know the uC/OS system. I first learned uC/OS through a virtual machine. I remember that uC/OS seemed to be started through DOS. If I didn't pay attention, I would have thought that uC/OS was just a DOS task! Unfortunately, the virtual machine does not have rich peripherals and cannot reflect the characteristics and advantages of the real-time operating system. So I tried to debug the uC/OS example on the S3C44B0X development board. Although it was bumpy, I still persisted. Through uC/OS, I realized the benefits of real-time operating system programming. The subsequent learning was very smooth, and it can be said that one thing leads to another! However, the earliest real-time operating system used was a domestic operating system called "CoOS". Because this system is an open source and free system. At that time, there was also a special website to introduce and promote the system. There are a lot of Chinese materials on the website, and the introduction is very professional and detailed. I remember that Nuvoton also has a development tool equipped with this system. At least you can use a microcontroller with a Cortex M0 core. I have not used a Nuvoton Cortex M0 microcontroller, so I don't know how CoOS performs on the M0 core. I mainly used NXP's LPC1768 to port CoOS. This is a microcontroller with a Cortex M3 core. The performance is acceptable, but the price is a bit expensive. The CoOS system is about the same size as the uC/OS program. The functions are enough for me, and I have ported lwIP and ucGUI to this system. But unfortunately, this system was later acquired by an unknown company, and it is no longer open source. I only made one product with this system and no longer use it. Although many companies do not pay enough attention to copyright. Now I mainly use freeRTOS. The performance of the graphical interface is very good, and the performance of the network is very general. The main reason is that the speed and data volume are not good. It is easy to disconnect when the network is continuous, and it is easy to disconnect when the data volume is not large. That is to say, you can set the parameters on a web and transmit some collected data at a fixed time! For the freeRTOS system, I personally feel that it is still very good if the system is not complicated. For example, I used STM32F407 to make a network-connected product, which has been running for several years and has been relatively stable. Only the reconnection phenomenon occurs occasionally, and I still trust the performance of freeRTOS! In my experience, for more complex systems, such as a "digital acquisition instrument" system I developed, when there are applications such as real-time graphics display, network transmission, and file storage in a system, I feel that freeRTOS is still a bit struggling. It just runs. It may also be a problem with the performance of the microcontroller system or due to memory constraints. So I suggest that for more complex applications like this, a large operating system should be used. At present, embedded applications basically run under freeRTOS. To
summarize the systems I have used:
ucLinux, Linux, Android
windows ce, windows xp
ucOS, CoOS, freeRTOS.
Currently learning Huawei LiteOS

This post is from Embedded System
 
 
 

131

Posts

0

Resources
4
 

I first learned uCOS II. I remember that I was a student with no money at that time, so I bought a pirated book and started to learn. At that time, I used uCOS II with STM32 to make a PID-controlled motor speed control system. At that time, it was also to complete a course design of the teacher. I could display the speed curve on the display screen. I finally understood the overshoot in automatic control and the working principle of PID, and it also received praise from the teacher.

Later, I entered the Linux operating system. That was when I went to Beijing for an internship. The company I worked for at the time was a training organization. There was such a course. I had some time to study it, but I was not very proficient in it. Later, after the internship, I did not continue to stay in that company and returned to my hometown. However, I have always regarded Linux as my ultimate learning goal. Although the company I was in was still a small company where an 8-bit microcontroller could solve all problems, I still had to have some plans and dreams. Later, after I got a Raspberry Pi, I learned Python language on Linux. I felt that there was such a simple programming language. I developed a simple test program in two weeks. Raspberry Pi + Linux + Python is a good development kit, and it is a learning method that most people can accept.

Later, I came to a company that made medical devices, and I started using STM32 when I was making products for this company. However, UCOS had already released III, but this was commercial and required a fee. So I discovered that there was also a FreeRTOS. After studying it for two days, I found that it was quite simple, at least simpler than UCOS, and it was free. Then I used FreeRTOS to do two projects, and I felt that it was really good. Later, it was acquired by Amazon, and version 9.0 was released.

Later, the Sino-US trade war broke out, and the United States suppressed Chinese high-tech technology companies. At this time, I thought that I should support domestic products, including hardware and software. It was at this time that RT-Thread appeared in front of me. I had heard classmates recommend it before, but I always felt that domestic products were not very stable and I was unwilling to contact the new real-time operating system. In addition, EEWORLD held an event and I got a book about RT-Thread to learn. At the same time, RT-Thread held an offline learning event here. I took a train for hundreds of miles to the provincial capital to participate in the event, and later I got a set of development boards. These two things made me have a new understanding of RT-Thread, including the redesign of the product to the domestic real-time operating system. It turned out that there was also a similar Linux command line operation, which made debugging more convenient in the future. With so many software packages, you don’t have to write the code and drivers that others have done for you. You can save more time on product design, which greatly improves efficiency. I have almost learned it now, and I just happened to have a new project to do, so I am ready to try it.

Of course, I have also compared other domestic systems, such as Huawei's LiteOS and Tencent's TencentOS. But since I chose RT-Thread, I will learn and use it first, after all, I am old and my energy is limited. Of course, I hope that Huawei's Hongmeng OS can become bigger and stronger. This is my new expectation for domestic operating systems.

This post is from Embedded System
 
 
 

182

Posts

5

Resources
5
 

As a newbie, I look at what everyone else is using and prepare to learn some common and simple operating systems.

This post is from Embedded System

Comments

Originally, this activity was to prepare for the next activity, "Write your own operating system". Please pay more attention to this forum in the future, there will be big activities.  Details Published on 2019-11-21 17:29
 
 
 

625

Posts

209

Resources
6
 
DAXSX posted on 2019-11-21 17:16 I am a newbie. I am looking at what everyone is using and I am going to learn some common and simple operating systems.

Originally, this activity was to prepare for the next activity, "Write your own operating system."

Pay more attention to this page in the future, there will be big events.

This post is from Embedded System
Add and join groups EEWorld service account EEWorld subscription account Automotive development circle
 
 
 

41

Posts

0

Resources
7
 
Linux is widely used, and there are many Linux-based developments.
This post is from Embedded System
 
 
 

527

Posts

1

Resources
8
 

I have used FREERTOS as an embedded operating system and am planning to learn RT-THREAD. I am currently developing an embedded system based on Linux.

This post is from Embedded System
 
 
 

725

Posts

13

Resources
9
 

Embedded development is not like mobile Internet development (such as Android development, C# development, etc.) which is purely software development thinking. Instead, it involves learning the underlying hardware and taking into account the programming of the driver. The boring hardware circuit learning and complicated driver writing make it difficult to get started with embedded development. Under the current trend and policy of the Internet of Things, the connection between objects is getting closer and closer. In the future, embedded development is bound to occupy half of the IT industry, forming a trend of universal Internet of Things and universal embedded development. However, learning embedded development requires sufficient patience and perseverance, and you need to learn to draw inferences from one example and establish a solid knowledge foundation.

This post is from Embedded System
 
 
 

319

Posts

0

Resources
10
 

Embedded operating system (RTOS) operating system, I have heard of μClinux, μC/OS-II, eCos, FreeRTOS, mbed OS, RTX, Vxworks, QNX, NuttX, Jiangyan operating system (djyos), Alios Things, Huawei LiteOS, RT-Thread, SylixOS.

μC/OS-II is an embedded operating system kernel with simple structure, complete functions and strong real-time performance, but it is not free.

Thread already has the largest embedded open source community in China and is widely used in multiple industries such as energy, automotive, medical, consumer electronics, etc., with a cumulative installed base of more than 20 million units, making it the most mature, stable and largest installed base open source RTOS independently developed by Chinese people.

This post is from Embedded System
 
 
 

121

Posts

0

Resources
11
 

Look at the MCU model used. The ARM A series is mainly used in Linux embedded applications.

arm M series real-time system uCOS II/uCOS III Currently the more popular FreeRTOS

This post is from Embedded System
 
 
 

21

Posts

0

Resources
12
 

I have come into contact with ucOS, CoOS, and freeRTOS before, but I have never delved into them to produce anything practical.

I have been working on Zigbee-related hardware recently, and I have come across two embedded systems. One is TinyOS, which uses CC2420 as its chip. It is easy to use, easy to learn, and open source, but it has stopped updating. The other is the embedded system Contiki, which uses CC2650 as its chip. This system supports much more hardware than TinyOS. I used it to develop a system for monitoring the parameters and status of factory equipment in factories, and put it into actual use, with very good results.

After contact, I have the following pain points in using or learning embedded systems:

1. Most function comments are not detailed and are in English, which is not intuitive to understand;

2. The problem of downloader. Many systems need to be equipped with corresponding downloaders when burning boards. It is not a direct USB download, which feels very troublesome. When playing Tinyos and Contiki, this aspect is better supported. Direct USB burning, so that multiple batches of programs can be burned, which is very convenient for testing multi-node networking programs;

3. Each embedded system has its own features. Once the chip or system is changed, you have to learn and explore again. It is impossible to achieve driver plug-in or modular splicing;

Haha, this is just my personal opinion!

This post is from Embedded System
 
 
 

304

Posts

0

Resources
13
 

I have used several operating systems in product development, including winme and Linux, but I feel that it still depends on the needs.

This post is from Embedded System
 
 
 

1507

Posts

1

Resources
14
 

Because of my work, I have dealt with 32-bit microcontrollers, so I have a general idea of FreeRTOS and μC/OS-II. These two operating systems are often compared. μC/OS-II is an embedded operating system kernel with a simple structure, complete functions and strong real-time performance, while FreeRTOS is a completely free operating system. So each has its own strengths.

This post is from Embedded System
 
 
 

55

Posts

1

Resources
15
 

I have used freeRTOS and Linux in product development, and I feel that it still depends on the product positioning.

This post is from Embedded System
 
 
 

89

Posts

0

Resources
16
 

I have learned about μClinux, FreeRTOS, and RT-Thread on the Internet before. I use RT-Thread in my own products. I feel that domestic products are easier to use.

This post is from Embedded System
 
 
 

65

Posts

0

Resources
17
 
The embedded operating systems I have mainly used are WinCE, Linux, and Android
This post is from Embedded System
 
 
 

32

Posts

0

Resources
18
 

I used the Japanese uitron system when I was working on the Ambarella platform camera, and later I switched to the threadx system. Later, I became familiar with the freertos system when I played with STM32, and became familiar with ucos on the sunplus platform. Now I spend most of my time playing with the linux system.

This post is from Embedded System
 
 
 

21

Posts

0

Resources
19
 

I have been using FreeRTOS and uCOS before. Recently, due to work needs, I have come into contact with VxWorks, ucLinux and RT-Thread. I feel that RT-Thread is doing well, with a lot of information and routines, which are constantly being enriched, and easy to port. However, there are still some minor problems. I hope it will get better and better. Next, I plan to try Huawei's LiteOS. I hope that domestic embedded operating systems will become more and more perfect and the ecosystem will get better and better.

This post is from Embedded System
 
 
 

2

Posts

0

Resources
20
 

I am a beginner. I have been exposed to FreeRTOS, heard of uCOS and VxWorks.

This post is from Embedded System
 
 
 

Guess Your Favourite
Just looking around
Find a datasheet?

EEWorld Datasheet Technical Support

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号
快速回复 返回顶部 Return list