to be placed to prevent the race condition(s). Could we replace the integer variable: int number_of_processes = 0   with the atomic integer:

Microsoft Visual C#
7th Edition
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Joyce, Farrell.
Chapter8: Advanced Method Concepts
Section: Chapter Questions
Problem 7RQ
icon
Related questions
Question

Consider the code example for allocating and releasing processes shown. 

  • Identify the race condition(s).
  • Assume you have a mutex lock named mutex with the operations acquire() and release(). Indicate where the locking needs to be placed to prevent the race condition(s).

Could we replace the integer variable:

int number_of_processes = 0  

with the atomic integer: 

atomic_t number_of_processes = 0  

to prevent the race condition(s)? Explain.

#define MAX_PROCESSES 255
int number_of_processes
0;
%3D
/* the implementation of fork() calls this function */
int allocate_process() {
int new_pid;
if (number_of_processes
MAX_PROCESSES)
==
return -1;
else {
/* allocate necessary process resources */
++number_of_processes;
return new_pid;
}
}
/* the implementation of exit() calls this function */
void release_process() {
/* release process resources
--number_of_processes;
Transcribed Image Text:#define MAX_PROCESSES 255 int number_of_processes 0; %3D /* the implementation of fork() calls this function */ int allocate_process() { int new_pid; if (number_of_processes MAX_PROCESSES) == return -1; else { /* allocate necessary process resources */ ++number_of_processes; return new_pid; } } /* the implementation of exit() calls this function */ void release_process() { /* release process resources --number_of_processes;
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Time complexity
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,
Systems Architecture
Systems Architecture
Computer Science
ISBN:
9781305080195
Author:
Stephen D. Burd
Publisher:
Cengage Learning