Answered step by step
Verified Expert Solution
Question
1 Approved Answer
#include #include #include #include /** In this system, there are 2 typesOfProcesses - A and B. A and B processes can safely run at the
#include#include #include #include /** In this system, there are 2 typesOfProcesses - A and B. A and B processes can safely run at the same time - they don't affect each other. Only 2 As can safely run at the same time. Only 3 Bs can safely run at the same time. Use semaphores to enforce this constraint. **/ void *typeA(void *arg) { printf("Starting A "); sleep(1); printf("A finished. "); return NULL; } void *typeB(void *arg) { printf("Starting B "); sleep(1); printf("B finished. "); return NULL; } int main(int argc, char **argv) { pthread_t tid[10]; pthread_attr_t attr; int i; for (i = 0; i < 5; i++) { pthread_create(&tid[i], NULL, typeA, NULL); } for (i = 5; i < 10; i++) { pthread_create(&tid[i], NULL, typeB, NULL); } for (i = 0; i < 10; i++) { pthread_join(tid[i], NULL); } printf("Everything finished. "); }
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started