zhengxiaojun 5e5214b786 bsp/aarch64:Fix _CPU_SMP_Get_current_processor()
Fix _CPU_SMP_Get_current_processor(), since read from register MPIDR_EL1
(the least significant byte) is not always right,for example the least
significant byte of MPIDR_EL1 is always zero for cortex-a55.

aarch64 has a thread ID register TPIDR_EL1 available for for OS management
purposes. RTEMS stores per-CPU control in TPIDR_EL1 when the core startup,
so we can use _Per_CPU_Get_index() to get current processor index.

update #5064
2024-09-19 19:15:10 +08:00
2024-08-02 20:28:50 +00:00
2024-08-05 21:43:36 +00:00
2022-06-21 09:32:16 +02:00
2023-02-20 10:01:45 -06:00
2024-07-18 00:12:02 +00:00

Real-Time Executive for Multiprocessing Systems

RTEMS is a real-time executive (kernel) which provides a high performance environment for embedded applications with the following features:

  • Standards based user interfaces.
  • Multitasking capabilities.
  • Homogeneous and heterogeneous multiprocessor systems.
  • Event-driven, priority-based, preemptive scheduling.
  • Optional rate monotonic scheduling.
  • Intertask communication and synchronisation.
  • Priority inheritance.
  • Responsive interrupt management.
  • Dynamic memory allocation.
  • High level of user configurability.
  • Open source with a friendly user license.

Project git repositories are located at:

Online documentation is available at:

RTEMS Doxygen for CPUKit:

RTEMS POSIX 1003.1 Compliance Guide:

RTEMS Mailing Lists for general purpose use the users list and for developers use the devel list.

The version number for this software is indicated in the VERSION file.

Description
RTEMS is a ​real-time executive in use by embedded systems applications around the world and beyond
Readme 126 MiB
Languages
C 93.9%
Assembly 3.4%
Ada 1.4%
Python 0.3%
HTML 0.3%
Other 0.4%