其实,在uC/OS-II中,OSTCBTbl[]是两个链表的空间。一个是已建立的任务的TCB链表,另一个是空闲的TCB链表。这两个链表的元素的和,正好是系统的最大任务数和系统任务数之和,也就是OSTCBTbl的元素个数。两个链表的头指针分别为OSTCBList和OSTCBFreeList。在系统初始化之后,由于没有建立任务,因此OSTCBList指向NULL,而OSTCBFreeList指向OSTCBTbl[0]。
在建立新任务的时候,会初始化任务的TCB。这个新的TCB将插入OSTCBList链表的表头。