Advertisement

LiteOS的任务管理系统

阅读量:

LiteOS的任务定义了调度的基本单位。主要依据优先级采用抢占策略完成资源分配。支持生成任务创建(create)、删除(destroy)、启动(start)、暂停(suspend)、重置(reset)以及状态切换(switch)。任务间通过消息或事件进行交互,并提供互斥锁MUX或信号量semphore以实现同步。任务按优先级分类管理,并通过0至31的整数来表示其优先级等级。(其中0等级代表最高优先权)

系统的启动

从包含向量表的vendor.s文件__vector_table启动理解的过程中,首先执行MSP地址的初始化操作;随后调用Reset_Handler函数,在reset过程中跳转至__iar_program_start位置;接着进入主程序(main函数)执行;未找到关于__iar_program_start位置的具体说明?在main函数内部完成了内存管理与任务相关的工作初始化;随后启动系统核心任务并开始进程调度。

vendor软件仅在系统启动初期阶段运行,并且在初始化阶段配置OS_NVIC_VTOR寄存器以实现功能定位。

关于中断

在Cortex-M4处理器中定义了256个中断线,并支持多种优先级配置方案。其中IRQ设置为16至255的范围。这些中断线依次对应以下功能:MicroSP?或MicroShift Register Port( MSP)为空闲位;复位;不可

全部评论 (0)

还没有任何评论哟~