我正在练习教科书"操作系统概念第7版",我对如何fork()工作感到有些困惑.根据我的理解,fork()创建一个与其父项同时运行的子进程.但是,我们如何确切知道哪个进程首先运行?我的意思是执行的顺序.
问题
使用fork()在子进程中生成Fibonacci序列的系统调用编写C程序.序列号将在命令行中提供.
这是我的解决方案:
#include <sys/types.h>
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>
void display_fibonacci_sequence( int n ) {
int i = 0;
int a = 1;
int b = 1;
int value;
printf( "%d, %d, ", a, b );
for( ;i < n - 2; ++i ) {
value = a + b;
printf( "%d, ", value );
a = b;
b = value;
}
printf( "\n" );
}
int main( int argc, char** …Run Code Online (Sandbox Code Playgroud)