西电软院操作系统课程设计报告1.doc_第1页
西电软院操作系统课程设计报告1.doc_第2页
西电软院操作系统课程设计报告1.doc_第3页
西电软院操作系统课程设计报告1.doc_第4页
西电软院操作系统课程设计报告1.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

操作系统实验报告实验报告册班级: 学号: 姓名: 教师: 褚华 第 15 页 共 15 页目 录实验说明重要提示实验1 Linux(虚拟机)安装及Linux常用命令使用实验2 makefile的编写及Linux内核编译 实验3 Linux的进程和线程实验4 同步与互斥实验5 文件系统实验说明1 实验做为学习的重要促进手段,是为了深化对理论的理解,锻炼实践动手能力。2 实验同时也作为考核的手段。3 实验内容会在课程进行中下达,并且会分次地、部分地被抽查。4 课程结束时,要求把所有的实验整理成一个完整的电子文档并上交,做为最后成绩的评定依据。5 如果有兴趣的合适的题目,也可自己选题目。格式说明1 本文档文件名命名为“学号-姓名”,如“13071000_小王”。2 留白部分不足的自己调整长度,也可加页(增加内容应在表格内)。3 每次的实验报告都要在这个文件中(按照实验次序依次)增加,而不是每次一个新的word文件。4 本文档保存为doc格式( 请勿用Word2007的docx格式)。重要提示:1 实验正文建议使用小四号或五号宋体。2 若附加图形,则请直接嵌入到实验手册相应位置。3 各实验的源程序,请按实验分目录存放,如第一个实验的源程序存放在目录lab1下,第二个实验的源程序存放在目录lab2下等等,依次类推。4 可互相讨论,但严禁抄袭网络或同学的实验结果。实验编号1题目Linux(虚拟机)安装及Linux常用命令使用实验目的1. 安装虚拟机2. 学习linux基本操作实验内容1. 安装虚拟机2. 熟悉linux操作报告内容要求(1) 实现方法和思路(2) 测试及结果报 告 正 文实验一: 安装虚拟机由于我一直使用linux物理机在本系列实验中我将使用的是我自己的linux物理机,所以就不用安装虚拟机了实验二: 熟悉linux操作Linux的基本操作有一: 目录操作ls pwd mkdir rmdir其中1. ls是查看当前目录内容使用方法ls -l ls -al2. pwd是显示当前所在目录的绝对路径使用方法 pwd3. mkdir是创建一个新目录使用方法mkdir dirname4. rmdir是删除一个空目录使用方法 rmdir dirname 注意dirname一定要是空目录才行二: 文件操作 touch 使用方法 touch filename 如果文件不存在则新建文件,否则不处理cp 使用方法 cp oldfilename newfilename 拷贝oldfilename为newfilenamerm 使用方法 rm filename 删除filename文件mv 使用方法 mv oldfilename newfilename 将oldfilename移动到newfilenamefind使用方法 find pathname -name filename 在pathname路径下寻找文件filename三: 文本文件查看命令 cat 使用方法 cat filename 查看filename文件more 使用方法 more filename 也是查看filename不过不是一次将文件全部显示less 使用方法 less filename head -n n filename 查看filename文件的前n行tail 使用方法 tail -n n filename 查看filename文件的后n行实验编号2题目makefile的编写及Linux内核编译 实验目的1. 通过自己编译linux内核的过程,理解并掌握linux内核的编译方法,以及linux启动过程2. 了解linux的makefile文件的编写,明白make在linux工程中的重要作用实验内容1. 自己用源代码编译linux内核2. 学习并熟悉linux的makefile语法及编写方法报告内容要求(1) 实现方法和思路(2) 测试及结果报 告 正 文内容一: 编译linux内核Ubuntu 版本号 12.04当前linux内核版本 3.11.26待编译内核版本 3.17.11. 首先解压内核源码压缩包2. cd进入内核源码所在目录3. make menuconfig进入图形配置界面4. 在图形配置界面并设置版本号5. 执行make 进入编译步骤,等待不短的时间直到编译完成6. 执行make module进行内核模块的编译7. 执行make install安装内核8. 执行make modules_install安装内核模块9. 执行 sudo mkinitramfs -o /boot/initrd.img-3.17.1xianb10. 更新grub执行update-grub211. 重启即可实验编号3题目Linux的进程和线程实验目的1. 通过自己动手编写进程创建等函数,了解linux中进程的概念以及基本使用方法2. 通过自己动手编写线程的一系列函数,连接linux中线程的概念以及基本使用方法实验内容1. 掌握常用的进程函数 fork wait signal pause kill exit等2. 了解进程的3. 了解线程与进程的区别和联系4. 掌握常用的线程函数5. 学会线程的创建,同步,互斥,退出报告内容要求(1) 实现方法和思路(2) 测试及结果报 告 正 文1. 通过几个示例程序来掌握linux的进程概念以及基本进程函数示例一: 通过这个示例进程可以知道如何获得进程号,父进程号以及群组号运行结果为示例二:通过这个例程,明白如何利用创建一个子进程,并且如何区分两个进程同时理解了僵尸进程的概念,并且知道父进程和子进程的运行顺序是不确定的,也明白了wait函数的使用方法以及作用运行结果如下可以看到父子进程的运行是没有特定的先后顺序的,而由于wait函数父进程要等待子进程结束才能结束,否则子进程可能成为僵尸进程示例三:运行结果如下通过了这个程序,明白了linux如何通过注册信号句柄来实现信号机制先通过signal函数注册句柄,但是此时句柄函数不会运行,知道本进程接收到了在signal中指定的信号才会执行该句柄函数在本例中的信号是外部键盘中断,也就是Ctrl + C示例四:这个示例程序也是说明linux的信号机制的运作方式的,本程序通过调用fork函数,创建出一个子进程,随后在父进程中注册了一个接受SIGUSR1信号的函数,usr1_handler,接着休眠,直到接受到信号然后在子进程中使用kill函数向父进程发送一个SIGUSR1信号,唤醒父进程随后父进程醒来,并因为wait函数等待子进程结束运行结果如下示例五:本示例通过函数pthread_create()函数创建了一个线程,这个函数节后一个pthread_t的线程号类型,以及函数名作为参数,执行完该函数后myThread函数就作为一个新的线程开始执行了,但是要注意,线程的开始要有一段时间,而不是立即结束,所以如果进程中没有用join或者sleep一段时间的话,可能会看不到线程的开始实验编号4题目同步与互斥实验目的为Linux内核增加一个系统调用,并编写用户进程的程序来测试。要求该系统调用能够完成以下功能:1. 该系统调用有1个int型参数,返回值为int。2. 若参数大于0,则返回自己学号的最后一位。如学号为13091434,则返回4。3. 若参数小于或等于0,则返回自己的学号后三位。如学号为13091434,则返回434。 实验内容1、 系统调用的实现2、 增加系统调用3、 Linux内核的构建报告内容要求(1) 实现方法和思路(2) 测试及结果报 告 正 文实验编号5题目文件系统实验目的为Linux内核增加一个系统调用,并编写用户进程的程序来测试。要求该系统调用能够完成以下功能:1. 该系统调用有1个in

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论