|
知识路径: > 嵌入式系统软件基础知识 > 嵌入式操作系统基础知识 > 处理器管理 > 分区、进程、线程、任务的概念 > 任务的实现 >
|
相关知识点:6个
|
|
|
|
任务控制块(Task Control Block,TCB)是操作系统中的重要概念,任务管理就是通过对各个任务的TCB的操作来实现的。
|
|
|
所谓TCB,就是在操作系统当中,用来描述和管理一个任务的数据结构。系统为每一个任务都维护了一个相应的TCB,用来保存该任务的各种相关信息。TCB的内容主要包括任务的管理信息、CPU上下文信息和资源管理信息。
|
|
|
(1)任务的管理信息。包括任务的标识ID、任务的状态、任务的优先级、任务的调度信息、任务的时间统计信息、各种队列指针等。
|
|
|
(2)CPU上下文信息。指CPU中各寄存器的当前值,包括通用寄存器、PC寄存器、程序状态字、栈指针等。前面所述进程中的逻辑寄存器就是TCB当中的相应字段,是一些内存变量。另外,在实际的嵌入式系统中,CPU上下文信息不一定直接存放在TCB当中,而是存放在任务的栈中,可以通过相应的栈指针来访问。
|
|
|
(3)资源管理信息。如果在操作系统中,任务表示的是进程,则还应包含一些资源管理方面的信息,如段表地址、页表地址等存储管理方面的信息;根目录、文件描述字等文件管理方面的信息。
|
|
|
在嵌入式操作系统中,可以用TCB来描述任务的基本情况以及它的运行变化过程,把TCB看成是任务存在的唯一标志。具体来说,当需要创建一个新任务的时候,就为它生成一个TCB,并初始化这个TCB的内容。当需要中止一个任务的时候,只要回收它的TCB即可。而对于任务的组织和管理,也可以通过对它们的TCB的组织和管理来实现。
|
|
|