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
svlad2 [7]
3 years ago
11

Write a client program that writes a struct with a privateFIFO name (call it FIFO_XXXX, where XXXX is the pid that you got from

the getpid( ) function) to the server. Have the server read the privateFIFO name and write a message back to the client. Read the message and print it on the client side
Computers and Technology
1 answer:
ivann1987 [24]3 years ago
3 0

Answer:

client code:

#include <stdio.h>

#include <fcntl.h>

#include <sys/stat.h>

#include <sys/types.h>

#include <unistd.h>

#include <stdlib.h>

#include <string.h>

int main (void)

{

 struct values

 {

   char privateFIFO[14];

   int intbuff;

 }input;

 int fda;  // common FIFO to read to write to server

 int fdb;      // Private FIFO to read from server

 int clientID;

 int retbuff;

 char temp[14];

 clientID = getpid();

 strcpy(input.privateFIFO, "FIFO_");

 sprintf(temp, "%d", clientID);

 strcat(input.privateFIFO, temp);

 printf("\nFIFO name is %s", input.privateFIFO);

 // Open common FIFO to write to server

 if((fda=open("FIFO_to_server", O_WRONLY))<0)

    printf("cant open fifo to write");

 write(fda, &input, sizeof(input));    // write the struct to the server

 close(fda);

 // Open private FIFO to read

 if((fdb=open(input.privateFIFO, O_RDONLY))<0)

    read(fdb, &retbuff, sizeof(retbuff));

 printf("\nAll done\n");

 close(fdb);

}

server code:

#include <stdio.h>

#include <errno.h>

#include <fcntl.h>

#include <sys/stat.h>

#include <sys/types.h>

#include <unistd.h>

#include <stdlib.h>

#include <string.h>

struct values

 {

   char privateFIFO[14];

   int intbuff;

 }input;

int main (void)

{

 int fda;  //common FIFO to read from client

 int fdb;  //private FIFO to write to client

 int retbuff;

 int output;

// create the common FIFO  

 if ((mkfifo("FIFO_to_server",0666)<0 && errno != EEXIST))

       {

       perror("cant create FIFO_to_server");

       exit(-1);

}

// open the common FIFO

 if((fda=open("FIFO_to_server", O_RDONLY))<0)

    printf("cant open fifo to write");

output = read(fda, &input, sizeof(input));

// create the private FIFO

 if ((mkfifo(input.privateFIFO, 0666)<0 && errno != EEXIST))

 {

   perror("cant create privateFIFO_to_server");

   exit(-1);

 }

 printf("Private FIFO received from the client and sent back from server is: %d", output);

 //open private FIFO to write to client

if((fdb=open(input.privateFIFO, O_WRONLY))<0)

   printf("cant open fifo to read");

 write(fdb, &retbuff, sizeof(retbuff));

 close(fda);

 unlink("FIFO_to_server");

 close(fdb);

 unlink(input.privateFIFO);

}

Explanation:

You might be interested in
A database is used instead of a spreadsheet when?
Luba_88 [7]
Lists involve date with multiple themes. 
5 0
3 years ago
Assuming a computer has a single processor and a single core with no support for parallel execution, explain why running a multi
IRISSAK [1]

Answer:

Explanation:

Before we go deep into this question lets have some brief knowledge on parallel execution, parallel processing and multi tasking.

Parallel Execution : in this two or more tasks or program can be executed parallel or simultaneously.

For example if there are two processors and four programs to be executed then it executes two at a time.

Multi tasking: in this two or more tasks can be performed simultaneously switching between them without exiting any application.

For example we use notepad, word pad, excel sheet, chrome all at a time switching between each other.

Multi Threading: It is splitting up the program into different threads.If the contents in the program are independent on each other then the program can be split into multi threads and can be processed.

Multi threading in multi core or processing unit : In this threads are executed parallel or simultaneously in different processes.

For example if there are two processors then one multi threaded program can execute two threads in two different processors.

Multi threaded program in single core unit : In this, program is multi threaded where as threads cannot execute parallel or simultaneously. they sholud be executed by the same processor. So they should wait in queue

Ex: consider three tasks of 6 secs each and multi threaded each into three threads of two seconds.

Task1 3secs > task2 3secs > task3 3 secs it repeats until each task is completed

Total time taken is 3+3+3+3+3+3+3+3+3 is 18seconds...

If they are executed one by one without multi threading total execution time has no change..

Where as multi threading program has its advantages if different threads are executed at different place..

If one thread executes at network, another at printer and other processor then these three can execute at same time at different processors. Multi threading has its advantages but in single core systems it doesn't affect the performance.

Inter process communication consists of

Information Sharing, message passing, Modularity.

In shared memory inter process communication processes shares the memory between each other.

In message passing communication process communicates like request and replies for information and resources.

Interlocking is due to error in resource sharing and information sharing. It results in system collapse.

Al these process communication is required if there are two or more.processes but in single core it is not much useful and advisable.

In single core there will be a single processor, processing multi threaded program as it can access all the memory contents there will be no problem of process communication. Where as in multi core systems different processes may compete for same memory or resource.

In single core systems inter process communication makes things complex and these complexity is not much useful in any of the improvement in performance.

4 0
3 years ago
(GAME DESIGN)
Sliva [168]

Answer:

A. When an object is in a specific position on a frame

Explanation:

In the testing phase of a new game, the errors of the programming process are corrected and the gameplay is improved as the game is tested. The objective of correcting serious defects and improving fundamental characteristics not contemplated in the design document, detecting minor failures and profiling the user experience.

8 0
3 years ago
A consumer is the name for:
hodyreva [135]

Answer:

A. a person who buys and uses products and services

7 0
3 years ago
Read 2 more answers
Write the code to call the function named send_signal. there are no parameters for this function.
nikklg [1K]

<em>*Assuming JavaScript</em>

Answer:

function send_signal() {}

send_signal() // calls the function

Explanation:

3 0
2 years ago
Other questions:
  • What is this line of code doing? scanf("%f", &amp;height);
    6·1 answer
  • . Which of the following is NOT an option for increasinghard drive storage space?
    6·1 answer
  • Which small-group format would be most appropriate for the following situation? A large sporting event is coming to town. Key me
    14·2 answers
  • Having just one error on a cover letter may eliminate an applicant from being considered for employment?
    13·1 answer
  • What is a traffic controller?what are its functions?
    13·1 answer
  • Why should the drives be segregated in a computer?​
    15·1 answer
  • #Write a function called hide_and_seek. The function should #have no parameters and return no value; instead, when #called, it s
    7·1 answer
  • WILL GIVE BRAINLIEST ANSWER!!!<br><br> How do you manage your screen time?
    8·2 answers
  • A digital forensic analyst examines the original digital source (e.g. computer, flash drive, backup tape) suspected of being inv
    5·1 answer
  • In a List of Positive Integers, Set MINIMUM to 1. For each number X in the list L, compare it to MINIMUM. If X is smaller, set M
    11·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!