OneCompiler

OS5

137

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
pid_t child_pid = fork();
if (child_pid == 0) {
printf("Child process with PID: %d\n", getpid());
nice(10);
printf("Child process priority increased\n");
} else if (child_pid > 0) {
printf("Parent process with PID: %d\n", getpid());
wait(NULL);
} else {
perror("Fork failed");
return 1;}
return 0;}

#2
#include <stdio.h>
int main() {
int n = 3, referenceString[] = {3, 4, 5, 6, 3, 4, 7, 3, 4, 5, 6, 7, 2, 4, 6};
int memory[n], faults = 0, i = 0;
for (int j = 0; j < n; j++) memory[j] = -1;
printf("Page Scheduling using FIFO:\n");
for (int r = 0; r < 15; r++) {
int page = referenceString[r], found = 0;
for (int j = 0; j < n; j++) {
if (memory[j] == page) {
found = 1;
break;}}
if (!found) {
faults++;
if (memory[i % n] != -1) {
printf("Page %d replaced by Page %d\n", memory[i % n], page);}
memory[i % n] = page;
i++;
printf("Page %d -> Page Fault\nMemory: ", page);
for (int j = 0; j < n; j++) {
printf("%d ", memory[j]);}
printf("\n");}}
printf("Total Page Faults: %d\n", faults);
return 0;