- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
linux操作系统课程设计-内核的移植系统调用的添加
摘要
操作系统是用于控制和管理计算机系统内各种软硬件资源、合理有效地组织
协调计算机系统的工作流程提供友好的用户接口以方便用户使用计算机的程序
集合。
在设计报告中,第一部分介绍了内核的相关概念,在第二部分介绍了关于内核添加涉及的操作。从头至尾,完全按照个人完成该课程设计时的思路进行。其中包括遇到的一些问题,是如何解决的。由于能力有限,在本次设计中,参阅了较多书籍,电子文档。借鉴了别人的设计,并请教了别人。在设计最后,是本人在设计伊始及终的一些感受与想法。
关键字:linux命令 内核 系统调用
目 录
1、概述…………………………………………………………....…1
2、课程设计任务及要求……………………………………………1
2.1实现Linux操作系统的内核添加及系统调用…………..1
2.2添加一个简单的系统调用…………………………… .....1
2.3设计要求……………………………………….………….1
3、算法与设计结构…………………………………………………1
4、课程设计与实现
4.1流程图……………………………………………..……2
4.2程序说明……………………………………….…….…2
4.3实验结果………………………………………….….…6
5、设计总结…………………………………………………….…...7
6、参考文献…………………………………………………….…...7
概述
这次设计主要完成的工作是编写一个简单的程序,然后加载到内核中并在Linux系统内核中添加系统调用。
课程设计任务及要求
2.1实现Linux操作系统的内核添加及系统调用
本次课程设计用到的是Linux虚拟机,将Linux操作系统装在以windows 7为宿主的VMware workstation中。Linux系统为Ubuntu 11.10版。(本人机器上的Redhat版本太低,在linuxtools安装完成后,仍不能进行相关操作,因此从同学那里找来了不错的虚拟机及系统)
2.2添加一个简单的系统调用
此课程设计中添加了一个简单的字符驱动,在系统调用时,会输出一段字符“Hello hytc !”
2.3设计要求
要求在学习操作系统的基础上找出解决方案,做出合理的设计,独立完成。给出测试值,得出结果并进行解释。
算法与设计结构
系统中的调用函数的为:
Asmlinkage void sys_zlx()
{
Printk(“Hello hytc !”);
}
课程设计与实现
4.1流程图
4.2程序说明
具体步骤:
S1:下载linux系统内核,网站
下载内核版本linux-3.0.82.tar.xz
放入linux虚拟机中。
S2:添加系统调用
解压内核
将linux-3.0.82.tar.xz移至/usr/src/目录中
mv linux-3.0.82.tar.zx /usr/src/
以需要管理员身份进入/usr/src/目录
命令行输入:sudo su以获取管理员身份
然后输入密码进入root模式
开始解压:输入命令
Xz -d linux-3.0.82.tar.xz
(以.xz结尾的用xz -d +文件名 进行解压)
得到linux-3.0.82.tar文件
再输入命令 tar -xf linux-3.0.82.tar
ls一下,得到文件linux-3.0.82,(要编辑的文件)
2、系统调用添加
Cd linux-3.0.82/kernel
Gedit sys.c
打开sys.c文件进行编辑,在文末插入代码
asmlinkage int sys_zlx(){printk(KERN_EMERG hello hytc !;return 1;}保存退出。
修改指针列表
在当前目录输入 cd ../arch/x86/kernel
然后输入 gedit syscall_table_32.S
打开后,在最后加入:.long sys_zlx
gedit syscall_table_32.S??##打开syscall_table_32.S文件,在文末添加?.long sys_helloworld???
保存并退出。
输入命令:cd ../include/asm
然后输入:gedit unistd_32.h
打开后,在文末添加:#define __NR_sys_zlx 347
最后的数改成348
将下面行中的另一声明后的值由347改为348?
S3:编译内核
回到li
您可能关注的文档
- avatar摄像头检验规范.doc
- 7灌中王余永-生物人教版选修3动物细胞培养和核移植技术1.doc
- CAN总线的PLC.doc
- BSERPPOS第2章(系统设置).doc
- -2013年水利工程质量检测员基础知识考试.doc
- (三套)初中数学新课标测试题及答案20148.doc
- 00182公共关系学2010年10月试题与答案.doc
- ,空间点直线平面之间的位置关系内容第6次课.doc
- 03709自考课后题目答案.docx
- 05Windows知识题.doc
- 急性肾功能衰竭综合征的肾血管介入性诊治4例报告并文献复习.docx
- 基于血流动力学、镇痛效果分析右美托咪定用于老年患者髋部骨折术的效果.docx
- 价格打骨折 小心统筹车险.docx
- 交通伤导致骨盆骨折合并多发损伤患者一体化救治体系的效果研究.docx
- 多层螺旋CT与DR片诊断肋骨骨折的临床分析.docx
- 儿童肱骨髁上骨折后尺神经损伤恢复的预测因素分析.docx
- 康复联合舒适护理在手骨折患者中的应用及对其依从性的影响.docx
- 机器人辅助老年股骨粗隆间骨折内固定术后康复.docx
- 超声辅助定位在老年髋部骨折患者椎管内麻醉中的应用:前瞻性随机对照研究.docx
- 两岸《经济日报》全面合作拉开帷幕.docx
最近下载
- T_CAS 1148—2025(社区堆肥技术要求).pdf VIP
- 《中医诊断学》试题一.doc VIP
- 全口义齿修复中的规范化重点技术题库答案-2025年华医网继续教育.docx VIP
- 《生活垃圾填埋场环境污染隐患排查治理工作方案》(环固体〔2025〕44号).docx VIP
- 广东省广州市天河区2023-2024学年五年级上学期期末英语试卷.docx VIP
- 老年病科建设与成果汇报.pptx VIP
- 2012年10月马万成外应预测法面授录音笔记.pdf VIP
- 华南理工大学期末考试《 电力系统分析》试卷1B.doc VIP
- 妇科肿瘤综合治疗策略与预后.pptx VIP
- “铭记历史,珍爱和平”主题演讲比赛活动总结与“铸中华民族精神之魂”活动主持词合集.doc VIP
原创力文档


文档评论(0)