• 2025年8月19日 星期二

H30507-实验三-进程的创建与并发执行之二

5 月 6, 2023

一.实验目的

1. 学会使用fork()/exec()模式创建进程(具有独立映象)的编程方法。

2. 加深理解进程的并发特性,掌握创建进程的正确编程方法。

3.完成实验3.1   用fork()模式创建进程;实验3.2   用fork/exec模式创建进程。

二.实验内容

实验3.1   用fork()模式创建进程

实验3.2   用fork/exec模式创建进程

三.实验主要步骤

实验3.1 用fork()模式创建进程

Linux中创建新进程的唯一方法是使用fork()函数。

C语言中, if else分支语句只会根据条件进入一个分支执行,但fork()执行一次却有两个返回值(if、else两个分支的语句都执行了)。

试运行以下程序,观察运行后的结果。

四、实验结果测试

1.在ostest文件夹下使用vim命令创建test3_1.c,test3_2.c,subp1.c,subp2.c,subp3.c;并根据指定代码内容编辑相应的文件。使用命令gcc 【c文件】 -o 【out文件名】进行编译。编译结果如图1所示。

图1

2.test3_1.c的代码内容和尝试运行1次的结果如图2所示。

图2

3.subp1.c的代码内容和尝试运行1次的结果如图3所示。

图3

4. subp2.c与subp3.c的代码内容和分别尝试运行1次的结果如图4所示。

图4

5.test3_2.c的代码内容如图5所示。

图5

6. 尝试运行3次test3_2.out的结果如图6所示。

图6

7. 尝试运行3次test2.out的结果如图7所示。

图7

附件下载

Avatar photo

李星海

简介: 2025-今 浙江农林大学 | 2022-今 广州白蓝碗蛋科技有限公司 | 2022-2024 广州商学院 | 2019-2022 广东工贸职业技术学院 | 服务宗旨:心始至客,行亦致远。