This document outlines 13 experiments related to distributed systems programming. The experiments cover topics like interprocess communication using pipes, multithreaded file access, deadlock scenarios, client-server programs using TCP and UDP sockets, load balancing, and program migration in Mosix clusters.
Download as DOCX, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
71 views
Distributed PS
This document outlines 13 experiments related to distributed systems programming. The experiments cover topics like interprocess communication using pipes, multithreaded file access, deadlock scenarios, client-server programs using TCP and UDP sockets, load balancing, and program migration in Mosix clusters.
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2
Computer Science and Engineering Department,
List of the Experiment/Program
Distributed System Lab 1 Develop a program in which the parent process sends an array and an element to its child process through a pipe; the child searches the array for the element and returns the result through a pipe. The array size should be taken as input from the user. 2 Develop a program in which the parent process sends two matrices to its child process through a pipe and the child process returns the sum of the matrices to the parent through a pipe. The parent should print the result. 3 Suppose there is exist a file and you have to read, write and update the file concurrently. Write a multithreaded program such that, there should be different threads for all different tasks and each thread access the file synchronously. Note: Use Mutex 4 Write a program to implement a deadlock scenario, in which two threads are accessing two resources concurrently. 5 Write a program to implement for deadlock avoidance using conditional locking in which two threads are accessing two resources concurrently. Note: user pthread_mutex_trylock() function for conational locking 6 Implement a client-server program in which the server accepts a string from a client and transfer the upper-case string to client using TCP socket in C. Example: client send “abcdXjhiB” and in reply Server replies “ABCDXJHIB” 7 Implement a client-server program in which the server accepts a string from a client and transfer the upper-case string to client using UDP socket in C. Example: client send “abcdXjhiB” and in reply Server replies “ABCDXJHIB” 8 Implement a client-server program in which the server accepts a connection from a client and updates it own Master table by adding the client information and send the updated table to client, so client can update their own table. Table format: Node No Ip Address Port no 1 172.31.100.36 2345 2 172.31.100.40 3128 3 172.31.100.52 2323 9 Develop a client-server program to implement a date-time server and client. Upon connection establishment, the server should send its current date, time and CPU load information to its clients. 10 Suppose you have two TCP servers for converting a lower case string to upper case string. You have to design a load balancer server that accept lower case string from client and check for the CPU utilization of both servers. Load balancer will transfer the string to the server having less CPU utilization. The load balancer will get upper case string from server and return to the clients. 11 Mosix cluster configuration, basic commands Hands-on. 12 Write a C program that generate false load on a Mosix node. Use Mosix commands to check the loads of each node of the Mosix cluster and migrate the program to the node that has minimum load by using Mosix commands. 13 Write a c program for the Mosix environment such that program check the load of the all nodes in cluster and migrate itself to the node that has minimum load. Note: use Mosix programming interface.