2022年操作系统实验一向LINUX内核增加一个系统调用 .pdf
《2022年操作系统实验一向LINUX内核增加一个系统调用 .pdf》由会员分享,可在线阅读,更多相关《2022年操作系统实验一向LINUX内核增加一个系统调用 .pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、操作系统实验一:向 Linux内核增加一个系统调用xx711103xx2012年 3 月 18 日一、实验目的通过实验, 熟悉 Linux操作系统的使用,掌握构建与启动Linux内核的方法; 掌握用户程序如何利用系统调用与操作系统内核实现通信的方法,加深对系统调用机制的理解;进一步掌握如何向操作系统内核增加新的系统调用的方法,以扩展操作系统的功能。二、实验内容1.Linux环境下的C 或 C+ 编译和调试工具的使用2.向 Linux内核增加新的系统调用,系统调用名称和功能自行定义3.Linux新内核的编译、安装和配置4.编写应用程序以测试新的系统调用并输出测试结果三、实验步骤1、 安装 Vir
2、tualBox-4.0.8并在虚拟机上安装ubuntu11.10 。(电脑上本有ubuntu11.1064 位系统,但在编译内核完成后发现参考教程为32 位系统,因64 位系统与 32 位系统增加系统调用步骤差别较大,身为初学者的我选择安装虚拟机,并重新编译)2、安装编译源环境sudo apt-getinstallbuild-essential、sudo apt-getinstallgcc、sudo apt-getinstallg+编写一个 c+或 c 程序,并使用gcc o xxx 或 g+ -o xxx 进行编译并运行。3、用 sudo apt-getupdate 更新软件源,并用apt-
3、getinstalllinux-source命令下载适合自己的内核。 (当使用过老版本内核时,采用默认的内核配置makeoldconfig时,将会造成错误,自己也因此重做一遍)。4、增加系统调用:第一步:解压文件# cp linux-source-3.0.0.tar.bz2/usr/src拷贝至 /usr/src目录# tarxvflinux-source-3.0.0.tar.bz2解压文件第二步:修改源程序,增加系统调用实现# gedit/usr/src/linux-source-3.0.0/kernel/sys.casmlinkageintsys_mycall(intnumber)prin
4、tk(hello,my new kernel,xw!);returnnumber;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 第三步:修改头文件,增加系统调用声名#gedit/usr/src/linux-source-3.0.0/arch/x86/kernel/syscall_table_32.S将 223 行.longsys_ni_syscall改为 .longsys_mycall (不要放在其他地方,否侧可能出现错误)第
5、四步:修改系统调用表,注册系统调用。#gedit/usr/src/linux-source-3.0.0/arch/x86/include/asm/unistd_32.h增加一行,对应上面的2235、编译安装内核第一步: make mrproper清除内核中不稳定的目标文件,附属文件及内核配置文件第二步: make clean清除以前生成的目标文件和其他文件第三步: make oldconfig采用默认的内核配置第四步: make bzImage 编译内核第五步: make modules 编译模块第六步: make modules_install安装模块名师资料总结 - - -精品资料欢迎下载
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年操作系统实验一向LINUX内核增加一个系统调用 2022 操作系统 实验 一向 LINUX 内核 增加 一个 系统 调用
限制150内