- 1、本文档共32页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
合肥师范学院第二学期操作系统实验指导书.doc
《操作系统》实验指导书
操作系统课程组◎编著
计算机科学与技术系
目 录
前言 - 1 -
实验项目一 熟悉LINUX基本命令及编程环境 - 2 -
实验项目二 进程管理 - 4 -
实验项目三 进程调度 - 9 -
实验项目四 进程通信 - 15 -
实验项目五 存储管理 - 24 -
前言
《操作系统》是计算机本科各专业的专业核心课程,其实践性、应用性很强,实验教学环节是必不可少的一个重要环节。通过《操作系统》实验部分教学,使学生加深理解和更好的掌握操作系统的基本原理、技术和方法,巩固所学理论知识,激发实验兴趣,掌握实验要领,培养对操作系统理论课程所学知识融会贯通和综合运用的能力。通过实验,使学生深入了解和熟练掌握Linux操作系统的使用,及在Linux操作系统下进行程序设计开发的方法,掌握操作系统中进程管理、进程调度、进程通信和存储管理的方法,使学生具有初步分析实际操作系统的能力,为今后学习使用其它的程序设计环境和语言打好基础。
为了收到良好的实验效果,编写这本实验指导书。在指导书中,每一个实验均按照该课程实验大纲的要求编写,力求紧扣理论知识点、突出设计方法、明确设计思路,通过多种形式完成实验任务,最终引导学生有目的、有方向地完成实验任务,得出实验结果。实验前,指导教师布置实验任务,给定实验内容,进行一定的分析和讲解,学生进行预习,提前设计实验方案,之后进入实验室进行实验;实验中,要求学生按照实验要求进行实验,认真完成每个实验项目的具体内容,指导教师全程指导协调实验进行,对于实验中学生所提问题进行具体解答;实验后,学生应当及时总结实验过程,并按照实际情况对实验报告进行填写,能对在实验过程中发生的问题及时分析并找到解决方案,提交实验报告;指导教师需要对实验报告进行认真批阅,并根据需要选取重点内容进行点评分析。
实验项目一 熟悉LINUX基本命令及编程环境
实验类型
本实验为验证性实验。
实验目的与任务
熟悉Linux操作系统的安装和使用;熟悉使用Linux字符界面,窗口系统的常用命令。
掌握运用Linux常用的编程工具;掌握如何编辑、编译、运行程序。
使用Gedit编辑器用C语言编写一个HelloWorld程序,并保存。
具体操作:点击“任务栏→位置→主文件夹”,打开主文件夹位置文件浏览器,空白处右键单击,弹出菜单选择“创建文档→空文件”,新建一个空文件,并命名为“hello.c”,右键单击“hello.c”,选择“使用Gedit打开”,在Gedit编辑器中编辑代码如下:
#includestdio.h
int main()
{
printf(Hello,Wrold!\n);
}
编辑完成后,点击“保存”,保存文件。
使用gcc编译源程序。
gcc是linux下的一种c程序编译工具,使用方法如下:
编译: gcc -o filename1 filename.c(或者gcc filename.c -o filename1),其中: filename.c是源文件名,filename1 是目标文件名,o代表object
具体操作:点击“任务栏→应用程序→附件→终端”,当前默认路径即为主文件夹,输入“gcc hello.c -o hello”,回车运行后,若无任何提示,怎说明编译成功,已生成可执行文件“hello“,若提示有错误,则根据具体提示回到Gedit中修改源程序,保存后重新编译。
执行程序
执行:./filenamel 其中: filename1 是目标文件名。
具体操作:在“终端”中输入“./hello”,回车后运行,若无错误,终端中将显示运行结果“Hello,Wrold!”。
注意事项
gcc编译器不能编译不带扩展名的c语言程序。
注意编译和运行程序的基本过程。
重新编辑源程序后,必须重新编译,才会生成新的可执行程序。
实验项目二 进程管理
实验类型
本实验为验证性实验。
实验目的
理解进程的概念,掌握父、子进程创建的方法。
认识和了解并发执行的实质,掌握进程的并发及同步操作。
实验预备知识
fork()函数
头文件:
#includeunistd.h
#includesys/types.h
函数原型:
pid_t fork(?void);
(pid_t 是一个宏定义,其实质是int,被定义在#includesys/types.h中)
返回值:
若成功调用一次则返回两个值,子进程返回0,父进程返回子进程ID;否则,出错返回-1
函数说明:
一个现有进程可以调用fork函数创建一个新进程。由fork创建的新进程被称为子进程(child process)。fork函数被调用一次但返回两次。两次返回的唯一区别是子进程中返回0值而父进程中返回子进程ID。
子进程是父进程的副本,它将获得父进程数据空
文档评论(0)