1. 15 6月, 2022 1 次提交
  2. 29 4月, 2022 2 次提交
  3. 05 12月, 2021 1 次提交
  4. 29 11月, 2021 1 次提交
    • Z
      feat: 支持L1 低功耗框架 · 64e49aba
      zhushengle 提交于
      方案描述:
         和L0保持一致,上层通过proc文件系统操作:
         power_mode  支持的低功耗模式,通过对该文件进行write操作可以设置低功耗模式
         power_count powermanager模块通过对该文件操作,和内核进行交互,简要流程如下:
           while (1) {
             open  // 打开该文件
             read  // 使powermanager低功耗任务常阻塞,当系统无任何模块持锁时,会唤醒该任务
             write // 进行低功耗流程
             close // 关闭该文件
           }
         power_lock    write该文件,持锁
         power_unlock  writw该文件,释放锁
      
      Close #I4JSO
      
      Change-Id: I73fcdeeb5e2039484b3351a81b46a0892b349fe9
      Signed-off-by: Nzhushengle <zhushengle@huawei.com>
      64e49aba
  5. 27 11月, 2021 1 次提交
    • L
      feat: L0~L1 支持Lms · e748fdbe
      LiteOS2021 提交于
      1.【需求描述】:
         支持内核态和用户态堆内存非法访问检测,包括:越界访问、double free、释放后使用;支持libc常用高频函数内存检测;支持安全函数内存检测;读写检测可配可裁剪。
      2.【方案描述】:
         L0 ~ L1:
         (1).影子内存映射与标记
         (2).编译器使能-fsanitize=kernel-address 自动插桩检测点
         (3).实时校验影子内存的合法性;
         (4).错误访问打印回溯栈
      
      BREAKING CHANGE: 新增支持API:
      
      LOS_LmsCheckPoolAdd使能检测指定内存池
      LOS_LmsCheckPoolDel不检测指定内存池
      LOS_LmsAddrProtect为指定内存段上锁,不允许访问
      LOS_LmsAddrDisableProtect去能指定内存段的访问保护
      
      Close #I4HYAV
      Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
      Change-Id: Id8e5c890656da9edc4a22227e6a3c32205c024ce
      e748fdbe
  6. 28 9月, 2021 1 次提交
    • L
      feat: L0-L1 支持Perf · 6e0a3f10
      LiteOS2021 提交于
          1.【需求描述】:
               L0-L1 支持Perf,提供2种模式的配置, 及3大类型的事件配置:
               2种模式:计数模式(仅统计事件发生次数)、采样模式(收集上下文如任务ID、pc、backtrace等)。
               3种事件类型:CPU硬件事件(cycle、branch、icache、dcache等)、OS软件事件(task switch、mux pend、irq等)、高精度周期事件(cpu          clock)。
          2.【方案描述】:
               L0:
               基于事件采样原理,以性能事件为基础,当事件发生时,相应的事件计数器溢出发生中断,在中断处理函数中记录事件信息,包括当前的pc、当前运         行的任务ID以及调用栈等信息。
               L1:
               新增perf字符设备,位于“dev/perf”,通过对设备节点的read\ioctl,实现用户态perf
      
          BREAKING CHANGE:
          1.新增一系列perf的对外API,位于los_perf.h中.
          LOS_PerfInit配置采样数据缓冲区
          LOS_PerfStart开启Perf采样
          LOS_PerfStop停止Perf采样
          LOS_PerfConfig配置Perf采样事件
          LOS_PerfDataRead读取采样数据
          LOS_PerfNotifyHookReg 注册采样数据缓冲区的钩子函数
          LOS_PerfFlushHookReg 注册缓冲区刷cache的钩子
      
          2. 用户态新增perf命令
        【Usage】:
      ./perf [start] /[start id] Start perf.
      ./perf [stop] Stop perf.
      ./perf [read nBytes] Read nBytes raw data from perf buffer and print out.
      ./perf [list] List events to be used in -e.
      ./perf [stat] or [record] <option> <command>
               -e, event selector. use './perf list' to list available events.
               -p, event period.
               -o, perf data output filename.
               -t, taskId filter(whiltelist), if not set perf will sample all tasks.
               -s, type of data to sample defined in PerfSampleType los_perf.h.
               -P, processId filter(whiltelist), if not set perf will sample all processes.
               -d, whether to prescaler (once every 64 counts), which only take effect on cpu cycle hardware event.
      
          Close #I47I9A
      Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
      Change-Id: Ieb9b7483c85d1495df7c55bc0027f4309dff9814
      6e0a3f10
  7. 13 9月, 2021 1 次提交
  8. 09 9月, 2021 1 次提交
  9. 08 9月, 2021 1 次提交
    • A
      refactor: 内核目录结构整理 · 33d0c1bd
      arvinzzz 提交于
      1. 原kernel/common目录下属于内核拓展组件,统一移入kernel/extend管理
      2. Kconfig分层,各模块自己的配置放到自己目录下管理
      3. 原platform下不属于平台的公共代码抽到kernel/common下,只留板级链接脚本和一些编译脚本指向device目录下触发平台相关的编译
      4. 对外公共头文件统一抽到对外include路径
      5. 废弃宏,头文件清理
      
      close: #I48KI4
      Signed-off-by: Narvinzzz <zhaotianyu9@huawei.com>
      Change-Id: I0cf5ea81c92a8fa7b113da9cbdc8b7bc935f5aae
      33d0c1bd
  10. 01 9月, 2021 1 次提交
  11. 31 8月, 2021 2 次提交
    • L
      feat: L0-L1 支持Trace · dc9ec685
      LiteOS2021 提交于
              1.【需求描述】
                  L0~L1 支持Trace,提供两种工作模式:在线模式、离线缓存模式, 用于按时间线追踪系统事件,如任务切换、中断、ipc等。
              2.【方案描述】
                  L0:
                  (1).在内核模块预置静态代码桩
                  (2).触发桩后,收集系统上下文信息
                  (3).离线模式则写入内存,用户可通过dump导出;
                  (4).在线模式通过pipeline对接IDE进行可视化解析和展示;
                  L1:
                  新增trace字符设备,位于"/dev/trace",通过对设备节点的read\write\ioctl,实现用户态trace;
      
              BREAKING CHANGE:
              1.新增一系列trace的对外API,位于los_trace.h中.
              LOS_TRACE_EASY简易插桩
              LOS_TRACE标准插桩
              LOS_TraceInit配置Trace缓冲区的地址和大小
              LOS_TraceStart开启事件记录
              LOS_TraceStop停止事件记录
              LOS_TraceRecordDump输出Trace缓冲区数据
              LOS_TraceRecordGet获取Trace缓冲区的首地址
              LOS_TraceReset清除Trace缓冲区中的事件
              LOS_TraceEventMaskSet设置事件掩码,仅记录某些模块的事件
              LOS_TraceHwiFilterHookReg注册过滤特定中断号事件的钩子函数
      
              Close #I46WA0
      Signed-off-by: NLiteOS2021 <dinglu@huawei.com>
      
      Change-Id: I6a8e64794c4852f2c2980993a06180e09ec6ee0d
      dc9ec685
    • C
      chore: optimize build scripts and add lto config entry · 055295b6
      Caoruihong 提交于
      Signed-off-by: NCaoruihong <crh.cao@huawei.com>
      Change-Id: Ibf8df58696b7f1ccb3b5b21154c3b94dda1e8ad2
      055295b6
  12. 30 8月, 2021 1 次提交
  13. 25 8月, 2021 1 次提交
  14. 23 8月, 2021 1 次提交
  15. 22 8月, 2021 1 次提交
  16. 19 8月, 2021 1 次提交
  17. 17 8月, 2021 1 次提交
  18. 27 7月, 2021 1 次提交
  19. 21 7月, 2021 1 次提交
  20. 14 7月, 2021 2 次提交
    • Q
      feat: 给开发者提供系统信息导出Hidumper工具。 · cb17fa50
      qidechun 提交于
      给开发者提供系统信息DUMP机制,帮助开发者观察系统功能状态,发现潜在问题。
      
      Close #I3NN7D
      Signed-off-by: Nqidechun <qidechun@huawei.com>
      cb17fa50
    • Q
      feat: add blackbox for liteos_a · a195aac9
      qidechun 提交于
      1、在内核增加BlackBox核心框架,对外提供模块回调接口注册和故障处理接口。
      2、增加默认的系统模块适配层,处理通用内核态和用户态故障日志抓取和保存。
      3、BBOX特性默认关闭,若想使用此特性,请在内核配置文件中增加如下编译选项:
      LOSCFG_BLACKBOX=y
      LOSCFG_SAVE_EXCINFO=y
      LOSCFG_SAVE_EXCINFO可以帮助抓取更多的故障日志。
      4、若已经打开BBOX特性,想快速验证此特性,请添加如下编译选项:
      LOSCFG_HIDUMPER=y
      
      Close #I406NP
      Signed-off-by: Nqidechun <qidechun@huawei.com>
      a195aac9
  21. 08 7月, 2021 1 次提交
  22. 07 7月, 2021 2 次提交
  23. 06 7月, 2021 1 次提交
    • Q
      feat: add blackbox for liteos_a · 425975e4
      qidechun 提交于
      1、在内核增加BlackBox核心框架,对外提供模块回调接口注册和故障处理接口。
      2、增加默认的系统模块适配层,处理通用内核态和用户态故障日志抓取和保存。
      
      Close #I3NN7V
      Signed-off-by: Nqidechun <qidechun@huawei.com>
      425975e4
  24. 01 7月, 2021 1 次提交
  25. 24 6月, 2021 1 次提交
    • Z
      feat: L1支持低功耗投票框架 · 21d8ac87
      zhushengle 提交于
      功能描述:
        在proc目录下增加power目录,添加powr_mode,power_lock,power_unlock和power_count节点,
        power_mode:节点用于查询和设置系统支持的功耗模式
        power_lock:用于查询和获取低功耗锁,持锁后,将会阻止系统进入低功耗状态
        power_unlock: 用于释放已经持有的低功耗锁,也可查询当前有那些持有低功耗锁
        power_count:用于查询当前持有低功耗锁的个数
      
      Close #I3VS5N
      
      Change-Id: I2e2881cc968eab3c5fa6f9dbd7e8c5e448609407
      Signed-off-by: Nzhushengle <zhushengle@huawei.com>
      21d8ac87
  26. 22 6月, 2021 1 次提交
  27. 21 6月, 2021 1 次提交
  28. 19 6月, 2021 1 次提交
    • M
      fix: remove redundant headfile · 73a77777
      mucor 提交于
      1.remove redundant headfile in kernel, such as:
        compiler.h;debug.h;automount.h;inode.h;syslog.h;net.h;
      2.split fs.h to file.h and driver.h
      3.move vnode.h and path_cache.h to vfs/include
      4.remove redundant interface and defines
      
      close: #I3RTNR
      Signed-off-by: Nmucor <mucorwang@gmail.com>
      73a77777
  29. 11 6月, 2021 1 次提交
  30. 04 6月, 2021 1 次提交
    • C
      feat(file system): add memory-based romfs · c4595d25
      chenwei 提交于
      1, this RomFS's codebase is Nuttx romfs, then it is compatible with
      Linux RomFS and you can create such a file system using the tool genromfs.
      2, there are two major changes against with the original Nuttx romfs:
          1), it is memory-based: all contents of the fs are stored in the
              memory in the very first stage of "mount".
          2), this version of romfs is altered to be compatible with our new
              version of VFS to take advantage of vnode cache and path cache.
      
      close: #I3S0CP
      c4595d25
  31. 21 5月, 2021 2 次提交
    • S
      fix(build): 去除冗余单板相关的宏配置 · 471de366
      SimonLi 提交于
      编译工具链的选项不应该依赖单板的宏,否则每增加一块单板都需要去新增配置。
      
      NULL_ADDRESS_PROTECT这个宏配置没有地方使用,去掉冗余宏,内存是一一映射,可以
      访问0地址,且不会立马报错,需要这个功能,现在不是一一映射,而且访问空指针会
      立马报错,所以不存在这个问题。
      471de366
    • S
      fix(build): clang10.0.1支持lto,去掉冗余判断 · 73223ae7
      SimonLi 提交于
      73223ae7
  32. 14 5月, 2021 1 次提交
  33. 06 5月, 2021 1 次提交
  34. 28 4月, 2021 1 次提交
    • B
      feat: Add /dev/quickstart to support synchronous communication between... · 46b63f71
      boxi 提交于
      feat: Add /dev/quickstart to support synchronous communication between processes in user mode startup.
      
      Add /dev/quickstart to support synchronous communication between processes in user mode startup.
      Support ioctl cmd:
       QUICKSTART_LISTEN,QUICKSTART_STAGE1,QUICKSTART_STAGE2,QUICKSTART_STAGE3,QUICKSTART_UNREGISTER only for init process;
       QUICKSTART_NOTIFY for other app process.
      
      Close #I3OHO5
      
      Change-Id: If6a56123be93a5bc6b6d1069abda8d872b15fae1
      46b63f71
  35. 14 4月, 2021 1 次提交