实验 多线程和多进程的调度和管理
实验内容
进程创建关系如图所示
1号进程创建2,3号两个进程
2号进程创建两个线程Thread1, Thread2
Thread1:求(1~n)之间的素数
Thread2:生成Fibonacci序列
3号进程创建4,5号两个进程
4号进程执行系统命令,ls,ps,cp等
5号进程执行一个用户编写的可执行文件
每个进程输出自己的进程ID和父进程的进程ID,观察分析,并画出程序的进程树结构
/*
* process_1.c
*
* Created on: 2018-10-18
* Author: SangHui
* Email:[email protected]
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/wait.h>
#include <string.h>
#include <sys/types.h>
void* primeNumber() {
printf("求 1~n 之间的素数 请输入 n:");
int n;
scanf("%d", &n);
int i;
int j;
for (i = 2; i <= n; i++) {
for (j = 2; j <= i / 2; j++) {
if (i % j == 0) {
break;
}
}
if (j > i / 2) {
printf("%d ", i);
}
}
printf("\n");
return NULL;
}
void* Fibonacci() {
printf("生成25位Fibonacci序列:\n");
long long Fibonacci[25];
Fibonacci[0] = Fibonacci[1] = 1;
int i;
for (i = 2; i <= 24; i