Linux操作系统实验教程(6)

2019-05-26 21:01

实验二 进程管理

1、实验目的

(1)加深对进程概念的理解,明确进程和程序的区别 (2)进一步认识并发进程执行的实质 (3)掌握常用的系统调用命令

(4)学习和掌握进程调度的基本原理和实现方法。 2、实验要求

(1)阅读Linux的sched.h源代码文件,加深对进程管理概念的理解。 (2)阅读Linux的fork.c源代码文件,分析进程的创建过程。 3、实验内容

(1)编写一段程序,使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示字符“a”;子进程分别显示字符“b”和字符“c”。试观察程序执行结果,并分析原因。

(2)修改已编写好的程序,将每个进程输出一个字符改为每个进程输出一句话。试观察程序执行结果,并分析原因。

如果在程序中使用系统调用lockf()来给每个进程加锁,可以实现进程之间的互斥,观察执行结果并分析原因。 (3)

1)编制一段程序,使其实现进程的软中断通信。

要求:使用系统调用fork()创建两个子进程,再用系统调用signal()让父进程捕捉键盘上来的中断信号(即按DEL键);当捕捉到中断信号后,父进程用系统调用kill()向两个子进程发出信号,子进程捕捉到信号后分别输出下列信息后终止。

Child Processl1 is killed by Parent! Child Processl2 is killed by Parent!

父进程等待两个子进程终止后,输出下列信息后终止。 Parent Process is Killed!

2) 在上面的程序中增加语句signal(SIGINT,SIG-IGN)和 signal(SIGQUIT,SIG-IGN),观察执行结果,并分析原因。

实验三 存储管理

1、实验目的

26

操作系统的发展使得系统完成了大部分的内存管理工作,对于程序员而言,这些内存管理的过程是完全透明的。因此程序员从不关心系统如何为自己分配内存,而且永远认为系统可以分配给程序所需要的内存。在开发程序时,程序员真正需要做的就是:申请内存、使用内存、释放内存。该实验就是帮助读者更好地理解从程序员的角度应如何使用内存。 2、实验要求

研读Linux系统目录下相关源程序文件,理解源程序的设计思想和编程技巧。 3、实验内容

(1)编写程序:申请内存、使用内存及释放一块内存。 (2)在上述实验的基础上重新分配内存。 (3)使用自动分配内存函数分配内存。

实验四 文件管理

27

1、实验目的

学习和掌握文件控制的基本原理和常用的系统调用。 2、实验要求

研读Linux系统目录下相关源程序文件,理解源程序的设计思想和编程技巧。

3、实验内容 (1)利用用户自定义的缓冲区,使对文件的单字节读/写操作在缓冲区中进行,只有当用户缓冲区空或满时,才调用read/write从(或“向”)文件读、写数据。 (2)设计一交互工具,使用该工具可以查看文件的状态信息;改变文件的模式、访问时间;显示目录文件内容并在其中执行任意的shell命令。

实验五 综合实验

28

1、实验目的

综合所学各章的知识,练习在Linux环境下的综合编程能力。 2、实验内容

编程实现多个用户同时提交打印请求,并按序打印用户要求的文件。 要求:该实例主要包括两大部分

(1)sched守护进程,负责接受用户的打印请求并打印用户文件。 (2)lpp命令,用户用lpp命令提交打印请求。 提示:

第七章 实验指导

29

实验一 熟悉Linux环境

3、实验内容

(1)练习linux常用命令 1)列出文件列表的ls命令

作用:显示当前目录有哪些文件和子目录。不加任何参数 :显示当前目录的内容。 -a 显示所有文件和目录(若无此参数,句点开始的文件和目录不会显示出来) -A 显示所有文件和目录(它比-a 少显示.和..两项)

-F 在特殊文件或目录上加上标示(子目录后加 /,程序文件后加上*) -l 以长格式显示。会显示文件或目录的详细信息。

例:ls ls –a

ls -al //参数的混合使用

ls -l | more //符号|为管道操作,将ls –l的输出作为more的输入

2)切换目录cd命令

cd .. 切换到上一级目录 cd / 切换到根目录 cd ~ 切换到用户目录 “.” 表示当前目录。

cd 切换到指定的路径

3)建立目录的mkdir 命令

mkdir data 在当前目录下建立data子目录 mkdir /data 在根目录下建立子data目录

注意: 用户不能在一个不存在的目录下建立子目录。

4)删除目录的rmdir命令

rmdir 可用来删除空的子目录。 rmdir data

rmdir /data

注意:如果要删除具有文件或子目录的目录,用rm会比较方便。

5)拷贝文件的cp命令

cp data1.txt data2.txt cp data3.txt /tmp/data 关于cp命令的参数。

-i 覆盖相同文件名称前先询问用户。 -v 显示命令的执行过程

-r 递归拷贝,即拷贝时将所有目录一并拷贝。

6)删除文件或目录的rm命令 rm data.txt rm *

参数说明:

30


Linux操作系统实验教程(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:CRTS III型板式无砟轨道毕业设计

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: