1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Ipatiy [6.2K]
3 years ago
5

Write a program that calls fork(). Before calling fork(), have the main process access a variable (e.g., x) and set its value to

some-thing (e.g., 100). What value is the variable in the child process? What happens to the variable when both the child and parent change the value of x? Write out the code to your program. Run the program and show your result. What value is the variable in the child process? What happens to the variable when both the child and parent change the value of x?

Computers and Technology
1 answer:
vesna_86 [32]3 years ago
7 0

Answer:

Here is the program:

#include <stdio.h>  //to use input output functions

#include <unistd.h> //provides access to the POSIX OS API

int main() { //start of main function

   int x;  //declare an int type variable x

   x = 100;  // sets the value of x to 100

   int r = fork();  //calls fork() method to create a new process. r is used to store the value returned by fork()

   if(r<0){  //if fork() returns -1 this means no child process is created

           fprintf(stderr, "Error");}     //prints the error message using standard error stream

  else if (r == 0)     {  //if fork returns 0 this means child process is created

       printf("This is child process\n");  //prints this message

       x = 150;  //changes value of x to 150

       printf("Value of x in child process: %d\n", x);     }  //prints the new value of x in child process

   else      {

       printf("This is parent process\n");  //if r>0

       x = 200;  //changes value of x to 200

       printf("Value of x in parent process: %d\n", x);     }  } //prints the new value of x in parent process

Explanation:

The program is well explained in the comments added to each line of the code. The answers to the rest of the questions are as follows:

What value is the variable in the child process?

The variable x is set to 150 in child process. So the printf() statement displays 150 on the screen.

What happens to the variable when both the child and parent change the value of x?

fork() creates a copy of parent process. The child and parent processes have their own private address space. Therefore none of the both processes cannot interfere in each other's memory. The both maintain their own copy of variables. So, when parent process prints the value 200 and child process prints the value 150.

In order to see which is the final value of x, lets write a statement outside all of the if else statements:

  printf("Final value of x: %d\n", x);

This line is displayed after the value of parent class i.e. 200 is printed on the screen and it shows:

Final value of x: 200

Note this is the value of x in parent process

However the same line displayed after the value of child class i.e. 150 is printed on the screen and it shows:

Final value of x: 150

The screenshot of the program along with the output is attached.

You might be interested in
Will mark Brainliest!! What is the best hard disk compacity? Why?
choli [55]

Answer:

The SeaGate FireCuda is the best hybrid hard drive.

Explanation:

The SeaGate FireCuda is the best hybrid hard drive on the market. It can fit up to 2TB of data, and then its 8GB of solid state cache storage learns which data you use most, so that you can access it quickly. That speed boost is even sweeter when you consider that this drive spins at 7,200rpm.

3 0
2 years ago
2a
zmey [24]

Answer:

See explaination

Explanation:

2a)

A hacker group hacked into the Bay Area Rapid Transit system, this was done to protest BART’s shut down of wireless communication in some BART stations. Such attacks is done mostly to stand for some situation which happened previously. Hence, we can say it is a form a hacktivism. It was not ethical as it disrupted the system for some time.But this is also a form of protest which is been done by some group of peoples.

2b)

If a foreign government launches a hacking attack, it can be considered a war.

If this type of attack happens then the repercussions may result to the war.

2c)

We gave an analogy between merchants accepting some amount of shoplifting, on the one hand, and merchants and credit card companies accepting some amount of credit card fraud, on the other hand.

THe streght so called can be pointed out as the money is rolling in the market and the business keeps on going.

The weakness can be described as the loss which is being incurred by the company.

7 0
3 years ago
How to take a key off a keyboard without breaking it?
klio [65]
You can carfully wedge something in between the key and gently pull up 
4 0
3 years ago
Peter works on a huge database of numerical figures in a worksheet ranging from cell A1 to cell I50. He has to print the workshe
bekas [8.4K]

Answer:

Landscape or vertical page orientation

Explanation:

In landscape  he can mange the number of cell that are required to print on A4 page size.

On landscape orientation of the page we can add more columns of the sheet. That is the reason, we should choose landscape or horizontal page orientation to adjust all columns on the single page.

8 0
3 years ago
Read 2 more answers
A thick black line around the outside edge of a page is a _____.
Montano1993 [528]
B. Border. It borders the outer page.
7 0
3 years ago
Read 2 more answers
Other questions:
  • Anti-bullying laws in most states are designed to provide
    14·2 answers
  • Conceptual note-taking is the act of
    15·1 answer
  • People with healthy media diets:
    12·1 answer
  • A BufferedReader has a constructor that takes a single InputStreamReader parameter. InputStreamReader has a constructor that tak
    8·1 answer
  • What command is most effective at identifying different types of files?
    6·1 answer
  • Which statistical measurement tools should be
    8·1 answer
  • Ryo currently earns a monthly salary of $2200. She has been offered a raise of $250 per month. How much more will she earn per y
    14·1 answer
  • Quiénes se benefician de la realidad virtual​
    12·1 answer
  • 2ND LAST QUESTION
    13·1 answer
  • Can you please help me with this crossword puzzle, I am having trouble with numbers 5 down and 22 across.
    5·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!