foreign operating system

2. Introduction to foreign operating systems
2.1.VxWorks
The VxWorks operating system is an embedded real-time system designed and developed by the American WindRiver Company in 1983. The operating system (RTOS) is a key component of the Tornado embedded development environment. Good sustainable development capabilities, high-performance kernel and user-friendly development environment have gradually occupied a place in the field of embedded real-time operating systems.
VxWorks has a tailorable microkernel structure; efficient task management; flexible inter-task communication; microsecond-level interrupt processing; supports POSIX 1003.1b real-time extension standard; supports a variety of physical media and Standard, complete TCP/IP network protocol, etc. However it is expensive. Since the operating system itself and the development environment are proprietary, the price is generally relatively high. It usually costs more than 100,000 yuan to build a usable development environment, and additional royalties are generally charged for each application. Generally, source code is not provided, only binary code. Since they are all dedicated operating systems and require specialized technical personnel to master development technology and maintenance, the cost of software development and maintenance is very high. A limited amount of supported hardware is available.

2.2.FreeRTOS
FreeRTOS is a mini real-time operating system kernel. As a lightweight operating system, its functions include: task management, time management, semaphores, message queues, memory management, recording functions, software timers, coroutines, etc., which can basically meet the needs of smaller systems.
Because this operating system is simple and easy to use, many manufacturers currently use this foreign system on lightweight CPUs.

2.3. Embedded Linux
Since the source code of embedded Linux is public, people can modify it arbitrarily to meet their own applications, and it is easy to check errors. To comply with the GPL, there is no need to pay a license fee for each application. There are a large number of software applications available. Most of them are GPL compliant and are open source and free. It can be applied to the user's own system with slight modifications. There are a large number of free and excellent development tools, and they all comply with the GPL and are open source. There is a huge community of developers. No specialized talent is required, as long as you understand Unix/Linux and C language. With the popularity of Linux in China, there are more and more such talents. Therefore, the development and maintenance costs of software are very low. Excellent network functions, which is especially important in the Internet era. Stability - This is a great advantage of Linux itself. The core is compact and requires few resources to run, making it very suitable for embedded applications.
A large number of supported hardware. There is no essential difference between embedded Linux and ordinary Linux. Almost all hardware used on PCs is supported by embedded Linux. Moreover, driver source codes for various hardware are available, which brings great convenience to users in writing their own proprietary hardware drivers in embedded systems. One disadvantage of running Linux on the system is that the Linux system needs to add real-time software modules to provide real-time performance. The kernel space in which these modules run is the part of the operating system that implements scheduling strategies, hardware interrupt exceptions, and program execution. Since these real-time software modules run in the kernel space, code errors may corrupt the operating system and affect the reliability of the entire system, which will be a very serious weakness for real-time applications.

2.4.UCOS-II
μC/OS-II is a well-known real-time kernel with open source code. It is specially designed for embedded applications and can be used for 8-bit and 16-bit and 32-bit microcontroller or digital signal processor (dsp). It has made major improvements and upgrades based on the original version of μC/OS, and has been used for nearly ten years. There are many examples of successful application of this real-time kernel. Its main features are as follows:
1) Open source code makes it easy to transplant the operating system to various hardware platforms;
The portability is absolutely Most of the source code is written in C language, which is easy to transplant to other microprocessors;
2) Curable;
3) Cuttable, with Select the required system services to reduce the storage space required;
4) Preemptive, a completely preemptive real-time kernel, that is, the one with the highest priority is always ready to run. Tasks;
5) Multi-tasking, can manage 64 tasks, the priorities of tasks must be different, and the time slice rotation scheduling method is not supported;
6) Determinability, the execution time of function calls and services is deterministic and does not depend on the number of tasks;
7) Practicality and reliability, examples of successful application of this real-time kernel are The best evidence of its usefulness and reliability.
Since μC/OS-II is only a real-time kernel, this means that unlike other real-time systems, it only provides users with some API function interfaces, and there is still a lot of work that requires users themselves. Go and finish.

2.5.RTX
RTX is an embedded real-time operating system from ARM. It is written using a standard C structure and compiled using the RealView compiler. It is not only a real-time kernel, but also has rich middle-layer components. It is not only free, but the code is also open.
Main functions: start and stop tasks (processes). In addition, it also supports process communication, such as task synchronization, management of shared resources (peripherals or memory), and message exchange between tasks. transfer. Developers can use basic functions to start the real-time runner, start and end tasks, and pass control between tasks (round robin scheduling). Developers can prioritize tasks.
Main features:
Support time slice, preemptive and cooperative scheduling. Unlimited number of tasks, each task has a priority of 254. Unlimited number of semaphores, mutex semaphores, message mailboxes and soft timers. Supports multi-threading and thread-safe operations. MDK configuration can be easily completed using the MDK dialog-based configuration wizard.

2.6.Nucleus
is a product developed by accelerated technology incorporated in the United States. It is one of the most popular embedded operating systems in the world. It is characterized by that about 95% of the code uses It is written in ANSI C, so it is very easy to transplant and can support most types of processors. It can also provide module support for network, graphical user interface, file system and so on.

2.7.QNX
is a commercial UNIX-like real-time operating system produced by Canadian QNX company that complies with POSIX standards. QNX is one of the most successful microkernel operating systems and has been widely used in the automotive field, such as the music and media control system of Porsche sports cars and the control system of the US Army's unmanned Crusher tank, as well as RIM's blackberry playbook tablet. It has a unique microkernel real-time platform, which is real-time, stable, reliable and runs extremely fast.
 

Guess you like

Origin blog.csdn.net/zhhk2005/article/details/134085195