linux代码导读-进程管理试编.ppt

xlanchen@2008.4.9 Linux内核源代码导读 Linux内核源代码导读 中国科学技术大学计算机系 陈香兰(0551-3606864) xlanchen@ /~xlanchen Spring 2009 进程(任务管理) 主要内容 进程描述符 进程切换 进程的创建和删除 进程的概念 进程是执行程序的一个实例 进程和程序的区别 几个进程可以并发的执行一个程序 一个进程可以顺序的执行几个程序 进程描述符 为了管理进程,内核必须对每个进程进行清晰的描述。 进程描述符提供了内核所需了解的进程信息 源码include/linux/sched.h定义 struct task_struct 数据结构很庞大 Linux2.6进程的状态 进程状态转换图 标识一个进程 使用进程描述符地址 进程和进程描述符之间有非常严格的一一对应关系,使得用32位进程描述符地址标识进程非常方便 使用PID (Process ID,PID) 每个进程的PID都存放在进程描述符的pid域中 进程和进程的内核堆栈 Linux为每个进程分配一个8KB大小的内存区域,用于存放该进程两个不同的数据结构: Thread_info 进程的内核堆栈 进程处于内核态时使用 不同于用户态堆栈 内核控制路径所用的堆栈 很少,因此对栈和描述符 来说,8KB足够了 Thread_union C语言允许用如下的一个union结构

文档评论(0)

1亿VIP精品文档

相关文档