linux操作系统-中断

linux操作系统-中断

ID:27747204

大小:110.38 KB

页数:13页

时间:2018-12-05

linux操作系统-中断_第1页
linux操作系统-中断_第2页
linux操作系统-中断_第3页
linux操作系统-中断_第4页
linux操作系统-中断_第5页
资源描述:

《linux操作系统-中断》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、新乡營淀针真机与信息工超嗲觉实验报告课程名称操作系统原理专业计算机科学与技术班级3班学号2013052701xx姓名XXX实验成绩任课教师XXX2013年12月3日实验名称中断姓名XXX成绩实验地点A14-322实验时间2013年12月30、实验目的与要求实验目的:进一步熟悉linin^P断的执行过程实验要求:认真二、操作步骤1、编写intr.c文件代码,代码如下:#include#include#include#includestaticint

2、irq;/*模块参数•中断号*/staticchar^interface;/*模块参数-设备名staticintcount=0;/*统计插入模块期间发生的中断次数moduk_param(interface,charp,0644);module_parani(irq,int,0644);staticirqreturn_tintr_handler(intirq,void*dev_id)*//*注册中断服务程序,注staticlonginterval=0;if(count==0){interval=jiffies;interval=jiffies-interval;/*计算两次中

3、断之间的间隔,时间单位为节拍printk(•’Theintervalbetweentwointerruptsis%ldn,interval);interval=jiffies;count++;returnIRQ_NONE;staticint_initintr_init(void){if(request_irq(irq,&intr一handler,IRQF_SHARED,interface,&irq)){意内核版本不同,共享标志可能有所不同*/printk(KERN_ERR’•FailstoregisterIRQ%dn,irq);return-EIO;}printk(

4、"%sRequestonIRQ%dsucceededXn",interface,irq);return0;}staticvoid_exitintr_exit(void){printk(’’The%dinterruptshappenedonirq%dn,count,irq);free_irq(irq,&irq);/*释放中断线*/printk(”FreeingIRQ%d",irq);return;module_init(intr_init);module_exit(intr_exit);MODULE_LICENSE(”GPLM);2.编写Makefile文件代码代码如下:

5、obj-m:=intr.oCURRENT.PATH:=$(shellpwd)LINUX_KERNEL:=$(shelluname-r)#Linux内核源代码的当前版本LINUX_KERNEL_PATH:=/lib/modules/$(shelluname-r)/build#Linux内核源代码的绝对路径all:make-C$(LINUX_KERNEL_PATH)M=$(CURRENT_PATH)modules#编译模块clean:make-C$(LINUX_KERNEL_PATH)M=$(CURRENT_PATH)clean#清理三、实验结果1.在模块文件intrt.c和M

6、akefile当前打开终端,输入make命令之后,所在的文件会编译出其他文件[root@localhost桌面]#Is123hellomod.c〜intr.ko.unsignedMakefileresult〜2.c〜intr.cintr.mod.cMakefile〜toolsa.c〜intr.c〜intr.mod.omodules.order第二个实验a.txt〜intr.kointr.oModuk.symvers第一个实验2.在运行插入模块insrnod之后,出现执行插入模块操作后,再次查看模块列表就会看到hellomod模块存在。[root@bogon桌面】#insmo

7、dintr.kointerface=ethOirq=9[root@bogon桌面]#lsmodModuleintrvfatfatusb_storagefuseebtable_natebtablesSizeUsedby1186085750470491vfat39108056800214690151761ebtable_natipt.MASQUERADE182233.执行卸载模块命令后就会发现intr模块从模块列表中消失。[root@bogon桌面]#rmmodintr[root@bogon桌面】#lsmodModul

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。