Моя программа на данный момент просто выполняет другую c программу. Но я хочу, чтобы этот процесс занимал (введенное значение)% ЦП. На данный момент новые процессы (разветвленные процессы) занимают только 0% ЦП. иногда 0,1%. Я хочу, чтобы он взял введенный% ex..25%
#include <ctype.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <signal.h>
printf("u_interval=%d\n", u_interval);
for (size_t i = 0; i < schedulees_count; ++i) {
schedulee_t *schedulee = schedulees[i];
printf("schedulee %zu: %d%%\n argv: [", i, schedulee->proportion);
for (size_t j = 0; schedulee->argv[j] != NULL; ++j) {
printf("\"%s\", ", schedulee->argv[j]);
}
printf("\b\b]\n");
int pid = fork(); //The parent(>0) and child(0) is formed
if (pid == 0) {
printf("Hello from Child!\n");
execv(schedulee->argv[0], schedulee->argv);
}
// parent process because return value non-zero.
else{
wait(NULL);
printf("Hello from Parent!\n");
schedulee->pid = pid;
kill(pid,SIGSTOP);
}
}
Это часть программы, где он выполняет другие программы (задачи) с помощью команды execv. Но новый Процесс занимает только 0,0% процессорного времени. Я хочу, чтобы он занимал, например, 25% процессорного времени.