| 摘要 | 第5-6页 |
| ABSTRACT | 第6-7页 |
| 第一章 绪论 | 第13-19页 |
| 1.1 研究背景 | 第13-14页 |
| 1.2 国内外研究现状 | 第14-16页 |
| 1.3 本文研究内容 | 第16-17页 |
| 1.4 本文组织结构 | 第17-19页 |
| 第二章 相关研究 | 第19-29页 |
| 2.1 X86平台时钟设备 | 第19-20页 |
| 2.1.1 实时时钟 | 第19页 |
| 2.1.2 时间戳计数器 | 第19-20页 |
| 2.1.3 可编程间隔定时器 | 第20页 |
| 2.1.4 本地APIC定时器 | 第20页 |
| 2.2 LINUX内核态定时器 | 第20-26页 |
| 2.2.1 经典定时器 | 第20-23页 |
| 2.2.2 高精度定时器 | 第23-26页 |
| 2.3 LINUX用户态定时器 | 第26-27页 |
| 2.3.1 setitimer | 第26页 |
| 2.3.2 posix-timer | 第26-27页 |
| 2.3.3 传统用户态定时器的缺陷 | 第27页 |
| 2.4 本章小结 | 第27-29页 |
| 第三章 新型用户态定时器系统的设计 | 第29-41页 |
| 3.1 系统总体设计 | 第29-32页 |
| 3.2 工作原理 | 第32-37页 |
| 3.2.1 刻度轮 | 第32-34页 |
| 3.2.2 定时器池 | 第34页 |
| 3.2.3 定时器到期机制 | 第34-35页 |
| 3.2.4 共享内存设计 | 第35-37页 |
| 3.3 接口功能设计 | 第37-39页 |
| 3.3.1 初始化 | 第37页 |
| 3.3.2 定时器操作 | 第37-38页 |
| 3.3.3 退出系统 | 第38页 |
| 3.3.4 定时器状态 | 第38-39页 |
| 3.4 与其他定时机制比较 | 第39-40页 |
| 3.5 本章小结 | 第40-41页 |
| 第四章 多核X86平台下新型用户态定时器系统的实现 | 第41-57页 |
| 4.1 定时器系统启动 | 第41-46页 |
| 4.1.1 相关数据结构 | 第41-46页 |
| 4.1.2 启动过程 | 第46页 |
| 4.2 注册定时器系统 | 第46-50页 |
| 4.2.1 相关数据结构 | 第46-49页 |
| 4.2.2 注册过程 | 第49-50页 |
| 4.3 使用定时器系统 | 第50-53页 |
| 4.3.1 相关数据结构 | 第50-51页 |
| 4.3.2 相关操作 | 第51-53页 |
| 4.4 注销定时器系统 | 第53页 |
| 4.5 实验测试 | 第53-55页 |
| 4.5.1 实验环境 | 第53页 |
| 4.5.2 实验方法 | 第53-54页 |
| 4.5.3 实验结果 | 第54-55页 |
| 4.6 本章小结 | 第55-57页 |
| 第五章 多核ARM平台下新型用户态定时器系统的移植 | 第57-65页 |
| 5.1 ARM平台时钟源 | 第57-59页 |
| 5.1.1 Local timer | 第57-58页 |
| 5.1.2 Watch dog | 第58页 |
| 5.1.3 Global timer | 第58-59页 |
| 5.1.4 ARM平台时钟源比较 | 第59页 |
| 5.2 相关操作的优化及数据结构的改变 | 第59-62页 |
| 5.2.1 数据结构的改变 | 第59-60页 |
| 5.2.2 刻度轮驱动 | 第60-61页 |
| 5.2.3 tick跳变检测 | 第61-62页 |
| 5.3 实验测试 | 第62-64页 |
| 5.3.1 实验环境 | 第62页 |
| 5.3.2 实验方法 | 第62页 |
| 5.3.3 实验结果 | 第62-64页 |
| 5.4 本章小结 | 第64-65页 |
| 第六章 总结和展望 | 第65-69页 |
| 6.1 本文工作总结 | 第65页 |
| 6.2 本文主要工作 | 第65-66页 |
| 6.3 进一步工作计划和展望 | 第66-69页 |
| 参考文献 | 第69-73页 |
| 致谢 | 第73-75页 |
| 在读期间发表的学术论文与取得的研究成果 | 第75页 |