shivency

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年6月14日

摘要: 额外的,在网上收录的段子,会不断补充:1、看到一段很有意思的话,来自Eagle的BLOG……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………前一篇中,讲述了在ucos2中定义了一些用于任务管理的变量: *OSTCBCur,*OSTCBFreeList,*OSTCBHighRdy,*OSTCBList,*OSTCBPrioTbl[],OSTCBTbl[]. 如果你足够细心的话可以注意到,在这些变量中唯独OSTCBTbl不是指针,而是一个纯粹的数组.也就是 阅读全文
posted @ 2013-06-14 20:13 shivency 阅读(567) 评论(0) 推荐(0) 编辑

摘要: 今天涂涂画画的时候发现我没有把一些重要的数据结构先做个说明,挺伤的。等这章写完后一定补上。好了,还是先上流程图。嗯,可以看到OSInit()里调用了很多函数,这里只分析打绿色背景的函数;至于其他的,像 OS_InitEventList(), OS_FlagInit(), OS_MemInit(), OS_QInit(),会在相关章节进行讨论。首先,我们看OSInit( )在哪里出现。 1 #include "includes.h" 2 3 OS_STK AppStartTaskStk[APP_OS_CFG_START_TASK_STK_SIZE]; 4 5 static v 阅读全文
posted @ 2013-06-14 19:47 shivency 阅读(611) 评论(0) 推荐(0) 编辑

摘要: (一)既然这的一章是讲关于任务管理,那便需要一些“ID CARD”来识别不同的任务;用术语来说,便是任务控制块,是一种struct,名为OS_TCB。这里引用 engineer一篇博客里的比喻: “任务控制块相当于一个任务的身份证,系统就是通过任务控制块来感知管理任务,没有任务控制块的任务不能被系统承认和管理。ucos把所有任务控制块链接为两条链表,并通过他们管理各个任务”(二)思维导图ps:1、⑥、⑦、⑧中定义类型有两种,INT8U和INT16U;2、在参考书上,任务堆栈,本是有这么一个定义:OS_STK TaskStk[OS_MAX_TASKS][TASK_STK_SIZE]但我的工程里找 阅读全文
posted @ 2013-06-14 18:59 shivency 阅读(737) 评论(0) 推荐(0) 编辑