




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、紅inux操作系统实验手册2012年12月2日实验一 内核编译与系统调用%1. 实验目的 掌握linux内核编译的方法; 了解并比较进程创建的不同方法o二、实验内容 linux内核编译; 分别川fork ()和clone ()创建进程:列出子进程和父进程的进程号,进程 名和进程状态;。三、实验步骤内核编译实验步骤:1. 査看当前内核版本uname -a2. 在 /下载 linux-2.6.10;3. 安装有关编译程序。安装makc ,gcc kernel-package等和编译内核相关的t具.女装 命令:sudo apt-get install xxx(
2、注意:一定要安装这个 sudo apt-get install build-essential kernel叩ackage libncurses5-dev fakeroot)4. 切换到root川户。su root;5. 将源代码拷到 /usr/src/ 口录卜,cp linux-2.6.10.tar.bz2 /usr/src/(可以不做);6. 进入/usr/src/ |=|录cd /usr/src/ (如果上一步没做,这一步也不做);7. 解压。tar jvfx linux-2.6.10.tar.bz28. 进入源代码所在i i录。cd linux-2.6.1()9. 清理以前编译留下的临
3、时文件。make mrproper10. 使川 make localmodconfig £|动精简内核配置。make localmodconfig,所有的选项, 如果你不确定,就按回车键,选择默认配置。11开女台编译|a)核。sudo make-kpkg clean ; make-kpkg initrd append-to-version=-xxx kernel_image (编译的吋间可能会有点长,耐心等待)12. 安装内核。退冋上级目录cd .然后sudo dpkg -ilinux-imagc-2.6.10-xxx_i386.dcb11. 重启验证内核reboot o13. 查看
4、当前内核版本uname -a实验二自定义系统调用一、实验目的 了解系统调用的原理 掌握在linux操作系统中编写系统调用的过程二、实验内容自己设计一个系统调用,完成某项系统功能。%1. 实验步骤1) n进入到内核源码目录/usr/src/linux-1添加自己的系统调用号。cd /usr/src/linux-2.6.34/系统调用号在unistd_32.h文件中定义,在该文件中添加自己的系统调用号。如添加 mycall系统调用。系统调川号为338,如添加mycall系统调川。系统调用号为338,并将 原来的#define nr_syscalls 338 修改为#define n
5、r_syscalls0lyhlyh:/usr/src/linux-2.6.34$ sudo gedit arch/x86/include/asm/unistd_32.h#define.nr_perflevent_open336# define.n r_recvm msg337#definenr_mycall338#ifdefkernel#definc nr syscalls3392)、在系统调用表中添加相应的表项。lyhlyh:/usr/src/linux-2.6.34$ sudo gedit arch/x86/kernel/syscalltable_32.sentry(sys call ta
6、ble).long sys_rcslart_syscall.long sys_cxit(这里省略了部分).long sys_perflevent_open.long sys_recvmmsgelong sys_mycall3) 、实现系统调用服务例程。系统调用服务例程函数名为”sys_xxx”lyhiyh:/usr/src/linux-2.6.34$ sudo gedit kernel/sys.casmlinkage long sys_mycall(int n)printk(mhello, world!n mycall worked!nn);return n;4) 、重新编译内核,步骤同实验一
7、。注意:内核编译完了之后必须重启,否则已经添加 的用户系统调用不能使用。5) 、编写下而的测试程序。lyhlyh: sudo gedit test.c#include <stdio.h>int main()syscall(_nr_mycall,5);return 0;lyhlyh:gcc test.c -o testlyhlyh: ./testlyhlyh: sudo dmesg -c就可以看到结杲:hello, world!mycall, worked!四、实验源代码实验三多线程网络编程一、实验目的 初步掌握套接字通信的原理 加强7生对linux系统网络应川的理解二、实验内容以socket系统调用或结合口定义系统调用进行网络编程为日标的多线程编程。创 建两个线程同时给一个ip主机发送模拟tcp数据包(只是发送和接收,不考虑tcp 协议细节)%1. 实验源代码(可参考附件client.c及s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川省德阳市重点名校2025年初三3月份月考试卷英语试题含答案
- 直播平台主播合作合同
- 江西省新余市渝水区2025届三年级数学第二学期期末联考模拟试题含解析
- 物流行业短途运输合同范本
- 孝感市八校联谊2024-2025学年中考英语试题考前模拟题含答案
- 江西省赣州市犹县2025年数学三下期末统考模拟试题含解析
- 山东省潍坊市临朐2025年初三中考热身练习试题英语试题试卷含答案
- 订购粮食合同范本
- 一手房车位买卖合同样本
- 房屋按揭贷款合同模板
- GB/T 44143-2024科技人才评价规范
- 2024年广东省汕尾市陆丰市第13届“玉燕杯”小学数学六年级竞赛试卷
- 名人-魏源-人物介绍
- “小小科学家”广东省少年儿童科学教育体验活动+生物试题4
- 小学语文《习作一形形色色的人》说课稿附板书课件
- 南明区第一实验中学七年级下学期期中考试语文试题(含解析含听力音频)
- 《面点基本功》课件-冠顶饺
- 2024年江苏苏州风景园林投资发展集团有限公司招聘笔试参考题库含答案解析
- 产学研协同创新机制
- 视频监控维保项目投标方案(技术标)
- 矿山生态修复施工组织设计
评论
0/150
提交评论