课程名称 | 操作系统 | 班级 | 17软工2班 |
---|---|---|---|
实验名称 | 实验4 Linux进程的控制 | 指导老师 | 王震 |
姓名 | 陈庆辉 | 学号 | 1714080902201 |
一、实验目的
- 进一步认识并发(并行)执行的概念,区别顺序执行和并发(并行)执行。
- 2、分析进程争用临界资源的现象,学习解决进程互斥方法。
二、实验环境
ubuntu 18.04.1 LTS
三、预备知识
- for( )系统调用:创建一个新进程。
- getpid()系统调用:获得一个进程的pid。
- lockf()系统调用:在进程同步控制中为进程加锁。
四、实验内容
1、编写一段程序(fork+学号.c),使用系统调用fork()创建两个子进程,当程序运行时,在系统中有一个父进程和两个子进程活动。父进程显示“parent a”,子进程分别显示“child b”和“child c”,程序如下:
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
int pid1, pid2;
printf("parent a\n");
if ((pid1 = fork())<