From cf439885234e0955bab09834b3b876d627c81605 Mon Sep 17 00:00:00 2001 From: rtos_shang <614371500@qq.com> Date: Fri, 21 May 2021 11:33:24 +0800 Subject: [PATCH] fix: update arch_spec.md update arch_spec.md, add Chinese edition of arch_spec_zh.md and add link to readme files close https://gitee.com/openharmony/kernel_liteos_m/issues/I3QQ93 https://gitee.com/openharmony/kernel_liteos_m/issues/I3J7RS --- README.md | 8 ++++- README_zh.md | 8 ++++- arch_spec.md | 90 +++++++++++++++++++++++++++++++------------------ arch_spec_zh.md | 76 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 147 insertions(+), 35 deletions(-) create mode 100644 arch_spec_zh.md diff --git a/README.md b/README.md index a3d1d4ca..b024ee82 100644 --- a/README.md +++ b/README.md @@ -15,11 +15,17 @@ The OpenHarmony LiteOS Cortex-M is the kernel designed for the lightweight opera ## Directory Structure +The directory structure is listed as below, for the detailed directories, please refer to [arch_spec.md](https://gitee.com/openharmony/kernel_liteos_m/blob/master/arch_spec.md). + ``` /kernel/liteos_m ├── components # Optional components +│ ├── backtrace # backtrace support │ ├── cppsupport # C++ support -│ └── cpup # CPU possession (CPUP) +│ ├── cpup # CPU possession (CPUP) +│ ├── exchook # Exception hook +│ ├── fs # File system +│ └── net # Network support ├── kal # Kernel abstraction layer │ ├── cmsis # CMSIS-compliant API support │ └── posix # POSIX API support diff --git a/README_zh.md b/README_zh.md index 9e9e8489..f3db5440 100644 --- a/README_zh.md +++ b/README_zh.md @@ -15,11 +15,17 @@ OpenHarmony LiteOS-M内核是面向IoT领域构建的轻量级物联网操作系 ## 目录 +目录结构如下,详细目录请参考[arch_spec_zh.md](https://gitee.com/openharmony/kernel_liteos_m/blob/master/arch_spec_zh.md)。 + ``` /kernel/liteos_m ├── components # 可选组件 +│ ├── backtrace # 回溯栈支持 │ ├── cppsupport # C++支持 -│ └── cpup # CPUP功能 +│ ├── cpup # CPUP功能 +│ ├── exchook # 异常钩子 +│ ├── fs # 文件系统 +│ └── net # Network功能 ├── kal # 内核抽象层 │ ├── cmsis # cmsis标准接口支持 │ └── posix # posix标准接口支持 diff --git a/arch_spec.md b/arch_spec.md index 2ce739e4..e125e0bd 100644 --- a/arch_spec.md +++ b/arch_spec.md @@ -1,52 +1,76 @@ ``` . -├── components --- Optional components +├── components --- Components available for porting and header files exposed externally +│   ├── backtrace --- Backtrace │   ├── cppsupport --- C++ -│   └── cpup --- CPUP -├── kal --- Kernel Abstraction Layer -│   ├── cmsis --- cmsis +│   ├── cpup --- CPUP +│   ├── exchook --- Exception hook +│   ├── fs --- File System +│   └── net --- Network +├── kal --- Kernel Abstraction Layer, APIs exposed externally, including CMSIS APIs and part of POSIX APIs +│   ├── cmsis --- CMSIS │   └── posix --- posix -├── kernel --- Minimalistic kernel funtionalities -│   ├── arch --- Support for hardware architectures -│   │   ├── arm --- arm32 -│   │   │   └── cortex-m4 --- cortex-m4 -│   │   │   └── iar -│   │   │   ├── los_atomic.h -│   │   │   ├── los_context.h -│   │   │   ├── los_interrupt.h -│   │   │   └── los_mpu.h +├── kernel --- Code for defining the minimum kernel function set +│   ├── arch --- Code of the kernel instruction architecture layer +│   │   ├── arm --- ARM32 architecture +│   │   │   ├── cortex-m3 --- cortex-m3 architecture +│   │   │   │ └── keil --- Implementation of the Keil toolchain +│   │   │   ├── cortex-m33 --- cortex-m33 architecture +│   │   │   │ │── gcc --- Implementation of the GCC toolchain +│   │   │   │ └── iar --- Implementation of the IAR toolchain +│   │   │   └── cortex-m4 --- cortex-m4 architecture +│   │   │   │ │── gcc --- Implementation of the GCC toolchain +│   │   │   │ └── iar --- Implementation of the IAR toolchain +│   │   │   └── cortex-m7 --- cortex-m7 architecture +│   │   │   │ │── gcc --- Implementation of the GCC toolchain +│   │   │   │ └── iar --- Implementation of the IAR toolchain +│   │   ├── risc-v --- risc-v architecture +│   │   │ ├── nuclei --- nuclei architecture +│   │   │   │ └── gcc --- Implementation of the GCC toolchain +│   │   │ └── riscv32 --- riscv32 architecture +│   │   │   │ └── gcc --- Implementation of the GCC toolchain │   │   └── include -│   │   ├── los_arch_atomic.h --- Atomic operations -│   │   ├── los_arch_context.h --- Context switch │   │   ├── los_arch.h --- Initialization -│   │   └── los_arch_interrupt.h --- Interrupts +│   │   ├── los_atomic.h --- Atomic operations +│   │   ├── los_context.h --- Context switch +│   │   ├── los_interrupt.h --- Interrupts +│   │   ├── los_mpu.h --- Memory protection unit operations +│   │   └── los_timer.h --- Timer operations │   ├── include │   │   ├── los_config.h --- Configuration parameters │   │   ├── los_event.h --- Events management -│   │   ├── los_liteos.h --- Kernel types and functions +│   │   ├── los_membox.h --- Membox management │   │   ├── los_memory.h --- Heap memory management -│   │   ├── los_mutex.h --- Mutex +│   │   ├── los_mux.h --- Mutex │   │   ├── los_queue.h --- Queue -│   │   ├── los_scheduler.h --- Scheduler +│   │   ├── los_sched.h --- Scheduler │   │   ├── los_sem.h --- Semaphores +│   │   ├── los_sortlink.h --- Sort link +│   │   ├── los_swtmr.h --- Timer │   │   ├── los_task.h --- Tasks -│   │   └── los_timer.h --- Timer +│   │   └── los_tick.h --- Tick │   └── src ├── targets │   └── targets -│   └── cortex-m4_stm32f429ig_fire-challenger_iar -│   ├── board -│   ├── dprintf.c -│   ├── Libraries -│   ├── main.c -│   ├── project -│   ├── target_config.h --- Hardware target configuration -│   └── Utilities +│   └── riscv_nuclei_demo_soc_gcc +│ │ ├── GCC --- compilation config +│ │ ├── OS_CONFIG --- board config +│ │ ├── SoC --- SOC codes +│ │ └── Src --- application codes +│   └── riscv_nuclei_gd32vf103_soc_gcc +│   └── riscv_sifive_fe310_gcc └── utils - ├── include - │   ├── los_compiler.h --- Compiler configuration - │   ├── los_debug.h --- Debugging facilities - │   ├── los_error.h --- Errors codes and definitions - │   └── los_list.h + ├── internal + ├── BUILD.gn --- gn build config file + ├── los_compiler.h --- Compiler configuration + ├── los_debug.c --- Debugging facilities + ├── los_debug.h + ├── los_error.c --- Errors codes and definitions + ├── los_error.h + ├── los_hook.c --- Hook function facilities + ├── los_hook.h + ├── los_list.h --- Doubly linked list + └── los_reg.h --- Register macros └── src ``` + diff --git a/arch_spec_zh.md b/arch_spec_zh.md new file mode 100644 index 00000000..53922224 --- /dev/null +++ b/arch_spec_zh.md @@ -0,0 +1,76 @@ +``` +. +├── components --- 移植可选组件,依赖内核,单独对外提供头文件 +│   ├── backtrace --- 回溯栈支持 +│   ├── cppsupport --- C++支持 +│   ├── cpup --- CPUP功能 +│   ├── exchook --- 异常钩子 +│   ├── fs --- 文件系统 +│   └── net --- 网络功能 +├── kal --- 内核抽象层,提供内核对外接口,当前支持CMSIS接口和部分POSIX接口 +│   ├── cmsis --- CMSIS标准支持 +│   └── posix --- POSIX标准支持 +├── kernel --- 内核最小功能集代码 +│   ├── arch --- 内核指令架构层代码 +│   │   ├── arm --- arm32架构 +│   │   │   ├── cortex-m3 --- cortex-m3架构 +│   │   │   │ └── keil --- Keil编译工具链实现 +│   │   │   ├── cortex-m33 --- cortex-m33架构 +│   │   │   │ │── gcc --- GCC编译工具链实现 +│   │   │   │ └── iar --- IAR编译工具链实现 +│   │   │   └── cortex-m4 --- cortex-m4架构 +│   │   │   │ │── gcc --- GCC编译工具链实现 +│   │   │   │ └── iar --- IAR编译工具链实现 +│   │   │   └── cortex-m7 --- cortex-m7架构 +│   │   │   │ │── gcc --- GCC编译工具链实现 +│   │   │   │ └── iar --- IAR编译工具链实现 +│   │   ├── risc-v --- risc-v架构 +│   │   │ ├── nuclei --- nuclei架构 +│   │   │   │ └── gcc --- GCC编译工具链实现 +│   │   │ └── riscv32 --- riscv32架构 +│   │   │   │ └── gcc --- GCC编译工具链实现 +│   │   └── include +│   │   ├── los_arch.h --- 定义arch初始化 +│   │   ├── los_atomic.h --- 定义通用arch原子操作 +│   │   ├── los_context.h --- 定义通用arch上下文切换 +│   │   ├── los_interrupt.h --- 定义通用arch中断 +│   │   ├── los_mpu.h --- 定义通用arch内存保护 +│   │   └── los_timer.h --- 定义通用arch定时器 +│   ├── include +│   │   ├── los_config.h --- 功能开关和配置参数 +│   │   ├── los_event.h --- 事件 +│   │   ├── los_membox.h --- 静态内存管理 +│   │   ├── los_memory.h --- 动态内存管理 +│   │   ├── los_mux.h --- 互斥锁 +│   │   ├── los_queue.h --- 队列 +│   │   ├── los_sched.h --- 调度算法 +│   │   ├── los_sem.h --- 信号量 +│   │   ├── los_sortlink.h --- 排序链表 +│   │   ├── los_swtmr.h --- 定时器 +│   │   ├── los_task.h --- 任务 +│   │   └── los_tick.h --- Tick时钟 +   └── src +├── targets +│   └── targets +│   └── riscv_nuclei_demo_soc_gcc +│ │ ├── GCC --- 编译相关 +│ │ ├── OS_CONFIG --- 开发板配置功能开关和配置参数 +│ │ ├── SoC --- SOC相关代码 +│ │ └── Src ---application相关代码 +│   └── riscv_nuclei_gd32vf103_soc_gcc +│   └── riscv_sifive_fe310_gcc +└── utils + ├── internal + ├── BUILD.gn --- gn构建文件 + ├── los_compiler.h --- 编译工具配置,类型定义 + ├── los_debug.c --- debug,printf相关 + ├── los_debug.h + ├── los_error.c --- 错误处理 + ├── los_error.h + ├── los_hook.c --- 钩子函数注册和调用 + ├── los_hook.h + ├── los_list.h --- 双向链表 + └── los_reg.h --- 寄存器读写宏定义 + └── src +``` +