




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 1 页 共 18 页操作系统课程设计实验报告册班级:学号:姓名:教师:第 2 页 共 18 页实验说明1实验做为学习的重要促进手段,是为了深化对理论的理解,锻炼实践动手能力。2实验同时也作为考核的手段。3实验内容会在课程进行中下达,并且会分次地、部分地被抽查。4课程结束时,要求把所有的实验整理成一个完整的电子文档并上交,做为最后成绩的评定依据。5如果有兴趣的合适的题目,也可自己选题目。格式说明1本文档文件名命名为“ 学号 - 姓名” ,如“ 13071000_小王” 。2留白部分不足的自己调整长度,也可加页(增加内容应在表格内)。3每次的实验报告都要在这个文件中(按照实验次序依次)增加,而
2、不是每次一个新的 word 文件。4本文档保存为 doc 格式( 请勿用 word2007的 docx格式) 。重要提示:1实验正文建议使用小四号或五号宋体。2若附加图形,则请直接嵌入到实验手册相应位置。3各实验的源程序,请按实验分目录存放,如第一个实验的源程序存放在目录 lab1 下,第二个实验的源程序存放在目录lab2 下等等,依次类推。4可互相讨论,但严禁抄袭网络或同学的实验结果。实验编号4 题目系统调用实验目的1. 了解系统调用2. 学习添加系统调用。实验内容为 linux 内核增加一个系统调用,并编写用户进程的程序来测试。要求该系统调用能够完成以下功能:(1). 该系统调用有1 个整
3、型参数, 接收输入自己的学号;(2). 若参数为奇数, 则返回自己学号的最后5 位。 如您的学号为13051007,则返回 51007;(3). 若参数为偶数,则返回自己的学号的最后4 位。如您的学号为 13051004,则返回1004。第 3 页 共 18 页报告内容要求(1) 实现方法和思路(2) 测试及结果报告正文1. 第一步:解压缩内核源码包linux-2.6.32.60.tar.bz2到目录 /usr/src下解压缩命令 tar xvf linux-2.6.32.60.tar.bz2 /usr/src 解压缩后在 /usr/src中多了一个 linux-2.6.32.60的文件夹,之
4、后的修改源码的工作都是在这个文件夹中进行。第二步:修改系统调用表文件linux-2.6.32.60/arch/x86/kernel/syscall_table_32.s在文件中最后一组 .long 代码后添加一行.long sys_mycall 第三步:修改系统调用号文件,增加自己函数的系统调用号,并将系统总调用号增加。linux-2.6.32.60/arch/x86/include/asm/unistd_32.h 在文件最后增加系统调用第 4 页 共 18 页#define _nr_mycall 337 /自己函数的调用号同时修改系统调用函数总数,这是可以调用的编号上限#define nr_
5、syscalls 338 注意: 系统调用号不是随意添加, 一定是按顺序排列是第几个就是第几个编号,例如原有 336 个系统调用,新添加的必须放在最下边的第337 的位置,不能改成其他位置,编号是337. 第四步:增加系统调用声明,修改文件linux-2.6.32.60/include/linux/syscalls.h 在文件后添加代码asmlinkage long sys_mycall(int num);/ 我这里测试用的系统调用函数只用了一个int 型参数,并返回一个long 型值,这条语句是你自己的函数的完整声明,有几个参数写几个参数。第五步:添加系统调用函数的实现,修改文件linux-
6、2.6.32.60/kernel/sys.c 在文件后添加代码,必须和第四步的声明完全对应printk() 的输出可以在终端中用dmesg命令查看asmlinkage long sys_mycall(int num) 第 5 页 共 18 页第六步:内核编译按照第二次课的ppt 重新编译内核,用新编译的内核作为启动项。第七步:打开终端编写测试代码,代码中调用你自己写的系统函数,编译运行查看运行结果是否调用成功。也可以用dmesg 命令查看进程的printk() 函数的输出。调用方式: syscall(系统调用号,参数列表); 创建一个 .c 的源文件,写入测试代码。测试实验编号5 题目内核模块
7、实验目的学会使用与创建内核模块实验内容题目一编写一个内核模块;编译该模块;加载、卸载该模块;第 6 页 共 18 页题目二用内核模块的方式为系统添加一个系统调用具体要求同专题一报告内容要求(1) 实现方法和思路(2) 测试及结果报告正文内核模块编写内核模块准备代码和 makefile 代码第 7 页 共 18 页makefile 第 8 页 共 18 页make 加载内核成功移除第 9 页 共 18 页系统调用实验编号5 题目proc 文件系统实验目的了解并学会使用proc 文件系统实验内容编写一个程序, 用来读取和修改内核参数(任意参数即可,不涉及到内核编程,只需要使用标准c库中的函数) 。
8、在/proc目录下用自己的学号创建一个目录,如/proc/13101201。然后在学号目录下创建两个文件,一个用自己的姓作为文件名,如/proc/13101201/zhang,此文件是只读的,用于显示当前进程的pid 信息;另一个文件用自己的名字作为文件名,如/proc/13101201/xiaoming,此文件是可读写的。报告内容要求(1) 实现方法和思路(2) 测试及结果报告正文第 10 页 共 18 页1 实验一的源代码:运行第 11 页 共 18 页2 源代码makefile 第 12 页 共 18 页加载内核成功第 13 页 共 18 页!查看cat 卸载模块第 14 页 共 18
9、页实验编号7 题目专题四:设备驱动实验目的学会使用设备驱动。实验内容完善例子中的字符设备程序,使之满足以下功能:安装设备后从设备中读出字符串为你的学号;设备支持每次写入字符不超过1024 个,超过部分被丢弃;用户可以读出最近写入到设备中的字符;设备关闭前不能被多次打开;设备支持系统调用ioctl(int d, int req, ) req = 0 x909090, 清除设备中写入的字符串; 自己编写测试程序,验证以上功能报告内容要求(1) 实现方法和思路(2) 测试及结果报告正文1. 设备驱动程序代码:第 15 页 共 18 页make 加载模块第 16 页 共 18 页验证功能:源代码:第
10、17 页 共 18 页其他功能源代码:#include #include void main() char yourmsg1024; char c1400; char waa1024; char u1024; int i; /*int h = open(/dev/rwbuf,o_rdonly); int n = read(h,yourmsg,sizeof(yourmsg); close(h); puts(yourmsg); printf(-n); for(i=0;i1400;i+) if(i1020) ci=a; else ci=u; h = open(/dev/rwbuf,o_wronly); n=write(h,c,sizeof(c)+1); close (h); h = open(/dev/rwbuf,o_rdonly); 第 18 页 共 18 页n = read(h,waa,sizeof(waa); close(h); puts(waa); printf(-n);*/ int h
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 员工管理心得体会模版
- 《环境监测化学复习》课件
- 2025施工企业材料供应合同管理制度
- 维生素缺乏症的临床护理
- 《胸腔及肺叶解剖》课件
- 《药品营销技巧》课件
- 中学2025年春季学期班主任老师工作总结模版
- 华为应收账款管理体系构建
- 《销售技巧课件 - 李慧敏 异议处理作业》
- 2025年度住宅装修合同关键条款解析
- 2025年入团考试试题及答案完美呈现
- 丁华野教授:上卷:幼年性纤维腺瘤与叶状肿瘤
- 辽宁点石联考2025届高三5月份联合考试-政治试卷+答案
- 校长在全体教师大会上讲话:五把钥匙解锁教师从容人生
- 国企物业考试试题及答案
- 2024年湖南省城步苗族自治县事业单位公开招聘医疗卫生岗笔试题带答案
- 以患者为中心的医疗数据管理系统-基于区块链技术
- 2025至2030中国寺庙经济市场深度调研与未来前景发展研究报告
- 2025-2030全球及中国工程机械租赁行业市场现状供需分析及投资评估规划分析研究报告
- 电厂脱硫维护合同协议
- 形势与政策补考2-国开(XJ)-参考资料
评论
0/150
提交评论