学位论文 > 优秀研究生学位论文题录展示

基于Linux多核进程调度的研究

作 者: 张修琪
导 师: 顾小丰
学 校: 电子科技大学
专 业: 计算机软件与理论
关键词: 多核 完全公平调度 对称多处理机 Linux进程调度
分类号: TP316.81
类 型: 硕士论文
年 份: 2012年
下 载: 155次
引 用: 0次
阅 读: 论文下载
 

内容摘要


在计算机技术飞快成长的今天,处理器多核技术也得到了丰富和发展,并在我们的身边影响着我们的日常生活。现在,计算机硬件的指标的日渐提升,计算机系统的复杂程度也水涨船高,所以操作系统必须努力做出及时的、有效的改善,以达到硬件资源利用率的最大化的目的,而调度系统作为操作系统中最为重要的子系统之一,它性能的表现面临着严峻的考验,选择什么样的算法,如何进行调度、在出现负载不平衡时,SMP调度系统如何做出调整,以及进行怎样的调整,才能使得软件与硬件相得益彰,这些都值得我们去深思,去探索。本文首先对课题的背景进行了研究,概述了进程并行操作的两项技术:同时多线程SMT(Simultaneous Multi-Threading)和片上多处理器CMP(Chip Multi-Processor),并对进程、线程和它们状态之间的转换进行了介绍,接着对常见的调度策略和调度算法的基本知识进行了学习,并研究了一些Linux内核中的普遍用到的数据结构和宏操作,方便进行下一步的研究工作。其次,以Linux2.6.36内核为研究对象,细致的分析了它目前所使用的调度机制,完全公平调度系统CFS和与多核相关的SMP调度系统,为了对调度系统有一个整体的认识,本文对内核中关于CFS的数据结构和重要函数进行了剖析,并对CFS的工作原理进行了研究,为下一步地研究做准备。再次,通过两条主线:Linux检查系统中负载情况的时机,和针对出现负载不平衡时做出调整的策略,本文对Linux kernel中SMP的实现进行了解析,并概括了SMP的工作流程,并根据SMP的分析对已有调度系统的模型进行了改进。最后,利用调度模型和对调度原理的分析,本文提出了一个针对SMP调度系统的基于唤醒信号的优化方案,以便于进一步的提升高速缓存的利用率。在原有的内核基础上,借助FUTEX锁机制,对优化方案进行了设计,对并Linux的相关源码进行了修改,对优化方案进行了实现,然后对使用了优化方案的内核系统和标准的内核系统分别进行了对比测试,并对结果进行了验证和分析。

全文目录


摘要  4-5
Abstract  5-9
第一章 绪论  9-13
  1.1 课题研究背景及意义  9-10
  1.2 国内外发展现状  10-11
  1.3 论文主要工作  11-12
  1.4 论文章节结构  12-13
第二章 调度系统理论基础  13-29
  2.1 SMT  13-15
  2.2 SMP  15-16
  2.3 进程调度  16-21
    2.3.1 基本概念  16-18
    2.3.2 调度策略  18-20
    2.3.3 调度算法  20-21
  2.4 Linux 内核链表  21-24
  2.5 current 进程剖析  24-26
  2.6 switch_to 宏剖析  26-28
  2.7 本章小结  28-29
第三章 CFS 调度系统剖析  29-43
  3.1 CFS 基础  29-32
    3.1.1 CFS 设计原理  30-31
    3.1.2 CFS 组调度  31
    3.1.3 红黑树简介  31-32
  3.2 进程在 CFS 中的表示  32-33
  3.3 CFS 模块化设计  33-34
  3.4 CFS 代码剖析  34-42
    3.4.1 更新与查看  34-38
    3.4.2 schedule()分析  38-40
    3.4.3 与 schedule()相关的函数分析  40-41
    3.4.4 概括 CFS 处理流程  41-42
  3.5 本章小结  42-43
第四章 SMP 调度研究  43-81
  4.1 SMP 调度基础  43-48
    4.1.1 调度域分析  43-46
    4.1.2 同步机制及每 CPU 变量  46-47
    4.1.3 局部性原理  47-48
  4.2 SMP 系统负载平衡剖析  48-57
    4.2.1 何时查看  48-52
    4.2.2 如何调整  52-55
    4.2.3 概括 SMP 调度流程  55-57
  4.3 SMP 调度模型改进  57-67
    4.3.1 Processor  57-58
    4.3.2 Task  58
    4.3.3 Migrate  58-60
    4.3.4 Strategy  60-62
    4.3.5 SMP 系统的几个重要环节  62-67
  4.4 基于唤醒信号的优化方案  67-80
    4.4.1 SMP 算法设计  68-69
    4.4.2 FUTEX 锁机制  69-70
    4.4.3 基于反馈的优化方案  70
    4.4.4 优化算法实施及流程  70-73
    4.4.5 核心代码修改与实现  73-77
    4.4.6 对比测试  77-78
    4.4.7 测试结果分析  78-80
  4.5 本章小结  80-81
第五章 总结与展望  81-83
致谢  83-84
参考文献  84-88

相似论文

  1. 多核系统下并行节点复制垃圾收集算法研究,TP332
  2. 基于多核网络处理器的IPv6联动IPS研究与设计,TP393.04
  3. 多核架构下LLC很少重用块的研究,TP332
  4. 遗传算法在多核系统上的性能分析和优化,TP18
  5. 面向众核温度感知的Linux调度器的研究与实现,TP316.81
  6. 多核处理器下三维片上存储结构研究,TP333
  7. 基于虚拟机的多核系统确定执行技术研究,TP332
  8. 基于SOPC的多核处理器互连技术的研究,TP332
  9. 多核模式下地震勘探并行计算研究,TP338.6
  10. 多核处理器核间通信技术研究,TP332
  11. 中长期发电机组检修优化求解及实用化研究,TM31
  12. 基于多核计算环境的并行PHYLIP的设计与实现,TP332
  13. 基于多核NPU的报文分类技术研究,TP393.08
  14. 多核平台IDS性能分析与报文分流方法研究,TP393.08
  15. 基于群智能和冲突规避策略的基因—基因交互作用检测及其并行计算,TP391.41
  16. 基于共享前端的流多核体系结构关键技术研究,TP332
  17. 多核集群环境下并行地理计算执行时间预测技术研究,TP338.6
  18. 基于广义组合多核高斯函数的图像分类方法研究,TP391.41
  19. 基于GALS的多核互连及任务调度策略研究,TN47
  20. 基于多核处理机的RSA并行算法的研究与实现,TP309.7
  21. 基于多核SMP集群环境的光线追踪模拟卫星成像并行研究与实现,TP391.41

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 操作系统 > 网络操作系统 > UNIX操作系统
© 2012 www.xueweilunwen.com