Skip to content

feat: task switch and collaborative scheduling

Gerrnperl Lu requested to merge feat/task-switch into main
  • 将应用程序加载移至 app_loader
  • 将用户程序栈和内核栈初始化及相关操作移至 app_loader
  • 分离 AppManager 为 AppLoader 和 TaskManager, 实现任务协作式调度
    • AppLoader 负责加载应用程序, 存放应用程序的信息
    • TaskManager 负责管理应用程序的运行调度
  • 将静态全局变量 APP_LOADER 和 TASK_MANAGER 移至各自模块
  • 实现应用程序任务上下文, 保存切换前的寄存器状态
  • sched_yield 系统调用

Merge request reports