1``` 2. 3├── arch --- Code of the kernel instruction architecture layer 4│ ├── arm --- ARM32 architecture 5│ │ ├── arm9 --- ARM9 architecture 6│ │ │ └── gcc --- Implementation of the GCC toolchain 7│ │ ├── cortex-m3 --- Cortex-m3 architecture 8│ │ │ └── keil --- Implementation of the keil toolchain 9│ │ ├── cortex-m33 --- Cortex-m33 architecture 10│ │ │ │── gcc --- Implementation of the GCC toolchain 11│ │ │ │ │── NTZ --- Cortex-m33 Non-TrustZone architecture 12│ │ │ │ └── TZ --- Cortex-m33 TrustZone architecture 13│ │ │ └── iar --- Implementation of the IAR toolchain 14│ │ │ │── NTZ --- Cortex-m33 Non-TrustZone architecture 15│ │ │ └── TZ --- Cortex-m33 TrustZone architecture 16│ │ └── cortex-m4 --- Cortex-m4 architecture 17│ │ │ │── gcc --- Implementation of the GCC toolchain 18│ │ │ └── iar --- Implementation of the IAR toolchain 19│ │ └── cortex-m7 --- Cortex-m7 architecture 20│ │ │── gcc --- Implementation of the GCC toolchain 21│ │ └── iar --- Implementation of the IAR toolchain 22│ ├── csky --- csky architecture 23│ │ └── v2 --- csky v2 architecture 24│ │ └── gcc --- Implementation of the GCC toolchain 25│ ├── xtensa --- xtensa architecture 26│ │ └── lx6 --- xtensa lx6 architecture 27│ │ └── gcc --- Implementation of the GCC toolchain 28│ ├── risc-v --- Risc-v architecture 29│ │ ├── nuclei --- Nuclei architecture 30│ │ │ └── gcc --- Implementation of the GCC toolchain 31│ │ └── riscv32 --- Riscv32 architecture 32│ │ └── gcc --- Implementation of the GCC toolchain 33│ └── include 34│ ├── los_arch.h --- Arch initialization 35│ ├── los_atomic.h --- Atomic operations 36│ ├── los_context.h --- Context switch 37│ ├── los_interrupt.h --- Interrupts 38│ ├── los_mpu.h --- Memory protection unit operations 39│ └── los_timer.h --- Timer operations 40├── components --- Components available for porting and header files exposed externally 41│ ├── backtrace --- Backtrace support 42│ ├── cppsupport --- C++ support 43│ ├── cpup --- CPU percent (CPUP) 44│ ├── dynlink --- Dynamic loading and linking 45│ ├── exchook --- Exception hooks 46│ ├── fs --- File systems 47│ ├── lmk --- Low memory killer functions 48│ ├── lms --- Lite memory sanitizer functions 49│ ├── net --- Networking functions 50│ ├── power --- Power management 51│ ├── shell --- Shell function 52│ ├── fs --- File systems 53│ └── trace --- Trace tool 54├── drivers --- driver Kconfig 55├── kal --- Kernel Abstraction Layer, APIs exposed externally, including CMSIS APIs and part of POSIX APIs 56│ ├── cmsis --- CMSIS 57│ └── posix --- POSIX 58├── kernel --- Code for defining the minimum kernel function set 59│ ├── include 60│ │ ├── los_config.h --- Configuration parameters 61│ │ ├── los_event.h --- Events management 62│ │ ├── los_membox.h --- Membox management 63│ │ ├── los_memory.h --- Heap memory management 64│ │ ├── los_mux.h --- Mutex 65│ │ ├── los_queue.h --- Queue 66│ │ ├── los_sched.h --- Scheduler 67│ │ ├── los_sem.h --- Semaphores 68│ │ ├── los_sortlink.h --- Sort link 69│ │ ├── los_swtmr.h --- Timer 70│ │ ├── los_task.h --- Tasks 71│ │ └── los_tick.h --- Tick 72│ └── src 73├── targets 74│ └── targets 75│ └── riscv_nuclei_demo_soc_gcc 76│ │ ├── GCC --- Compilation config 77│ │ ├── OS_CONFIG --- Board config 78│ │ ├── SoC --- SOC codes 79│ │ └── Src --- Application codes 80│ └── riscv_nuclei_gd32vf103_soc_gcc 81│ └── riscv_sifive_fe310_gcc 82├── testsuites --- Kernel testsuites 83├── tools --- Kernel tools 84└── utils 85 ├── internal 86 ├── BUILD.gn --- Gn build config file 87 ├── los_compiler.h --- Compiler configuration 88 ├── los_debug.c --- Debugging facilities 89 ├── los_debug.h 90 ├── los_error.c --- Errors codes and definitions 91 ├── los_error.h 92 ├── los_hook.c --- Hook function facilities 93 ├── los_hook.h 94 ├── los_list.h --- Doubly linked list 95 └── los_reg.h --- Register macros 96 └── src 97``` 98 99