ucos代码阅读(9)

会看main函数

OSInit();                              对全局变量的初始化,TCB EVent flag mem timer
OSTaskCreate(startup_task, (void *)0, &startup_task_stk[STARTUP_TASK_STK_SIZE - 1], STARTUP_TASK_PRIO); 注册任务
OSTaskCreate(task1,        (void *)0, &task1_stk[APP_TASK_1_STK_SIZE-1],            APP_TASK_1_PRIO);
OSTaskCreate(task2,        (void *)0, &task2_stk[APP_TASK_2_STK_SIZE-1],            APP_TASK_2_PRIO);
        OSStart(); 开启多个任务

这里就涉及到具体的任务管理和调度

进程由代码数据堆栈进程控制块构成 其中的堆栈是干什么的呢??

•任务上下文环境(context)
–包括了实时内核管理任务、以及处理器执行任务所需要的所有信息。
•任务优先级
•任务的状态等实时内核所需要的信息
•以及处理器的各种寄存器的内容(hardware context):程序计数器、堆栈指针、通用寄存器等的内容
–任务的上下文环境通过任务控制块(Task Control Block,TCB)来体现。

•任务拥有的资源情况是不断变化的,导致任务状态也表现出不断变化的特性。
•不同的实时内核实现方式对任务状态的定义不尽相同,但是都可以概括为三种基本的状态:
–等待(waiting):任务在等待某个事件的发生;
–就绪(ready): 任务等待获得处理器资源;
–执行(running):任务获得处理器资源,所包含的代码内容正在被执行。 

•在单处理器系统中:
–任何时候都只有一个任务在CPU中执行
•如果没有任何事情可做,就运行空闲任务执行空操作
–任何一个可以执行的任务都必须处于就绪状态
•调度程序从任务的就绪队列中选择下一个需要执行的任务。
•处于就绪状态的任务拥有除CPU以外的其他所有需要的资源。
–任务还可能处于等待状态
•如果任务在需要等待I/O设备或其他任务提供的数据,而数据又还没有到达该任务的情况下,就处于等待状态

等待是等待资源(不包括CPU)
就绪时因为当前的人物被高优先级的占掉了,故不能执行



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
uCos-II是一个轻量级的嵌入式操作系统。想要下载uCos-II的代码,首先需要确定下载的源,可以从官方网站或者其他可信的渠道获取最新版本的代码。通常,官方网站会提供源代码的下载链接。 在下载uCos-II代码之前,应该先了解一下软件包的目录结构和文件组织方式,以便更好地使用和理解代码。 下载uCos-II的代码可以通过以下步骤完成: 1. 打开浏览器,输入uCos-II的官方网站地址,如:www.ucos-ii.com。 2. 寻找并点击官方网站中的"Download"或类似的按钮,以进入下载页面。 3. 在下载页面中,查找uCos-II的源代码下载链接,并点击进入。 4. 根据个人需求和情况,选择合适的版本(可能有不同的平台和编译器版本可供选择),并点击下载。 5. 下载完成后,将代码解压缩到计算机的合适目录中。 6. 打开解压后的目录,可以看到代码的各个文件和子目录。 7. 可以使用集成开发环境(IDE)或者编译器来打开代码文件进行查看和编辑。 在下载之后,可以根据需要进行代码的修改、编译和移植等操作,以满足具体的嵌入式系统开发需求。 需要注意的是,在使用uCos-II的代码时,应该遵循相关的开发协议和授权要求,确保代码的合法使用。此外,也可以参考官方网站提供的文档和示例代码,以便更好地理解和使用uCos-II嵌入式操作系统。 总之,下载uCos-II的代码需要从可信的渠道获取,并根据个人需求选择合适的版本,下载后将代码解压缩到计算机中,然后可以使用适当的开发工具进行查看和编辑,以满足嵌入式系统开发的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值