1. 24 2月, 2022 1 次提交
  2. 22 2月, 2022 1 次提交
  3. 15 2月, 2022 1 次提交
  4. 12 2月, 2022 1 次提交
  5. 11 2月, 2022 1 次提交
  6. 24 1月, 2022 2 次提交
    • L
      feat: 支持select.h的FD_SETSIZE宏配置 · 05642f05
      likailong 提交于
      1. FD_SETSIZE由普通文件+网络文件的文件句柄个数之和决定。
      2. 以前vfs_config.h引入fatfs.h和lfs_api.h又会引入其他头文件,
      导致变异问题。因此需要将配置宏拆分出来放到fatfs_conf.h和
      lfs_conf.h 头文件中。
      3. lwipopts.h会提供网络的句柄个数,依赖FD_SETSIZE,而select.h会提供FD_SETSIZE,
      依赖网络句柄个数,因此会形成相互依赖的情况,需要通过顺序来解决。
      4. 网络中新增ntohl的定义。
      
      close: #I4RYK4
      Signed-off-by: Nlikailong <likailong@huawei.com>
      05642f05
    • H
      删除不必要的参数 · 8b586fb2
      houpengfei 提交于
      Signed-off-by: Nhoupengfei <houpengfei@talkweb.com.cn>
      8b586fb2
  7. 23 1月, 2022 1 次提交
  8. 20 1月, 2022 2 次提交
  9. 19 1月, 2022 2 次提交
    • H
      chore: liteos-m kernel 部件标准化 · 9314b2fe
      Hongjin Li 提交于
      1、添加liteos-m kernel的部件描述文件bundle.json
      2、依赖三方开源软件的编译脚本修改,取消直接include头文件,改为引用三方开源软件提供的公共配置。
      Signed-off-by: NHongjin Li <lihongjin1@huawei.com>
      Change-Id: I345c105a75c5cd87144c821fae123abf1f53e9f7
      9314b2fe
    • Y
      fix: 当前仓代码编译告警的问题 · 194ac589
      yinjiaming 提交于
      【背景】
      当前仓代码存在编译告警需要处理
      
      【修改方案】
      在测试用例中屏蔽了-Werror选项
      在对应的代码处添加了相应函数的声明头文件
      
      【影响】
      对现有的产品编译不会有影响。
      
      re #I4N50W
      Signed-off-by: Nyinjiaming <yinjiaming@huawei.com>
      Change-Id: I7dc1e38105aa3d60f9f991f34f88875cccb48463
      194ac589
  10. 18 1月, 2022 1 次提交
  11. 11 1月, 2022 1 次提交
  12. 10 1月, 2022 1 次提交
  13. 31 12月, 2021 2 次提交
    • Z
      fix: pm codex告警清零 · 96663805
      zhushengle 提交于
      Close #I4OWPE
      Signed-off-by: Nzhushengle <zhushengle@huawei.com>
      Change-Id: I07f6db919062090b917ce991198f769032365472
      96663805
    • Z
      feat: 内核提供tick timer框架,支持多架构多平台通用化 · f635450d
      zhushengle 提交于
      背景:
            当前Arch下tick timer的实现依赖于弱函数机制,三方适配时出错及限制较大,且tick
        timer作为内核必须模块,未模块化,当前散落在tick和调度等模块中,且当前存在arch依赖
        内核,内核也依赖arch的情况,为了解决上述问题,将tick timer模块化,通过提供tick
        timer框架实现内核依赖Arch而Arch不依赖内核,并且可以减少对外暴漏的接口,使得三方
        适配时更加明确需要实现的接口。
      
      方案描述:
      1.tick timer结构
        在kernel_liteos_m/arch/include/los_timer.h,中定义结构:
      
        typedef struct {
          UINT32        freq;
          INT32         irqNum;
          UINT32        (*init)(HWI_PROC_FUNC tickHandler);
          UINT64        (*getCycle)(UINT32 *period);
          VOID          (*reload)(UINT64 time);
          VOID          (*lock)(VOID);
          VOID          (*unlock)(VOID);
          HWI_PROC_FUNC tickHandler;
        } ArchTickTimer;
        并声明对外获取tick timer的接口:
      
        ArchTickTimer *ArchSysTickTimerGet(VOID)
        define LOS_SysTickTimerGet ArchSysTickTimerGet
      2.在每个架构下提供默认的tick timer操作:
      
        STATIC ArchTickTimer g_archTickTimer = {
          .freq = xxx, 必填
          .irqNum = xxx, 必填
          .init = xxx, 必填
          .getCycle = xxx, 必填
          .reload = xxx, 必填
          .lock = xxx, 必填
          .unlock = xxx, 必填
          .tickHandler = NULL, 可选
        }
        并实现:ArchTickTimer *ArchSysTickTimerGet(VOID) 接口
      3.内核los_tick.c中提供对外(其它模块)和公共的tick timer初始化操作函数,
        如果用户不想启用系统默认的tick timer,则需要在 "内核初始化之前" 调用接口:
        LOS_TickTimerRegister(const ArchTickTimer *timer, const HWI_PROC_FUNC tickHandler)
        将用户自己的tick timer或中断处理函数 注册进去。
        用户也可以注册自己的中断处理函数(用户不提供,默认使用系统提供的)。
      
      BREAKING CHANGE:
        原来版本中每个架构下提供的tick timer相关操作函数为弱函数:
          WEAK UINT32 HalTickStart(OS_TICK_HANDLER handler);
          WEAK VOID HalSysTickReload(UINT64 nextResponseTime);
          WEAK UINT64 HalGetTickCycle(UINT32 *period);
          WEAK VOID HalTickLock(VOID);
          WEAK VOID HalTickUnlock(VOID);
        用户如果需要启用自己的tick timer需要自己实现相关接口(强属性),在 "内核初始化之前" 通过调用:
        LOS_TickTimerRegister 接口替换系统默认提供的tick timer相关接口。
        无论用户提供的tick timer 还是系统默认提供的,均在内核初始化时启动。
      
      Close #I4N7XV:arch 重构
      Signed-off-by: Nzhushengle <zhushengle@huawei.com>
      Change-Id: I83ad0bdf303904f0e73f808b57b60183619fddcd
      f635450d
  14. 27 12月, 2021 1 次提交
  15. 25 12月, 2021 1 次提交
    • L
      feat: synchronizing arch api · 04bf3a68
      LiteOS2021 提交于
      命名规范:修改少量Arch接口,命名规范化调整:
      1.修改arch/include下接口声明,所有arch对外提供调用函数均以ArchXX命名
      2.提取多个架构均有实现的公共函数声明至arch/include对应头文件中以供外部调用,并修改命名格式为ArchXX
      3.修改OS_HWI_WITH_ARG为LOSCFG_PLATFORM_HWI_WITH_ARG并移至los_config.h中
      4.typedef VOID (*OS_TICK_HANDLER)(VOID);暂时移至arch/include/los_timer.h中
      5.实现atomic原子操作相关接口,位于arch/include/los_atomic.h,arm架构部分与汇编指令相关原子操作接口使用ARCH_ARM宏进行控制是否编译
      
      BREAKING CHANGE: 1.修改arch/include下接口,以ArchXX命名函数
      2.提取公共函数声明:ArchAtomicXchg32bits、ArchAtomicDecRet、ArchAtomicCmpXchg32bits
      3.新增部分原子操作c内联实现
      
      Close #I4N7XV
      Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
      04bf3a68
  16. 13 12月, 2021 1 次提交
    • K
      feat: 低内存资源回收low memory killer · ab886d84
      kenneth 提交于
      低内存资源回收特性,支持维护可杀低重要任务,当高内存任务申请不到足够内存时,临时释放低重要性的任务来释放内存来满足高内存任务正常运行;
      当高内存任务退出运行时,自动恢复被杀的低重要性任务。设计文档归档位置 https://gitee.com/rtos_yuan/lmk/tree/design/
      
      BREAKING CHANGE: 增加低内存资源回收注册相关接口LOS_LmkOpsNodeRegister、LOS_LmkOpsNodeUnregister和内存资源释放和任务恢复接口LOS_LmkTasksKill和LOS_LmkTasksRestore.
      
      close #I4ID0M
      Signed-off-by: Nkenneth <zhushangyuan@huawei.com>
      ab886d84
  17. 10 12月, 2021 1 次提交
  18. 09 12月, 2021 1 次提交
  19. 06 12月, 2021 2 次提交
  20. 04 12月, 2021 1 次提交
    • A
      feature: 支持newlib与musl切换 · 753d8601
      arvinzzz 提交于
      系统支持newlib,并且可以与musl-C自由切换
      
      1. 新增newlib支持,适配newlib的预留钩子,针对系统能力适配newlib头文件(补充宏定义,结构体定义,posix能力开关),
        采用标准C与自研posix接口声明与结构体定义混合作为C库
      2. 梳理kal的依赖关系,kal作为内核对外提供的标准接口,下属包含cmsis、libc、posix。
        cmsis为内核对cmsis接口的支持,libc为内核对三方C库的适配及使用,posix为内核自研提供的posix标准接口。
        若采用musl-C,则kal中选取libc/musl,posix共同作为C库对外支持;
        若采用newlib-C,则kal中选取libc/newlib,部分posix共同作为C库对外支持。
      3. fs整理,components/fs下提供基于posix标准的接口改为内部对外接口,供musl以及newlib切换 适配使用
      
      close: #I4ENQ1
      Signed-off-by: Narvinzzz <zhaotianyu9@huawei.com>
      Change-Id: I72eda5ac5499f72c67e800e22b0f39eb288f2b94
      753d8601
  21. 30 11月, 2021 1 次提交
  22. 29 11月, 2021 1 次提交
  23. 27 11月, 2021 1 次提交
    • L
      feat: 支持Lms · 7b838e8a
      LiteOS2021 提交于
      1.【需求描述】:
         支持内核态堆内存非法访问检测,包括:越界访问、double free、释放后使用;支持libc常用高频函数内存检测;支持安全函数内存检测;读写检测可配可裁剪。
      2.【方案描述】:
         (1).影子内存映射与标记
         (2).编译器使能-fsanitize=kernel-address 自动插桩检测点
         (3).实时校验影子内存的合法性;
         (4).错误访问打印回溯栈
      
      BREAKING CHANGE: 新增支持API:
      
      LOS_LmsCheckPoolAdd使能检测指定内存池
      LOS_LmsCheckPoolDel不检测指定内存池
      LOS_LmsAddrProtect为指定内存段上锁,不允许访问
      LOS_LmsAddrDisableProtect去能指定内存段的访问保护
      
      Close #I4HYBG
      Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
      Change-Id: Ia356a003088b9df37df667ea8ba91c80f5a41967
      7b838e8a
  24. 26 11月, 2021 1 次提交
  25. 25 11月, 2021 1 次提交
    • Z
      feat: 调度、任务及pm解耦 · cc8a7942
      zhushengle 提交于
          pm中冻结线程的操作,融合至OsSchedSuspend和OsSchedResume,
      使得调度模块提供对应完整的方法给任务模块,做到之间的相互解耦,
      方便其它调度算法的融入。
      
      Close #I4JTN6
      Signed-off-by: Nzhushengle <zhushengle@huawei.com>
      Change-Id: Ifde7077166a2fe67e7246fa68f777844640d67db
      cc8a7942
  26. 24 11月, 2021 1 次提交
  27. 23 11月, 2021 2 次提交
  28. 22 11月, 2021 4 次提交
  29. 15 11月, 2021 1 次提交
  30. 11 11月, 2021 2 次提交