#include <stdlib.h> #include <sys/wait.h> #include <unistd.h> constexpr int LOOP_COUNT = 100000000; volatile int a[2]; void ParentFunction() { volatile int* p = a + atoi("0"); for (int i = 0; i < LOOP_COUNT; ++i) { *p = i; } } void ChildFunction() { volatile int* p = a + atoi("1"); for (int i = 0; i < LOOP_COUNT; ++i) { *p = i; } } int main() { while (true) { pid_t pid = fork(); if (pid == 0) { ChildFunction(); return 0; } else { ParentFunction(); waitpid(pid, nullptr, 0); } } return 0; }