Question: 2. In the following example, assume that all system and library calls complete without error. Also assume each program statement is atomic. (a) Please

image text in transcribed 

2. In the following example, assume that all system and library calls complete without error. Also assume each program statement is atomic. (a) Please write down all possible outputs when running this program. [3] int main () { int i = 1; if (fork()) i++; elseif (fork()) --; else i++; printf("%d ", i); } (b) Please briefly explain why the output is not deterministic. [1] (c) How many processes are created in total by the operating system when running this program? [1]

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

provided is written in C and uses the fork system call to create child processes The fork system call duplicates the calling process creating a child ... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!