EmbLogic's Blog

Implemented Pipes through Signals for 3 clients

RCS file: header.h,v
Working file: header.h
head: 1.1
branch:
locks: strict
root: 1.1
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;    selected revisions: 1
description:
Declared stdio.h,stdlib.h,unistd.h
Declred the prototype for invoke_req_clients()
Gave the prototype for struct req_client which include one operator and two operand.
Gave the prototype for invoke_pro_clients()
—————————-
revision 1.1    locked by: root;
date: 2015/04/15 06:24:56;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: req_add.c,v
Working file: req_add.c
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;    selected revisions: 1
description:
This is requesting client .
Wrote the request containing one operator and two operands to the server using pipe and signals
Declared signal handler and signal handler function.
At last reading result from the server.
—————————-
revision 1.1
date: 2015/04/15 06:32:51;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: req_sub.c,v
Working file: req_sub.c
head: 1.1
branch:
locks: strict
root: 1.1
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;    selected revisions: 1
description:
This is requesting client for subtract operation
Wrote the request to the server using pipes and signals
Declared signal handler and signal handler function.
At last reading result form the server./
—————————-
revision 1.1    locked by: root;
date: 2015/04/15 06:36:58;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: req_mul.c,v
Working file: req_mul.c
head: 1.2
branch:
locks: strict
root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;    selected revisions: 2
description:
This is requesting is requesting client for multiplication operation.
Wrote the request to the server using pipes and signals.
Declared signal handler and siagnal hander function.
—————————-
revision 1.2    locked by: root;
date: 2015/04/15 06:56:57;  author: root;  state: Exp;  lines: +0 -2
Accepting the result from the server.
..
—————————-
revision 1.1
date: 2015/04/15 06:43:56;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: adder.c,v
Working file: adder.c
head: 1.2
branch:
locks: strict
root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;    selected revisions: 2
description:
This is processing client for add operation.
Accepting the request from the server.
through pipes
Performing the add operation.
and generating the result.
—————————-
revision 1.2    locked by: root;
date: 2015/04/15 07:28:57;  author: root;  state: Exp;  lines: +1 -1
Wrote the result back to the server..
used the kill() signal .
—————————-
revision 1.1
date: 2015/04/15 07:23:37;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: subtractor.c,v
Working file: subtractor.c
head: 1.2
branch:
locks: strict
root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;    selected revisions: 2
description:
This is processing client.
Accepting the request from the server through pipes.
Generating the result.
—————————-
revision 1.2    locked by: root;
date: 2015/04/15 07:34:07;  author: root;  state: Exp;  lines: +1 -1
Sending result back to server.
—————————-
revision 1.1
date: 2015/04/15 07:33:27;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: multiplier.c,v
Working file: multiplier.c
head: 1.2
branch:
locks: strict
root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;    selected revisions: 2
description:
This is processing client .
Accepting the request from the server through pipes.
Processing the request and generating the result.
—————————-
revision 1.2    locked by: root;
date: 2015/04/15 07:40:14;  author: root;  state: Exp;  lines: +1 -1
Sending the result back to server.
—————————-
revision 1.1
date: 2015/04/15 07:39:36;  author: root;  state: Exp;
Initial revision
=============================================================================

RCS file: server.c,v
Working file: server.c
head: 1.2
branch:
locks: strict
root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;    selected revisions: 2
description:
Accepting different requests from 3 requesting clients that are req_add(),req_sub(),req_mul().
Through pipes
Created another pipe between server and 3 processing clients.
invoked the pro_clients and passed all 3 requests to the differnt pro_clients through pipes.
—————————-
revision 1.2    locked by: root;
date: 2015/04/15 07:16:02;  author: root;  state: Exp;  lines: +0 -1
Accepting the result from the pro_clients through pipe.
Sending back the result to req_clients through pipe.
Also use the signals for synchronization.
—————————-
revision 1.1
date: 2015/04/15 07:10:44;  author: root;  state: Exp;
Initial revision
=============================================================================

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>