【发布时间】:2021-11-23 02:36:38
【问题描述】:
在我的学校,我们必须用 C 来编写这个作业:
PART2:编写三个程序 A、B、C。
A 将使用 fork() 和 exec() 系统调用启动 B 和 C。
在启动时,它将重定向 B 和 C 的输出和输入 到管道。
B 将从它的标准输入接收数字并增加它 乘以 5,在其标准输出上打印结果。
C 将从其标准输入中接收一个数字并将其除以 2, 在其标准输出上打印结果。
A 的作用是将这个计算用一个随机数播种到 B, 然后从 B 检索结果,将其发送给 C,从 C 获取结果,将其发送给 B,等等,直到重复 100 次。
如果 A 在将数据发送到另一个进程之间等待 1 秒,那就太好了。
A 将在它自己的标准输出上打印所有从 进程到其他,例如:
001. A -> B 10
B -> A 15
A -> C 15
C -> A 7
002. A -> B 7
B -> A 12...
我已经有了文件 B 和 C。但是我不知道如何对控制一切的文件 A 进行编程。谁能帮帮我?
【问题讨论】:
-
Why is "Can someone help me?" not an actual question?。请提出比“帮助我”更具体的问题。例如是
fork你有问题吗?是管道吗?是exec吗?还有什么?请尽可能多地展示代码,并就您遇到的一个步骤提出具体问题。