| 摘要 | 第1-5页 |
| ABSTRACT | 第5-9页 |
| 第一章 绪论 | 第9-13页 |
| ·课题研究背景 | 第9-11页 |
| ·论文的主要工作 | 第11-12页 |
| ·论文的组织结构 | 第12-13页 |
| 第二章 SMP 系统及线程调度 | 第13-30页 |
| ·SMP 系统 | 第13-18页 |
| ·基于总线的SMP | 第13-15页 |
| ·基于交叉开关的SMP | 第15-17页 |
| ·基于多级交换网络的SMP | 第17-18页 |
| ·进程与线程 | 第18-23页 |
| ·进程概念及原理 | 第18-20页 |
| ·线程概念及原理 | 第20-23页 |
| ·进程调度及调度算法 | 第23-29页 |
| ·调度算法分类 | 第24-25页 |
| ·常用调度算法 | 第25-29页 |
| ·本章小结 | 第29-30页 |
| 第三章 LINUX 调度系统及CFS 剖析 | 第30-57页 |
| ·LINUX 内核调度器简史 | 第30-31页 |
| ·O(1)调度器概要 | 第31-32页 |
| ·完全公平调度器概要 | 第32-33页 |
| ·模块化的调度器接口 | 第32页 |
| ·CFS 调度器 | 第32-33页 |
| ·CFS 组调度 | 第33页 |
| ·CFS 实现核心 | 第33-34页 |
| ·红黑树介绍 | 第34-35页 |
| ·CFS 关键数据结构 | 第35-40页 |
| ·struct task_struct 的变化 | 第36页 |
| ·struct sched_entity 结构体 | 第36-37页 |
| ·struct sched_class 结构体 | 第37-38页 |
| ·struct cfs_rq 结构体 | 第38-39页 |
| ·struct task_group 结构体 | 第39-40页 |
| ·CFS 核心代码剖析 | 第40-46页 |
| ·scheduler_tick(…)函数 | 第40-41页 |
| ·task_tick_fair(…)函数 | 第41页 |
| ·entity_tick(…)函数 | 第41页 |
| ·update_curr(…)及__update_curr(…)相关函数 | 第41-43页 |
| ·check_preempt_tick(…)函数 | 第43-44页 |
| ·schedule(…)函数 | 第44-45页 |
| ·put_prev_task_fair(…)及相关函数 | 第45-46页 |
| ·pick_next_task_fair(…)及相关函数 | 第46页 |
| ·源代码分析总结 | 第46页 |
| ·CFS 组调度支持 | 第46-47页 |
| ·CFS 与SMP | 第47-56页 |
| ·调度域 | 第49-51页 |
| ·Linux SMP 系统调度层级结构 | 第51-52页 |
| ·CFS 之SMP 负载平衡 | 第52-56页 |
| ·本章小结 | 第56-57页 |
| 第四章 高性能SMP 调度系统研究 | 第57-73页 |
| ·SMP 调度基础 | 第57-61页 |
| ·同步机制 | 第57-58页 |
| ·局部性原理 | 第58-59页 |
| ·SMP 负载均衡策略 | 第59-60页 |
| ·调度策略 | 第60-61页 |
| ·高效SMP 调度系统分析 | 第61-65页 |
| ·较小粒度的锁 | 第61页 |
| ·独立的运行队列 | 第61-62页 |
| ·分级的负载平衡机制 | 第62-63页 |
| ·高效SMP 调度系统图例 | 第63-65页 |
| ·LINUX SMP 调度优化 | 第65-72页 |
| ·优化原理分析 | 第66-67页 |
| ·Futex 概要原理 | 第67-68页 |
| ·内核改动分析及实现 | 第68-70页 |
| ·简单验证及分析 | 第70-72页 |
| ·本章小结 | 第72-73页 |
| 第五章 总结与展望 | 第73-74页 |
| 致谢 | 第74-75页 |
| 参考文献 | 第75-78页 |
| 攻硕期间取得的研究成果 | 第78-79页 |