Five operating systems closely related to stm32
Author:amy Time:2021-06-08 09:29 Browse(266)
STM32 is closely related to the five operating systems, touch screen and OLED forum
TOP1: μ Clinux. H. H( f) `+ h! T$ K" [. d' G" o1 v% c/ E6 A7 Y' M3 f1 n6 H: ?$ j0 L. Aμ Clinux is an excellent version of embedded Linux, which literally refers to micro control Linux.

Five operating systems closely related to stm32

compared with standard Linux.
this paper introduces the development of Clinux μ The kernel of Clinux is very small, but it still inherits the main features of Linux operating system, including good stability and portability, powerful network functions, excellent file system support, rich standard API, TCP / IP network protocol, etc.
the kernel of Clinux is very small9 R: r+ o2 n$ V5 X) o( l5 S    s/ Q$ n0 J  ]+ U* ]" t5 {    O μ The interrupt management of Clinux operating system divides the interrupt processing into two parts: top half processing and bottom half processing.
in the top half processing, interrupt operation must be turned off, and only necessary, very few and fast processing must be carried out, and other processing must be handed over to the bottom half processing; The bottom half process performs those complex and time-consuming processes, and accepts interrupts.
because there are many bottom half processes with interrupts in the system.
this will cause the delay of system interrupt processing.
in the system, the bottom half process will not only execute those complex and time-consuming processes, but also accept interrupts7 _) q+ B* @& i: j% Z/ w: {- `7 a" K; v9 Z! K; d' Q7 m& X2 v" {* |7 zμ Clinux supports file system well.
due to μ Clinux inherits the perfect file system performance of Linux, and supports romfs, NFS, ext2, MS-DOS, JFFS and other file systems$ q! h& V6 E.
o! y( g2 t2 j8 @6 {+ [1 B   `+ Q. `* B. B6 J1 A. _" |" rμ Clinux is designed for MMU free processor, which is suitable for STM32F103 without MMU function. However, transplanting this system requires at least 512KB of RAM space and 1MB of ROM / flash space. STM32F103 has 256K of flash, which requires external memory, which increases the cost of hardware design.
this paper introduces the hardware design of Clinux+ {    I7 O.
L! V: }* V7 |+ _& ` 2 X- E" Q0 u+ L    x6 Y8 Q! Z% X# ~) fμ The structure of Clinux is complex, porting is relatively difficult, the kernel is also large, and its real-time performance is poor. If the embedded products focus on file system and network application, it is difficult μ Clinux is a good choice$ ~# Z) y. z' l2 R( O( Y8 m6 f* r   \  ?; fTOP2: μ C/OS-II9 K.
t4 Z1 R% ]" P1 M, y) d1 W0 S. j$ ? 6 u2 ]- ^* {1 Y* U' J' B9 e/ B: c! D* M( T μ C / OS-II is in the μ Based on C / OS, it is a small and preemptive multi task real-time kernel written in C language.
the kernel is a multi task real-time kernel μ C / OS-II can manage 64 tasks.
it also provides tasks scheduling and management, memory management, synchronization and communication between tasks, time management and interrupt service,It has the characteristics of high execution efficiency, small footprint, excellent real-time performance and strong scalability   {' U" E. w; | 1 C: s4 |* K% Y$ x: s8 y6 fFor the real-time performance μ C / OS-II kernel is designed and implemented for real-time system, so it only supports preemptive scheduling based on fixed priority; The scheduling method is simple and can meet the requirements of high real-time performance.
the scheduling method is simple and can meet the requirements of high real-time performance) g7 z4 D( ~/ A4 X    i$ l- I. D+ g: \- f3 \1 b" o    X6 P. @4 F: _. s0 [# o.
h μ C / OS-II interrupt processing is relatively simple.
only one interrupt service subroutine ISR can be hung on an interrupt vector.
moreover, user code must be completed in ISR.
the more things ISR needs to do.
the longer the interrupt delay is, and the maximum nesting depth that kernel can support is 255.
- E; q7 Q2 Y6 X# Q- r" f    I/ ^. F" j( _ 9 x- ?+ M' N$ h: ~: N3 W9 f) X    M9 g* Sμ C / OS-II is an embedded operating system kernel with simple structure, complete function and strong real-time performance.
for CPU without MMU function, it is very suitable.
it needs little kernel code space and data storage space.
it has good real-time performance, good scalability, and is open source. There are many materials and examples on the Internet, Therefore, it is very suitable for porting to STM32F103- \; j. p' j9 c+ @2 |" v1 a$ H.
E4 w, H% H2 G" _ 2 q, s" \. B9 T$ u2 [' YTOP3:eCos4 P. p- }    w& e% a' g5 J* P6 a3 ]1 {" V% E! H" {) c& B7 d0 F8 lECos is an embedded configurable operating system.
it is a real-time operating system with open source, configurable, portable, and deep embedded applications.
the most important feature is flexible configuration.
it adopts modular design, and the core part is composed of the same components, including the kernel, the core and the core Each component can provide a large number of configuration options (real-time kernel can also be used as an optional configuration).
the configuration tool provided by eCos can be used to configure easily, and eCos can meet different embedded application requirements through different configurations.
in this paper, the design of eCos is introduced1 R: K    n4 ?( w0 Z3 j2 u1 i5 y9 Y' @8 A! W. j' \" C9 K    r. The xecos operating system is very configurable.
users can add their own file systems.
the eCos operating system also supports most of the popular embedded CPUs.
the eCos operating system can be ported between 16 bit, 32-bit and 64 bit architectures.
because the core of eCos is very small.
the minimum code after clipping can be 10 KB, The minimum data RAM space required is 10 KB.
this paper introduces the design of the system9 X3 v' V; z+ @# a! G) w2 |& [7 C7 C* W1 G7 H    SIn the aspect of system transplantation, eCos operating system has good portability.
compared with eCos operating system, eCos operating system has better portability μ C / OS-II and μ Clinux is easy.
the# G5 G9 Z! \ 8 P" R% B6 b2 h# T   _ 8 F   }$ l' D0 D    T& D4 Y+ Z2 LECos is characterized by flexible configuration.
it supports the migration of CPU without MMU. It is open source and has good portability. It is also suitable for porting to the CPU of STM32 platform.
however, the application of eCos is not very extensive.
it has not been widely used μ C / OS-II is as common, and there is no information μ C / OS-II multi.
eCos is suitable for some commercial or industrial cost sensitive embedded systems.
for example, some applications in the field of consumer electronics. O+ T0 Y0 [$ _; | 0 G9 a6 G- S! b$ q* Q! @ 6 [3 t/ q.
V, l" ]0 tTOP4:FreeRTOS$ G    s/ ?   _ 6 a4 a* P0 S, S' b; i8 }3 J( F9 ]0 l& c5 C& N8 R$ c: t- t, ? Because RTOS needs to occupy a certain amount of system resources (especially ram resources), only μ A few real-time operating systems, such as C / OS-II, embos, salvo and FreeRTOS, can run on small ram microcontrollers.
the results show that the real-time operating system can run on small ram microcontrollersbe relative to μ C / OS-II, embos and other commercial operating systems.
FreeRTOS operating system is a completely free operating system, which has the characteristics of open source, portability, tailorability and flexible scheduling strategy. It can be easily transplanted to various single-chip computers to run, and its latest version is version 6.0.
(V2 L / V5 h'o. x (] + W)\As a lightweight operating system,
FreeRTOS provides the following functions: task management, time management, semaphore, message queue, memory management, recording, etc., which can basically meet the needs of smaller systems.
FreeRTOS kernel supports priority scheduling algorithm.
each task can be given a certain priority according to its importance, and the CPU always keeps it in ready state The task with the highest priority runs first.
the FreeRTOS kernel also supports rotation scheduling algorithm.
the system allows different tasks to use the same priority, and the tasks with the same priority share the CPU usage time when no higher priority task is ready.
compared with the common tasks μ C / OS-II operating system.
FreeRTOS operating system has both advantages and disadvantages.
on the one hand, it is reflected in the service functions of the system. For example, FreeRTOS only provides the implementation of message queue and semaphore, and can not send messages to message queue in the sequence of LIFO.
on the other hand,
FreeRTOS is only an operating system kernel, It needs to expand the GUI (graphical user interface), TCP / IP protocol stack, FS (file system) of the third party to realize a more complex system μ C / OS-II and μ C/GUI、 μ C/FS、 μ C / TCP-IP, etc.
are seamlessly integratedTop5: RT thread RT thread is an open source real-time operating system (license gplv2), which is mainly developed by China open source community.
real time thread operating system is not only a single real-time operating system kernel.
it is also a complete application system, including real-time and embedded system related components: TCP / IP protocol stack, file system, libc interface, etc, For more details of learning materials:' ?. W( ?$ R+ J; U: x.
Related topics