BUPT-OS / RROS

RROS is a dual-kernel OS for satellites or other scenarios that need both real-time and general-purpose abilities. RROS = RTOS (Rust) + Linux (C).
https://bupt-os.github.io/website/
Other
567 stars 40 forks source link

Lack of SMP support in the kernel. #40

Closed JiajunDu closed 3 months ago

JiajunDu commented 4 months ago

Currently in the RROS kernel can only support running on a single CPU, all tasks are executed concurrently on a single CPU, and does not provide the function of executing multiple tasks in parallel on multiple CPUs.

However, in complex real-time application scenarios, multiple tasks are often triggered at the same time. Moreover, current computer hardware often has multiple CPU cores to provide better processing performance, such as the common SMP (Symmetric Multi-processing) architecture. If there is no corresponding SMP support in the kernel, there is no way to improve performance even with multiple CPUs. Therefore, it is necessary to provide SMP support for RROS.

In order to implement SMP support in RROS, kernel modifications are required, involving changes to the scheduling subsystem, clock subsystem, interrupt subsystem, and so on. Eventually, it will be possible to support parallel execution of multiple tasks in RROS.