- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
武汉理工大学操作系统课程设计中国好学长系列之小灰灰的爸爸.doc
学 号:
课 程 设 计
课程名称 操作系统 学 院 计算机科学与技术学院 专 业 软件工程专业 班 级 中国好学长系列 姓 名 小灰灰的爸爸 指导教师 刘 军
2013——2014学年 第1学期
目录
课程设计任务书 1
摘要 2
1 设计题目与要求 2
1.1设计题目:内核定时器 2
1.2设计要求:通过研究内核的时间管理算法,学习内核源代码;然后应用这些知识并且使用“信号”建立一种用户空间机制来测量一个多线程程序的执行时间。 2
2 总的设计思想及系统平台、语言、工具 2
2.1 设计思想: 2
2.1.1 Linux内核对定时器的描述 2
2.1.2 Linux 内核定时器 4
2.1.3 Linux 信号signal处理机制 7
2.1.4多线程编程 8
2.1.5内核定时器机制的实现 10
2.2 系统平台: 13
2.3 编程工具: 13
3.数据结构与模块说明(功能与流程图) 13
3.1 定时器使用: 13
3.2 多线程程序: 14
3.3程序流程图: 15
4. 源程序: 15
5.运行结果与运行情况 16
6.调试记录: 17
7.自我评析和总结: 18
8.参考文献 18
评分表 19
课程设计任务书
学生姓名: 专业班级:
指导教师: 刘军 工作单位: 计算机科学与技术学院
题目: 内核定时器
初始条件:
操作系统:Linux
程序设计语言:C语言
3.有界缓冲区内设有20个储存单元,其初值为0,放入/取出的数据项按增序设定为1-20这20个整型数
要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1.技术要求:
通过研究内核的时间管理算法学习内核源代码。然后应用这些知识并且使用“信号”建立一种用户空间机制来测量一个多线程程序的执行时间。
实验条件要求:每人一台Linux主机且有超级用户权限。
2. 设计说明书内容要求:
1)设计题目与要求
2)总的设计思想及系统平台、语言、工具等
3)数据结构与模块说明(功能与流程图)
4)运行结果与运行情况
3. 调试报告:
1)调试记录
2)自我评析和总结
时间安排:
序号 阶段内容 所需时间 1 消化资料、系统设计 1天 2 编程、调试 3天 3 撰写报告 1天 合计 5天
指导教师签名: 2013年12月26日
系主任(或责任教师)签名: 年 月 日内核定时器
摘要
每个进程包含一到多个线程。进程也可能是整个程序或者是部分程序的动态执行。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。内核时间指明线程执行操作系统代码已经经过了多少个100ns的CPU时间,linux是一个具有保护模式的操作系统。它一直工作在i386 cpu的保护模式之下。内存被分为两个单元: 内核区域和用户区域。一般地,在使用虚拟内存技术的多任务系统上,内核和应用有不同的地址空间,因此,在内核和应用之间以及在应用与应用之间进行数据交换需要专门的机制来实现,本文站在用户空间的角度,测试一个多线程程序的程序执行时间。当一个进程希望获得信号量时, 如果信号量已经被占有, 则该进程将会被放到等待队列上sleep直到cpu将其唤醒。相对于spinlock来说开销太大,适用于长时间占有的lock。不可用于中断状态,因为它拥有信号量的进程可以sleep, 可以被抢占。
1 设计题目与要求
1.1设计题目:内核定时器
1.2设计要求:通过研究内核的时间管理算法,学习内核源代码;然后应用这些知识并且使用“信号”建立一种用户空间机制来测量一个多线程程序的执行时间。
2 总的设计思想及系统平台、语言、工具
2.1 设计思想:
2.1.1Linux内核对定时器的描述
Linux在include/linux/timer.h头文件中定义了数据结构timer_list来描述一个内核定
时器:
struct timer_list {
struct list_head list;
unsigned long expires;
unsigned long data;
void (*function)(unsigned long);
};
各数据成员的含义如下:
(1)双向链表元素list:用来将多个定时器连接成一条双向循环队列。
(2)expires:指定定时器到期的时间,这个时间被表示成自系统启动以
您可能关注的文档
最近下载
- 小学综合实践活动《趣味折纸-我的飞机飞得高》课件.ppt VIP
- 2025年新老物业服务企业交接清单和注意事项.pdf VIP
- TCAMET13002-2023城市轨道交通专用轨回流供电系统设计规范.pdf VIP
- 社会工作实务(库少雄 第三版)课件全套 第1--14章 社会工作: 历史、 定义、 目标与使命-- -呼吁.pptx
- 1_一天的食物(实用).ppt VIP
- 《5国家机构有哪些》六年级道德与法治(上)课件.pptx VIP
- 《农业肥料用聚天冬氨酸(盐)》.pdf VIP
- 大学生职业生涯规划发展报告.pdf VIP
- GB T 34986-2017 产品加速试验方法.doc VIP
- 项目三 活动四 成果展示 课件 山西版(2017)初中信息技术第一册.pptx VIP
原创力文档


文档评论(0)