ComputerScienceExpert

(11)

$18/per page/

About ComputerScienceExpert

Levels Tought:
Elementary,Middle School,High School,College,University,PHD

Expertise:
Applied Sciences,Calculus See all
Applied Sciences,Calculus,Chemistry,Computer Science,Environmental science,Information Systems,Science Hide all
Teaching Since: Apr 2017
Last Sign in: 103 Weeks Ago, 3 Days Ago
Questions Answered: 4870
Tutorials Posted: 4863

Education

  • MBA IT, Mater in Science and Technology
    Devry
    Jul-1996 - Jul-2000

Experience

  • Professor
    Devry University
    Mar-2010 - Oct-2016

Category > Programming Posted 28 Apr 2017 My Price 8.00

CS4315 Operating Systems

CS4315 Operating Systems

Lab 3: Basic Synchronization using Mutex

In this lab work we will do some practice about basic synchronization.

Question 1 is about creating threads and each thread runs a different function.

Question 2 and 3 are about mutex lock (acquiring a lock and releasing a lock).

1. Run the following C program (tprog1.c) and observe the result on the screen.

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include <pthread.h>

// These two functions will run concurrently

void* print_i(void *ptr)

{

printf("I am in in");

}

void* print_j(void *ptr)

{

printf("I am in jn");

}

int main()

{

pthread_t t1,t2;

int rc1 = pthread_create(&t1, NULL, print_i, NULL);

int rc2 = pthread_create(&t2, NULL, print_j, NULL);

exit(0);

}

2. Run the following C program (tprog2.c) and observe the result on the screen. Briefly explain why we may get the interleaving messages from these two processes.

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include <pthread.h>

void* print_i(void *ptr)

{

printf("1: I am n");

sleep(1);

printf("in in");

}

void* print_j(void *ptr)

{

printf("2: I am n");

sleep(1);

printf("in jn");

}

int main()

{

pthread_t t1,t2;

int rc1 = pthread_create(&t1, NULL, print_i, NULL);

int rc2 = pthread_create(&t2, NULL, print_j, NULL);

exit(0);

}

3. Add mutex locks to tprog2.c to achieve synchronization, and then observe the result on your screen.

Submit the following on Blackboard: 1) a text file (e.g. q2.txt) that includes your answer to question 2.

2) tprog3.c (i.e., tprog2.c with mutex lock) 3) a screenshot of running tprog3

If you like you can include 1-3 in one document, e.g. a word file.

Answers

(11)
Status NEW Posted 28 Apr 2017 02:04 AM My Price 8.00

-----------

Attachments

file 1493346817-Solutions file 2.docx preview (51 words )
H-----------ell-----------o S-----------ir/-----------Mad-----------am ----------- Th-----------ank----------- yo-----------u f-----------or -----------you-----------r i-----------nte-----------res-----------t a-----------nd -----------buy-----------ing----------- my----------- po-----------ste-----------d s-----------olu-----------tio-----------n. -----------Ple-----------ase----------- pi-----------ng -----------me -----------on -----------cha-----------t I----------- am----------- on-----------lin-----------e o-----------r i-----------nbo-----------x m-----------e a----------- me-----------ssa-----------ge -----------I w-----------ill----------- be----------- qu-----------ick-----------ly -----------onl-----------ine----------- an-----------d g-----------ive----------- yo-----------u e-----------xac-----------t f-----------ile----------- an-----------d t-----------he -----------sam-----------e f-----------ile----------- is----------- al-----------so -----------sen-----------t t-----------o y-----------our----------- em-----------ail----------- th-----------at -----------is -----------reg-----------ist-----------ere-----------d o-----------n -----------THI-----------S W-----------EBS-----------ITE-----------. ----------- Th-----------ank----------- yo-----------u -----------
Not Rated(0)