1.进程管理
实验内容:
(1)进程的创建与控制
编写三个程序,其中在一个程序中使用系统调用fork()创建两个子进程,并对这两个子进程分别用exec()来执行另外两个程序。这样在执行时,系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上输出一句话,观察程序执行时在屏幕上出现的输出,并进行分析。
(2)进程的软中断通信
使用系统调用fork()创建两个子进程,用系统调用sigaction()让父进程捕捉键盘上来的中断信号(即按DEL键),在该信号处理函数中,父进程用系统调用kill()向两个子进程发送SIGTERM信号;在子进程中用系统调用sigaction()设置而使子进程可以捕捉SIGTERM信号,并在该信号的处理函数中分别输出下列信息后终止:
Child Process1 is killed by Parent.
Child Process2 is killed by Parent.
父进程等待两个子进程终止后,输出如下的信息后终止:
Parent Process is killed.
实验目的:
加深对进程概念的理解,明确进程和程序的区别。
进一步认识并发执行的实质。
了解Linux系统中进程通信的基本原理。
实验要求:
(1)在Linux系统上进行实验。
(2)要求程序编写规范,运行结果正确,并写出实验报告。