EmbLogic's Blog

client server communication using FIFO is implemented successfully.

RCS file: client1.c,v
Working file: client1.c
head: 1.3
branch:
locks: strict
root: 1.3
access list:
symbolic names:
keyword substitution: kv
total revisions: 3; selected revisions: 3
description:
This is client1.c file
opened SERVER_FIFO in O_WRONLY mode.
prepare a request.
—————————-
revision 1.3 locked by: root;
date: 2015/03/19 06:53:15; author: root; state: Exp; lines: +9 -1
open CLIENT1_FIFO in O_RDONLY mode
read result from server through CLIENT1_FIFO from server.
—————————-
revision 1.2
date: 2015/03/19 06:19:21; author: root; state: Exp; lines: +1 -0
print pid
—————————-
revision 1.1
date: 2015/03/19 06:12:02; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC, Project 6: Client Server using Inter Process Communication Mechanism | Leave a comment

SUCESSFULLY DONE IPC USING PIPES FOR 3 REQUESTING AND 3 PROCESSING CLIENTS….

RCS file: server.c,v
Working file: server.c
head: 1.4
branch:
locks: strict
root: 1.4
access list:
symbolic names:
keyword substitution: kv
total revisions: 4; selected revisions: 4
description:
This is the base file for IPC using pipes…..
Here request is sent by 3 requesting clients to the server….
The requests are received by the server…
—————————-
revision 1.4 locked by: root;
date: 2015/03/18 12:53:03; author: root; state: Exp; lines: +0 -2
Result from processing clients is forwarded back to requesting clients by the server.
Signals are used to provide synchronization and to avoid “Block on read” and Block on write conditions.
SUCESSFULLY DONE IPC USING PIPES FOR 3 REQUESTING AND 3 PROCESSING CLIENTS….
—————————-
revision 1.3
date: 2015/03/18 12:49:36; author: root; state: Exp; lines: +0 -10
Result from processing clients is received by the processing clients….
Signals are used to provide synchronization and to avoid “Block on read” or “Block on write”.
—————————-
revision 1.2
date: 2015/03/18 12:46:33; author: root; state: Exp; lines: +1 -54
Request from the requesting clients is forwarded to processing clients by the server.
—————————-
revision 1.1
date: 2015/03/18 12:43:36; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC | Leave a comment

client-server using MESSAGEQUEUE

head 1.7;
access;
symbols;
locks
ashish:1.7; strict;
comment @ * @;

1.7
date 2015.03.16.21.25.33; author ashish; state Exp;
branches;
next 1.6;

1.6
date 2015.03.16.21.22.29; author ashish; state Exp;
branches;
next 1.5;

1.5
date 2015.03.16.21.17.18; author ashish; state Exp;
branches;
next 1.4;

1.4
date 2015.03.16.21.09.27; author ashish; state Exp;
branches;
next 1.3;

1.3
date 2015.03.16.21.07.19; author ashish; state Exp;
branches;
next 1.2;

1.2
date 2015.03.16.21.03.47; author ashish; state Exp;
branches;
next 1.1;

1.1
date 2015.03.16.17.18.55; author ashish; state Exp;
branches;
next ;

desc
@including the header
creating a message queue for for receing and sending the data.
creating another msgque for receiving and sending the result
@

1.7
log
@now the received result would be written in the req client using msgsnd()
@
text
@#include”header_mq.h”//header containing the header files ,a structure which is having the variable for number and operator,union semun used for semaphore,and a sem buffer//

int main()
{
int mq_req,mq_res,mq_send,mq_recv,ret,p1[2],w1,result;
char a[4],b[4];
struct mesg req;
mq_req=msgget(620,IPC_CREAT|0666);//creating the message queue for requesting which have the a unique keyid,and mode//
if(mq_req==-1)
{
printf(“error\n”);
exit(1);
}
printf(“created for sending req\n”);
mq_res=msgget(720,IPC_CREAT|0666);//creating another message queue for taking result,with another unique keyid,and the mod//
if(mq_res==-1)
{
printf(“error1\n”);
exit(1);
}
printf(“created for result\n”);
while(1)
{
mq_recv=msgrcv(mq_req,&req,sizeof(struct mesg),0,0);//s is the message receive fun() which will receive the message from the mesg queue,where the argu says,id which have been return by the mesg queue creat(),second is the ptr which will point to the message receive,then size of the mesg pntd by the ptr,mesg type,and messg flag//

if(mq_recv==-1)
{
printf(“error2\n”);
exit(1);
}
printf(“created for receiving\n”);

printf(“readed data is %d %c %d\n”,req.data.num1,req.data.operator,req.data.num2);//here the data from the client have been received by the use of mmessg recv()//
pipe(p1);//createing the pipe for accessing the procc client//
printf(“pipe1 have been created\nrfd->%d\nwfd->%d\n”,p1[0],p1[1]);
ret=fork();//fork have been done to creat a child and parent proceess//
if(ret==0)
{
printf(“child\n”);
printf(“c1\n”);
write(p1[1],&req,sizeof(struct mesg));//writing the data in the process client using write(),and doing the execl to enter in proc clint//
sprintf(a,”%d”,p1[0]);
sprintf(b,”%d”,p1[1]);
printf(“c2\n”);
// execl(“/home/ashish/ash/pj3/messagequeue/proc”,”./proc”,a,b,NULL);//use to access the proc where the switch is used to go in diff operation such as,addition,sub,div,ettc,,//
}
else
{ wait(&w1);
printf(“parent\n”);
// read(p1[0],&result,sizeof(int));//reading the result from the proc client//
printf(“server result->%d\n”,result);
mq_send=msgsnd(mq_res,&result,sizeof(int),0);//here the received result is send to the req client,where the final result is stored//
}

}
}
@

1.6
log
@result have been written to the parent by the proc client
@
text
@d50 1
a50 1
read(p1[0],&result,sizeof(int));//reading the result from the proc client//
@

1.5
log
@*** empty log message ***
@
text
@d45 1
a45 1
execl(“/home/ashish/ash/pj3/messagequeue/proc”,”./proc”,a,b,NULL);//use to access the proc where the switch is used to go in diff operation such as,addition,sub,div,ettc,,//
@

1.4
log
@writing the data received from req client to the proc client
then accessing the proc client by doing the execl.
@
text
@d45 1
a45 1
// execl(“/home/ashish/ash/pj3/messagequeue/proc”,”./proc”,a,b,NULL);//use to access the proc where the switch is used to go in diff operation such as,addition,sub,div,ettc,,//
@

1.3
log
@now a pipe is created which returns the fd for read and write.
doing a fork so that a child andd parent can be created.
reading the data before doing fork,from the req client
@
text
@d45 1
a45 1
execl(“/home/ashish/ash/pj3/messagequeue/proc”,”./proc”,a,b,NULL);//use to access the proc where the switch is used to go in diff operation such as,addition,sub,div,ettc,,//
@

1.2
log
@now putting a while loop.
in this loop furthe programming would be done
now creting a messg receving (),which will have the arg as,1.id return by the mesgque created,2.a ptr which will points to the messg to be received,3.this is the size of the message pts by the ptr,and then messg type and flag
@
text
@d32 1
@

1.1
log
@Initial revision
@
text
@d25 1
@

Posted in Project 03: Client Server Communication using Linux and IPC | Leave a comment

Conversion of string to integer successfully done.

RCS file: 14.c,v
Working file: 14.c
head: 1.1
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 1; selected revisions: 1
description:
This is the base file for the program.
HERE STRING IS CONVERTED INTO INTEGER.
AFTER CONVERTING INTEGER ARRAY IS CONVERTED INTO AN INTEGER VARIABLE.
—————————-
revision 1.1
date: 2015/03/15 11:14:00; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Data Structures with C | Leave a comment

communication between 6 client through server using ipc is successfully done.

RCS file: header.h,v
Working file: header.h
head: 1.11
branch:
locks: strict
root: 1.11
access list:
symbolic names:
keyword substitution: kv
total revisions: 11; selected revisions: 11
description:
This is header file.
include stdio.h,unistd.h
declare prototype of invoke_req_client function
—————————-
revision 1.11 locked by: root;
date: 2015/03/10 08:27:02; author: root; state: Exp; lines: +1 -0
include signal.h
—————————-
revision 1.10
date: 2015/03/10 08:25:34; author: root; state: Exp; lines: +1 -0
declare prototype for function()
—————————-
revision 1.9
date: 2015/03/10 08:04:39; author: root; state: Exp; lines: +1 -0
declare prototype for read_result function.
—————————-
revision 1.8
date: 2015/03/10 07:43:20; author: root; state: Exp; lines: +1 -1
add ; at end of function prototype.
—————————-
revision 1.7
date: 2015/03/10 07:38:22; author: root; state: Exp; lines: +2 -1
declare prototype for write_request function.
—————————-
revision 1.6
date: 2015/03/10 07:20:40; author: root; state: Exp; lines: +1 -0
declare prototype for read_request function
—————————-
revision 1.5
date: 2015/03/10 06:50:42; author: root; state: Exp; lines: +1 -1
add ; at end of structure
—————————-
revision 1.4
date: 2015/03/10 06:47:22; author: root; state: Exp; lines: +6 -0
declare structure struct request
—————————-
revision 1.3
date: 2015/03/10 06:38:31; author: root; state: Exp; lines: +1 -0
declare prototype for invoke_pro_client
create pipes
create new process using execl
—————————-
revision 1.2
date: 2015/03/10 05:32:37; author: root; state: Exp; lines: +1 -0
include stdlib.h
—————————-
revision 1.1
date: 2015/03/10 05:14:02; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: server.c,v
Working file: server.c
head: 1.49
branch:
locks: strict
root: 1.49
access list:
symbolic names:
keyword substitution: kv
total revisions: 49; selected revisions: 49
description:
This is server.c file.
define invoke_req_client function
create 6 pipe using pipe system call
print all pipes
call invoke_req_client function in main()
—————————-
revision 1.49 locked by: root;
date: 2015/03/10 14:41:12; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.48
date: 2015/03/10 14:38:24; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.47
date: 2015/03/10 14:33:24; author: root; state: Exp; lines: +3 -3
*** empty log message ***
—————————-
revision 1.46
date: 2015/03/10 14:31:48; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.45
date: 2015/03/10 14:30:10; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.44
date: 2015/03/10 14:27:55; author: root; state: Exp; lines: +0 -1
*** empty log message ***
—————————-
revision 1.43
date: 2015/03/10 14:23:10; author: root; state: Exp; lines: +0 -2
*** empty log message ***
—————————-
revision 1.42
date: 2015/03/10 14:18:49; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.41
date: 2015/03/10 14:17:25; author: root; state: Exp; lines: +8 -6
write result to requesting client.
—————————-
revision 1.40
date: 2015/03/10 14:08:37; author: root; state: Exp; lines: +3 -1
print pid of all client
—————————-
revision 1.39
date: 2015/03/10 14:00:53; author: root; state: Exp; lines: +3 -3
*** empty log message ***
—————————-
revision 1.38
date: 2015/03/10 13:58:19; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.37
date: 2015/03/10 13:53:42; author: root; state: Exp; lines: +4 -2
kill all requesting client
—————————-
revision 1.36
date: 2015/03/10 13:40:11; author: root; state: Exp; lines: +2 -0
print pid of client 1
—————————-
revision 1.35
date: 2015/03/10 13:33:40; author: root; state: Exp; lines: +7 -0
if all signal occur then come out from while.
—————————-
revision 1.34
date: 2015/03/10 13:32:31; author: root; state: Exp; lines: +3 -3
*** empty log message ***
—————————-
revision 1.33
date: 2015/03/10 13:31:40; author: root; state: Exp; lines: +3 -3
*** empty log message ***
—————————-
revision 1.32
date: 2015/03/10 13:30:19; author: root; state: Exp; lines: +12 -2
set condition for each signal
—————————-
revision 1.31
date: 2015/03/10 13:28:18; author: root; state: Exp; lines: +2 -1
declare function2()
—————————-
revision 1.30
date: 2015/03/10 13:26:21; author: root; state: Exp; lines: +19 -6
define signal handler fro 3 signal
—————————-
revision 1.29
date: 2015/03/10 08:43:18; author: root; state: Exp; lines: +0 -1
remove pause
—————————-
revision 1.28
date: 2015/03/10 08:40:07; author: root; state: Exp; lines: +4 -6
print i
—————————-
revision 1.27
date: 2015/03/10 08:36:57; author: root; state: Exp; lines: +1 -1
pass fd to read()
—————————-
revision 1.26
date: 2015/03/10 08:35:00; author: root; state: Exp; lines: +8 -6
read one result at a time
—————————-
revision 1.25
date: 2015/03/10 08:31:14; author: root; state: Exp; lines: +1 -0
use pause system call.
—————————-
revision 1.24
date: 2015/03/10 08:28:44; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.23
date: 2015/03/10 08:27:41; author: root; state: Exp; lines: +1 -1
define storage for done variable
—————————-
revision 1.22
date: 2015/03/10 08:26:01; author: root; state: Exp; lines: +12 -1
define function()
—————————-
revision 1.21
date: 2015/03/10 08:15:31; author: root; state: Exp; lines: +4 -1
*** empty log message ***
—————————-
revision 1.20
date: 2015/03/10 08:05:07; author: root; state: Exp; lines: +12 -0
define read_result function
—————————-
revision 1.19
date: 2015/03/10 07:45:48; author: root; state: Exp; lines: +1 -1
chagne argument of write()
—————————-
revision 1.18
date: 2015/03/10 07:45:05; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.17
date: 2015/03/10 07:44:02; author: root; state: Exp; lines: +3 -3
uncomment write_request function
—————————-
revision 1.16
date: 2015/03/10 07:43:02; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.15
date: 2015/03/10 07:41:34; author: root; state: Exp; lines: +1 -1
comment write_request function
—————————-
revision 1.14
date: 2015/03/10 07:40:21; author: root; state: Exp; lines: +1 -1
correct spelling of request
—————————-
revision 1.13
date: 2015/03/10 07:38:44; author: root; state: Exp; lines: +15 -2
define write_request function
write request from server to processing client through pipe.
—————————-
revision 1.12
date: 2015/03/10 07:22:41; author: root; state: Exp; lines: +1 -1
define j
—————————-
revision 1.11
date: 2015/03/10 07:21:11; author: root; state: Exp; lines: +13 -1
define read_request function
—————————-
revision 1.10
date: 2015/03/10 06:39:47; author: root; state: Exp; lines: +36 -0
create pipes
create new process using execl
—————————-
revision 1.9
date: 2015/03/10 06:06:52; author: root; state: Exp; lines: +1 -1
correct spelling of sprintf.
—————————-
revision 1.8
date: 2015/03/10 06:04:20; author: root; state: Exp; lines: +4 -1
convert fd from integer to char using sprintf
pass rfd and wfd to each req_cl.
—————————-
revision 1.7
date: 2015/03/10 05:58:18; author: root; state: Exp; lines: +2 -1
print in default case
—————————-
revision 1.6
date: 2015/03/10 05:55:35; author: root; state: Exp; lines: +6 -5
create new process using execl in child process.
—————————-
revision 1.5
date: 2015/03/10 05:40:06; author: root; state: Exp; lines: +2 -2
comment fork()
—————————-
revision 1.4
date: 2015/03/10 05:37:28; author: root; state: Exp; lines: +0 -2
remove default case
—————————-
revision 1.3
date: 2015/03/10 05:32:52; author: root; state: Exp; lines: +1 -0
print child number.
—————————-
revision 1.2
date: 2015/03/10 05:26:27; author: root; state: Exp; lines: +19 -0
create child process using fork() in invoke_req_client function
—————————-
revision 1.1
date: 2015/03/10 05:14:02; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: multiplier.c,v
Working file: multiplier.c
head: 1.9
branch:
locks: strict
root: 1.9
access list:
symbolic names:
keyword substitution: kv
total revisions: 9; selected revisions: 9
description:
This is multiplier.c file
printf file name and rfd and wfd
—————————-
revision 1.9 locked by: root;
date: 2015/03/10 14:26:29; author: root; state: Exp; lines: +0 -2
*** empty log message ***
—————————-
revision 1.8
date: 2015/03/10 13:27:19; author: root; state: Exp; lines: +1 -1
send signal 4
—————————-
revision 1.7
date: 2015/03/10 08:15:35; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/10 08:06:56; author: root; state: Exp; lines: +1 -0
print request.
—————————-
revision 1.5
date: 2015/03/10 07:59:19; author: root; state: Exp; lines: +4 -3
compute result and write back to server through pipe.
—————————-
revision 1.4
date: 2015/03/10 07:53:57; author: root; state: Exp; lines: +1 -0
define structure variable r
—————————-
revision 1.3
date: 2015/03/10 07:52:50; author: root; state: Exp; lines: +1 -1
define count variable
—————————-
revision 1.2
date: 2015/03/10 07:51:51; author: root; state: Exp; lines: +3 -1
read request from server
—————————-
revision 1.1
date: 2015/03/10 06:40:29; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: adder.c,v
Working file: adder.c
head: 1.7
branch:
locks: strict
root: 1.7
access list:
symbolic names:
keyword substitution: kv
total revisions: 7; selected revisions: 7
description:
This is adder.c file
printf file name and rfd and wfd
—————————-
revision 1.7 locked by: root;
date: 2015/03/10 14:26:25; author: root; state: Exp; lines: +0 -2
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/10 08:15:33; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/10 08:06:37; author: root; state: Exp; lines: +1 -0
print request
—————————-
revision 1.4
date: 2015/03/10 07:59:55; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/10 07:58:32; author: root; state: Exp; lines: +4 -3
compute result and write back to server through pipe.
—————————-
revision 1.2
date: 2015/03/10 07:51:12; author: root; state: Exp; lines: +5 -2
read request from server
—————————-
revision 1.1
date: 2015/03/10 06:40:29; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: subtractor.c,v
Working file: subtractor.c
head: 1.9
branch:
locks: strict
root: 1.9
access list:
symbolic names:
keyword substitution: kv
total revisions: 9; selected revisions: 9
description:
This is subtractor.c file
printf file name and rfd and wfd
—————————-
revision 1.9 locked by: root;
date: 2015/03/10 14:26:28; author: root; state: Exp; lines: +0 -2
*** empty log message ***
—————————-
revision 1.8
date: 2015/03/10 13:26:56; author: root; state: Exp; lines: +1 -1
send signal 3
—————————-
revision 1.7
date: 2015/03/10 08:15:34; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/10 08:06:50; author: root; state: Exp; lines: +1 -0
print request
—————————-
revision 1.5
date: 2015/03/10 07:59:14; author: root; state: Exp; lines: +4 -3
compute result and write back to server through pipe.
—————————-
revision 1.4
date: 2015/03/10 07:53:32; author: root; state: Exp; lines: +1 -0
define structure variable r
—————————-
revision 1.3
date: 2015/03/10 07:52:34; author: root; state: Exp; lines: +1 -1
define count variable
—————————-
revision 1.2
date: 2015/03/10 07:51:28; author: root; state: Exp; lines: +3 -1
read request from server
—————————-
revision 1.1
date: 2015/03/10 06:40:29; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_c1.c,v
Working file: req_c1.c
head: 1.10
branch:
locks: strict
root: 1.10
access list:
symbolic names:
keyword substitution: kv
total revisions: 10; selected revisions: 10
description:
This is req_cl1.c
file
print file name
—————————-
revision 1.10 locked by: root;
date: 2015/03/10 14:25:54; author: root; state: Exp; lines: +0 -2
use pause instead of while.
—————————-
revision 1.9
date: 2015/03/10 14:21:37; author: root; state: Exp; lines: +1 -11
*** empty log message ***
—————————-
revision 1.8
date: 2015/03/10 14:12:20; author: root; state: Exp; lines: +5 -2
*** empty log message ***
—————————-
revision 1.7
date: 2015/03/10 14:10:41; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/10 14:06:23; author: root; state: Exp; lines: +8 -6
print pid
—————————-
revision 1.5
date: 2015/03/10 13:54:09; author: root; state: Exp; lines: +14 -2
read result
—————————-
revision 1.4
date: 2015/03/10 13:41:39; author: root; state: Exp; lines: +1 -0
print pid
—————————-
revision 1.3
date: 2015/03/10 06:57:53; author: root; state: Exp; lines: +7 -1
write request into pipe
—————————-
revision 1.2
date: 2015/03/10 06:10:53; author: root; state: Exp; lines: +5 -1
read rfd and wfd from cmd line argument
convert fd into integer from string using atoi
—————————-
revision 1.1
date: 2015/03/10 05:56:08; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_c2.c,v
Working file: req_c2.c
head: 1.8
branch:
locks: strict
root: 1.8
access list:
symbolic names:
keyword substitution: kv
total revisions: 8; selected revisions: 8
description:
This is req_cl2.c file
print file name
—————————-
revision 1.8 locked by: root;
date: 2015/03/10 14:26:08; author: root; state: Exp; lines: +0 -2
use pause instead of while.
—————————-
revision 1.7
date: 2015/03/10 14:21:39; author: root; state: Exp; lines: +3 -10
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/10 14:10:43; author: root; state: Exp; lines: +2 -1
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/10 14:06:31; author: root; state: Exp; lines: +9 -5
print pid
—————————-
revision 1.4
date: 2015/03/10 13:54:21; author: root; state: Exp; lines: +12 -1
read result
—————————-
revision 1.3
date: 2015/03/10 06:58:23; author: root; state: Exp; lines: +7 -0
write request into pipe
—————————-
revision 1.2
date: 2015/03/10 06:12:30; author: root; state: Exp; lines: +4 -1
convert fd into integer from string using atoi
—————————-
revision 1.1
date: 2015/03/10 05:56:08; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_c3.c,v
Working file: req_c3.c
head: 1.8
branch:
locks: strict
root: 1.8
access list:
symbolic names:
keyword substitution: kv
total revisions: 8; selected revisions: 8
description:
This is req_c2.c file
print file name
—————————-
revision 1.8 locked by: root;
date: 2015/03/10 14:26:20; author: root; state: Exp; lines: +1 -2
use pause instead of while.
—————————-
revision 1.7
date: 2015/03/10 14:21:40; author: root; state: Exp; lines: +3 -10
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/10 14:10:44; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/10 14:06:36; author: root; state: Exp; lines: +8 -5
print pid
—————————-
revision 1.4
date: 2015/03/10 13:54:26; author: root; state: Exp; lines: +13 -1
result
—————————-
revision 1.3
date: 2015/03/10 06:58:36; author: root; state: Exp; lines: +7 -0
write request into pipe
—————————-
revision 1.2
date: 2015/03/10 06:12:45; author: root; state: Exp; lines: +4 -1
convert fd into integer from string using atoi
—————————-
revision 1.1
date: 2015/03/10 05:56:08; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC | Leave a comment

Largest Element Using Function and Array

#include <stdio.h>
int largest(int []);
int largest(int arr[5])
{
int l,i;
l = arr[0];
for(i=1;i<5;i++)
{
if (arr[i] > l)
{
l = arr[i];
}
else ;

//printf(“%d”,l);
}

return l;
}

int main()
{
int i, max;
int arr[5];
printf(“Enter Elements of array:\n”);
for(i=0;i<5;i++)
{
scanf(“%d”, &arr[i]);
}
for(i=0;i<5;i++)
{
printf(“Array->%d of %d\n:”,i,arr[i]);

}
max = largest(arr);
printf(“largest element is %d\n:”, max);
}

“largest_func.c” 38L, 476C                                                                             33,3-17       44%

Posted in Uncategorized | Leave a comment

Addition Using PASS BY VALUE

#include <stdio.h>
int add_num(int, int, int);                                              //function declaration
int add_num(int num1, int num2, int num3)               //function definition
{
int num4;
num4 = num1 + num2 + num3;                        //function body
return num4;
}
int main()
{
int i,x,y,z;
printf(“Enter three numbers:\n”);
scanf(“%d%d%d”,&x,&y,&z );
i = add_num(x,y,z);
printf(“sum of %d , %d and %d is %d:\n”,x,y,z,i
);
}

~
~
~
~
~
~
~
~
~
~
~
6,49-56       All

Posted in Uncategorized | Leave a comment

Project 03: Client Server implementation using PIPES

Here i have used 3 requesting clients and 3 processing clients.
RCS file: header1.h,v
Working file: header1.h
head:
branch:
locks: strict
access list:
symbolic names:
keyword substitution: kv
total revisions: 0
description:
this is the header file.it contains library which are required by programs
contains prototype for functions and structures
=============================================================================
RCS file: server.c,v
Working file: server.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 the server program..here i have created six pipes.
3 each for requesting clients and 3 for processing clients
requesting client will send request to the server and server then transfer the info to the processing clients
processing clients will process that info and send back to the server
server will then transfer the info back to the requesting clients
i have implemented the server program using functions
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: request_client.c,v
Working file: request_client.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 the first requesting client.
Sending request for the addtion.
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:11; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: request_client_mul.c,v
Working file: request_client_mul.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 second requesting client
sending request for the multiplication.
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: request_client_sub.c,v
Working file: request_client_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 the third requesting client
sending request for the subtraction
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: adder.c,v
Working file: adder.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 first processing client
here arithmetic operation”ADDITION” is performed
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: mul.c,v
Working file: mul.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 the second processing client
here arithmetic operation “MULTIPLICATION” is performed.
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: sub.c,v
Working file: 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 the third processing client.
Here arithmetic operation “SUBTRACTION” is performed.
—————————-
revision 1.1 locked by: root;
date: 2015/03/05 00:08:19; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC | Tagged , , | Leave a comment

interprocess communication between files by passing fd.

 


RCS file: fdtransfer.c,v
Working file: fdtransfer.c
head: 1.2
branch:
locks: strict
	root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2;	selected revisions: 2
description:
implementing communication using files(by
passing fd)
----------------------------
revision 1.2	locked by: root;
date: 2015/03/04 17:42:49;  author: root; 
state: Exp;  lines: +12 -8
*** empty log message ***
----------------------------
revision 1.1
date: 2015/03/04 17:41:25;  author: root; 
state: Exp;
Initial revision
=============================================================================

RCS file: b.c,v
Working file: b.c
head: 1.1
branch:
locks: strict
	root: 1.1
access list:
symbolic names:
keyword substitution: kv
total revisions: 1;	selected revisions: 1
description:
----------------------------
revision 1.1	locked by: root;
date: 2015/03/04 17:44:56;  author: root; 
state: Exp;
Initial revision
=============================================================================

Posted in Uncategorized | Leave a comment

Enter Elements in Array

#include <stdio.h>
int main()
{
int i,j;
int r=2,c=3;
int arr[3][4];

printf(“Enter Elements:\n”);
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
scanf(“%d”, &arr[i][j]);
}
}

printf(“Elements of Array:\n”);
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
printf(“%d \t”, arr[i][j]);
}
printf(“\n”);
}
return 0;
}

~
“2d_array.c” 28L, 357C                                                                                 6,2-9         All

Posted in Uncategorized | Leave a comment

Implemented client-server-client communication using IPC

RCS file: headerr.h,v
Working file: headerr.h
head: 1.2
branch:
locks: strict
root: 1.2
access list:
symbolic names:
keyword substitution: kv
total revisions: 2; selected revisions: 2
description:
contain header files
defination of srtuct message
—————————-
revision 1.2 locked by: root;
date: 2015/03/04 06:31:37; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.1
date: 2015/03/04 06:12:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: server.c,v
Working file: server.c
head: 1.6
branch:
locks: strict
root: 1.6
access list:
symbolic names:
keyword substitution: kv
total revisions: 6; selected revisions: 6
description:
implement pipe
make parent nd child using fork()
—————————-
revision 1.6 locked by: root;
date: 2015/03/04 06:31:39; author: root; state: Exp; lines: +3 -4
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/04 06:25:57; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.4
date: 2015/03/04 06:24:01; author: root; state: Exp; lines: +2 -1
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/04 06:19:02; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/04 06:14:29; author: root; state: Exp; lines: +1 -1
define wfd in function invoke_pro()
—————————-
revision 1.1
date: 2015/03/04 06:12:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: add_req_client.c,v
Working file: add_req_client.c
head: 1.1
branch:
locks: strict
root: 1.1
access list:
symbolic names:
keyword substitution: kv
total revisions: 1; selected revisions: 1
description:
declare message structure
—————————-
revision 1.1 locked by: root;
date: 2015/03/04 06:12:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: add_pro_client.c,v
Working file: add_pro_client.c
head: 1.3
branch:
locks: strict
root: 1.3
access list:
symbolic names:
keyword substitution: kv
total revisions: 3; selected revisions: 3
description:
declare message structure
—————————-
revision 1.3 locked by: root;
date: 2015/03/04 06:19:05; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/04 06:15:09; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.1
date: 2015/03/04 06:12:19; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC | Leave a comment


RCS file: fdtransfer.c,v
Working file: fdtransfer.c
head: 1.3
branch:
locks: strict
	root: 1.3
access list:
symbolic names:
keyword substitution: kv
total revisions: 3;	selected revisions: 3
description:
initial program.
----------------------------
revision 1.3	locked by: root;
date: 2015/03/03 17:24:41;  author: root; 
state: Exp;  lines: +1 -1
*** empty log message ***
----------------------------
revision 1.2
date: 2015/03/03 17:21:39;  author: root; 
state: Exp;  lines: +2 -2
giving the data in file by user
----------------------------
revision 1.1
date: 2015/03/03 17:15:21;  author: root; 
state: Exp;
Initial revision
=============================================================================
Posted in Uncategorized | Leave a comment

communication between 4 client process through server is made successfully.

RCS file: header.h,v
Working file: header.h
head: 1.5
branch:
locks: strict
root: 1.5
access list:
symbolic names:
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
This is header file.
include stdio.h unistd.h
—————————-
revision 1.5 locked by: root;
date: 2015/03/02 14:26:15; author: root; state: Exp; lines: +1 -1
write request of process1 to process2
—————————-
revision 1.4
date: 2015/03/02 13:48:02; author: root; state: Exp; lines: +1 -1
chage the prototype for function invoke_req()
—————————-
revision 1.3
date: 2015/03/02 13:05:13; author: root; state: Exp; lines: +1 -0
define prototype for invoke_process()
—————————-
revision 1.2
date: 2015/03/02 10:03:34; author: root; state: Exp; lines: +2 -0
define structure request
define prototype for invoke_req()
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: server.c,v
Working file: server.c
head: 1.31
branch:
locks: strict
root: 1.31
access list:
symbolic names:
keyword substitution: kv
total revisions: 31; selected revisions: 31
description:
This is server.c file
creat pipe
fork process
—————————-
revision 1.31 locked by: root;
date: 2015/03/02 16:25:17; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.30
date: 2015/03/02 16:22:18; author: root; state: Exp; lines: +13 -2
*** empty log message ***
—————————-
revision 1.29
date: 2015/03/02 15:39:28; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.28
date: 2015/03/02 14:57:44; author: root; state: Exp; lines: +3 -2
writing result into pipe for process1
—————————-
revision 1.27
date: 2015/03/02 14:55:41; author: root; state: Exp; lines: +2 -1
*** empty log message ***
—————————-
revision 1.26
date: 2015/03/02 14:50:22; author: root; state: Exp; lines: +4 -3
*** empty log message ***
—————————-
revision 1.25
date: 2015/03/02 14:45:49; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.24
date: 2015/03/02 14:43:22; author: root; state: Exp; lines: +3 -1
read resut from pipe.
—————————-
revision 1.23
date: 2015/03/02 14:33:10; author: root; state: Exp; lines: +3 -2
write requst to new process2
—————————-
revision 1.22
date: 2015/03/02 14:26:47; author: root; state: Exp; lines: +3 -2
write requet of process1 to process2
—————————-
revision 1.21
date: 2015/03/02 14:17:54; author: root; state: Exp; lines: +1 -1
pass rfd and wfd of pipe to execl()
—————————-
revision 1.20
date: 2015/03/02 14:10:23; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.19
date: 2015/03/02 14:09:45; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.18
date: 2015/03/02 14:09:05; author: root; state: Exp; lines: +5 -2
*** empty log message ***
—————————-
revision 1.17
date: 2015/03/02 13:55:37; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.16
date: 2015/03/02 13:52:12; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.15
date: 2015/03/02 13:49:57; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.14
date: 2015/03/02 13:48:31; author: root; state: Exp; lines: +7 -6
implement invoke_req()
—————————-
revision 1.13
date: 2015/03/02 13:19:33; author: root; state: Exp; lines: +1 -0
new process is created using execl()
—————————-
revision 1.12
date: 2015/03/02 13:11:47; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.11
date: 2015/03/02 13:11:10; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.10
date: 2015/03/02 13:09:48; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.9
date: 2015/03/02 13:07:17; author: root; state: Exp; lines: +26 -0
implement invoke_process()
fork process
—————————-
revision 1.8
date: 2015/03/02 10:06:11; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.7
date: 2015/03/02 10:04:37; author: root; state: Exp; lines: +8 -4
implement the invoke_req()
—————————-
revision 1.6
date: 2015/03/02 09:58:34; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/02 09:57:48; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.4
date: 2015/03/02 09:53:09; author: root; state: Exp; lines: +7 -1
reading request from pipe
printing request
—————————-
revision 1.3
date: 2015/03/02 09:38:16; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/02 09:36:52; author: root; state: Exp; lines: +5 -0
creat new process using execl()
pass discriptor to new process
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_cl1.c,v
Working file: req_cl1.c
head: 1.7
branch:
locks: strict
root: 1.7
access list:
symbolic names:
keyword substitution: kv
total revisions: 7; selected revisions: 7
description:
This is req_cl1.c file
prepare a request using structure request.
—————————-
revision 1.7 locked by: root;
date: 2015/03/02 14:55:42; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/02 14:54:02; author: root; state: Exp; lines: +4 -0
reading result from pipe.
printing the result
—————————-
revision 1.5
date: 2015/03/02 09:53:31; author: root; state: Exp; lines: +3 -1
writing request to pipe.
—————————-
revision 1.4
date: 2015/03/02 09:42:53; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/02 09:41:38; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/02 09:40:31; author: root; state: Exp; lines: +4 -0
conver string into integr and print rfd and wfd
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: pro_cl1.c,v
Working file: pro_cl1.c
head: 1.5
branch:
locks: strict
root: 1.5
access list:
symbolic names:
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
This is pro_cl1.c file
print filename
__FILE__ is used
—————————-
revision 1.5 locked by: root;
date: 2015/03/02 14:38:26; author: root; state: Exp; lines: +5 -3
calcute result and write it into pipe.
—————————-
revision 1.4
date: 2015/03/02 14:35:29; author: root; state: Exp; lines: +4 -0
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/02 14:33:32; author: root; state: Exp; lines: +4 -1
read request from pipe
—————————-
revision 1.2
date: 2015/03/02 14:15:54; author: root; state: Exp; lines: +12 -1
read rfd and wfd from pipe and print it
—————————-
revision 1.1
date: 2015/03/02 13:20:06; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: header.h,v
Working file: header.h
head: 1.8
branch:
locks: strict
root: 1.8
access list:
symbolic names:
keyword substitution: kv
total revisions: 8; selected revisions: 8
description:
This is header file.
include stdio.h unistd.h
—————————-
revision 1.8 locked by: root;
date: 2015/03/03 06:54:55; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.7
date: 2015/03/03 06:53:22; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/03 06:33:39; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/02 14:26:15; author: root; state: Exp; lines: +1 -1
write request of process1 to process2
—————————-
revision 1.4
date: 2015/03/02 13:48:02; author: root; state: Exp; lines: +1 -1
chage the prototype for function invoke_req()
—————————-
revision 1.3
date: 2015/03/02 13:05:13; author: root; state: Exp; lines: +1 -0
define prototype for invoke_process()
—————————-
revision 1.2
date: 2015/03/02 10:03:34; author: root; state: Exp; lines: +2 -0
define structure request
define prototype for invoke_req()
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: server.c,v
Working file: server.c
head: 1.89
branch:
locks: strict
root: 1.89
access list:
symbolic names:
keyword substitution: kv
total revisions: 89; selected revisions: 89
description:
This is server.c file
creat pipe
fork process
—————————-
revision 1.89 locked by: root;
date: 2015/03/03 09:00:42; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.88
date: 2015/03/03 09:00:07; author: root; state: Exp; lines: +6 -2
*** empty log message ***
—————————-
revision 1.87
date: 2015/03/03 07:58:04; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.86
date: 2015/03/03 07:52:59; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.85
date: 2015/03/03 07:49:45; author: root; state: Exp; lines: +3 -3
*** empty log message ***
—————————-
revision 1.84
date: 2015/03/03 07:44:44; author: root; state: Exp; lines: +2 -3
reading result from pipe.
—————————-
revision 1.83
date: 2015/03/03 07:42:38; author: root; state: Exp; lines: +2 -2
write request into pipe.
—————————-
revision 1.82
date: 2015/03/03 07:27:52; author: root; state: Exp; lines: +1 -1
create new process using execl.
—————————-
revision 1.81
date: 2015/03/03 07:23:17; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.80
date: 2015/03/03 07:19:40; author: root; state: Exp; lines: +9 -8
*** empty log message ***
—————————-
revision 1.79
date: 2015/03/03 07:07:46; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.78
date: 2015/03/03 06:59:26; author: root; state: Exp; lines: +2 -3
*** empty log message ***
—————————-
revision 1.77
date: 2015/03/03 06:54:56; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.76
date: 2015/03/03 06:53:23; author: root; state: Exp; lines: +6 -7
*** empty log message ***
—————————-
revision 1.75
date: 2015/03/03 06:48:59; author: root; state: Exp; lines: +4 -3
*** empty log message ***
—————————-
revision 1.74
date: 2015/03/03 06:33:44; author: root; state: Exp; lines: +22 -4
create new process by using invoke_process function.
—————————-
revision 1.73
date: 2015/03/03 06:26:34; author: root; state: Exp; lines: +3 -3
*** empty log message ***
—————————-
revision 1.72
date: 2015/03/03 06:26:00; author: root; state: Exp; lines: +4 -2
*** empty log message ***
—————————-
revision 1.71
date: 2015/03/03 06:21:08; author: root; state: Exp; lines: +26 -26
*** empty log message ***
—————————-
revision 1.70
date: 2015/03/03 06:12:28; author: root; state: Exp; lines: +2 -0
read pipe
—————————-
revision 1.69
date: 2015/03/03 06:08:31; author: root; state: Exp; lines: +1 -4
*** empty log message ***
—————————-
revision 1.68
date: 2015/03/03 06:05:56; author: root; state: Exp; lines: +4 -6
*** empty log message ***
—————————-
revision 1.67
date: 2015/03/03 06:02:57; author: root; state: Exp; lines: +1 -2
create new process using execl and pass fd
—————————-
revision 1.66
date: 2015/03/03 06:02:03; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.65
date: 2015/03/03 06:01:38; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.64
date: 2015/03/03 06:00:18; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.63
date: 2015/03/03 05:57:45; author: root; state: Exp; lines: +3 -4
*** empty log message ***
—————————-
revision 1.62
date: 2015/03/03 05:53:05; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.61
date: 2015/03/03 05:52:06; author: root; state: Exp; lines: +1 -4
*** empty log message ***
—————————-
revision 1.60
date: 2015/03/03 05:50:52; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.59
date: 2015/03/03 05:49:14; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.58
date: 2015/03/03 05:48:19; author: root; state: Exp; lines: +2 -0
*** empty log message ***
—————————-
revision 1.57
date: 2015/03/03 05:47:08; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.56
date: 2015/03/03 05:46:27; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.55
date: 2015/03/03 05:45:42; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.54
date: 2015/03/03 05:43:31; author: root; state: Exp; lines: +2 -1
*** empty log message ***
—————————-
revision 1.53
date: 2015/03/03 05:41:48; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.52
date: 2015/03/03 05:40:46; author: root; state: Exp; lines: +4 -2
*** empty log message ***
—————————-
revision 1.51
date: 2015/03/03 05:39:08; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.50
date: 2015/03/03 05:38:34; author: root; state: Exp; lines: +3 -2
*** empty log message ***
—————————-
revision 1.49
date: 2015/03/03 05:37:31; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.48
date: 2015/03/03 05:36:15; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.47
date: 2015/03/03 05:34:35; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.46
date: 2015/03/03 05:34:04; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.45
date: 2015/03/03 05:32:50; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.44
date: 2015/03/03 05:31:15; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.43
date: 2015/03/03 05:29:31; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.42
date: 2015/03/03 05:28:04; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.41
date: 2015/03/03 05:23:00; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.40
date: 2015/03/03 05:22:38; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.39
date: 2015/03/03 05:17:31; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.38
date: 2015/03/03 05:15:01; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.37
date: 2015/03/03 05:12:51; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.36
date: 2015/03/03 05:12:16; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.35
date: 2015/03/03 05:09:47; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.34
date: 2015/03/03 05:05:42; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.33
date: 2015/03/03 05:04:46; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.32
date: 2015/03/03 04:53:46; author: root; state: Exp; lines: +2 -1
fork process
create new process un frork using execl
pass fd to req_client2
—————————-
revision 1.31
date: 2015/03/02 16:25:17; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.30
date: 2015/03/02 16:22:18; author: root; state: Exp; lines: +13 -2
*** empty log message ***
—————————-
revision 1.29
date: 2015/03/02 15:39:28; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.28
date: 2015/03/02 14:57:44; author: root; state: Exp; lines: +3 -2
writing result into pipe for process1
—————————-
revision 1.27
date: 2015/03/02 14:55:41; author: root; state: Exp; lines: +2 -1
*** empty log message ***
—————————-
revision 1.26
date: 2015/03/02 14:50:22; author: root; state: Exp; lines: +4 -3
*** empty log message ***
—————————-
revision 1.25
date: 2015/03/02 14:45:49; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.24
date: 2015/03/02 14:43:22; author: root; state: Exp; lines: +3 -1
read resut from pipe.
—————————-
revision 1.23
date: 2015/03/02 14:33:10; author: root; state: Exp; lines: +3 -2
write requst to new process2
—————————-
revision 1.22
date: 2015/03/02 14:26:47; author: root; state: Exp; lines: +3 -2
write requet of process1 to process2
—————————-
revision 1.21
date: 2015/03/02 14:17:54; author: root; state: Exp; lines: +1 -1
pass rfd and wfd of pipe to execl()
—————————-
revision 1.20
date: 2015/03/02 14:10:23; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.19
date: 2015/03/02 14:09:45; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.18
date: 2015/03/02 14:09:05; author: root; state: Exp; lines: +5 -2
*** empty log message ***
—————————-
revision 1.17
date: 2015/03/02 13:55:37; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.16
date: 2015/03/02 13:52:12; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.15
date: 2015/03/02 13:49:57; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.14
date: 2015/03/02 13:48:31; author: root; state: Exp; lines: +7 -6
implement invoke_req()
—————————-
revision 1.13
date: 2015/03/02 13:19:33; author: root; state: Exp; lines: +1 -0
new process is created using execl()
—————————-
revision 1.12
date: 2015/03/02 13:11:47; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.11
date: 2015/03/02 13:11:10; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.10
date: 2015/03/02 13:09:48; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.9
date: 2015/03/02 13:07:17; author: root; state: Exp; lines: +26 -0
implement invoke_process()
fork process
—————————-
revision 1.8
date: 2015/03/02 10:06:11; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.7
date: 2015/03/02 10:04:37; author: root; state: Exp; lines: +8 -4
implement the invoke_req()
—————————-
revision 1.6
date: 2015/03/02 09:58:34; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/02 09:57:48; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.4
date: 2015/03/02 09:53:09; author: root; state: Exp; lines: +7 -1
reading request from pipe
printing request
—————————-
revision 1.3
date: 2015/03/02 09:38:16; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/02 09:36:52; author: root; state: Exp; lines: +5 -0
creat new process using execl()
pass discriptor to new process
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_cl1.c,v
Working file: req_cl1.c
head: 1.7
branch:
locks: strict
root: 1.7
access list:
symbolic names:
keyword substitution: kv
total revisions: 7; selected revisions: 7
description:
This is req_cl1.c file
prepare a request using structure request.
—————————-
revision 1.7 locked by: root;
date: 2015/03/02 14:55:42; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/02 14:54:02; author: root; state: Exp; lines: +4 -0
reading result from pipe.
printing the result
—————————-
revision 1.5
date: 2015/03/02 09:53:31; author: root; state: Exp; lines: +3 -1
writing request to pipe.
—————————-
revision 1.4
date: 2015/03/02 09:42:53; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/02 09:41:38; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/02 09:40:31; author: root; state: Exp; lines: +4 -0
conver string into integr and print rfd and wfd
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_cl2.c,v
Working file: req_cl2.c
head: 1.4
branch:
locks: strict
root: 1.4
access list:
symbolic names:
keyword substitution: kv
total revisions: 4; selected revisions: 4
description:
This req_cl2.c file
read fd from command line argument.
print file discriptor
—————————-
revision 1.4 locked by: root;
date: 2015/03/03 09:03:12; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/03 08:19:25; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/03 06:08:41; author: root; state: Exp; lines: +2 -2
write request into pipe.
—————————-
revision 1.1
date: 2015/03/03 05:00:19; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: pro_cl2.c,v
Working file: pro_cl2.c
head: 1.3
branch:
locks: strict
root: 1.3
access list:
symbolic names:
keyword substitution: kv
total revisions: 3; selected revisions: 3
description:
This is pro_cl2.c file
read fd from cmd line argument.
print fd.
—————————-
revision 1.3 locked by: root;
date: 2015/03/03 07:46:11; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/03 07:45:12; author: root; state: Exp; lines: +3 -3
writing result into pipe.
—————————-
revision 1.1
date: 2015/03/03 07:26:57; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: pro_cl1.c,v
Working file: pro_cl1.c
head: 1.5
branch:
locks: strict
root: 1.5
access list:
symbolic names:
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
This is pro_cl1.c file
print filename
__FILE__ is used
—————————-
revision 1.5 locked by: root;
date: 2015/03/02 14:38:26; author: root; state: Exp; lines: +5 -3
calcute result and write it into pipe.
—————————-
revision 1.4
date: 2015/03/02 14:35:29; author: root; state: Exp; lines: +4 -0
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/02 14:33:32; author: root; state: Exp; lines: +4 -1
read request from pipe
—————————-
revision 1.2
date: 2015/03/02 14:15:54; author: root; state: Exp; lines: +12 -1
read rfd and wfd from pipe and print it
—————————-
revision 1.1
date: 2015/03/02 13:20:06; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC | Leave a comment

communication between two client process through server process is made successfully.

RCS file: header.h,v
Working file: header.h
head: 1.5
branch:
locks: strict
root: 1.5
access list:
symbolic names:
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
This is header file.
include stdio.h unistd.h
—————————-
revision 1.5 locked by: root;
date: 2015/03/02 14:26:15; author: root; state: Exp; lines: +1 -1
write request of process1 to process2
—————————-
revision 1.4
date: 2015/03/02 13:48:02; author: root; state: Exp; lines: +1 -1
chage the prototype for function invoke_req()
—————————-
revision 1.3
date: 2015/03/02 13:05:13; author: root; state: Exp; lines: +1 -0
define prototype for invoke_process()
—————————-
revision 1.2
date: 2015/03/02 10:03:34; author: root; state: Exp; lines: +2 -0
define structure request
define prototype for invoke_req()
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: server.c,v
Working file: server.c
head: 1.31
branch:
locks: strict
root: 1.31
access list:
symbolic names:
keyword substitution: kv
total revisions: 31; selected revisions: 31
description:
This is server.c file
creat pipe
fork process
—————————-
revision 1.31 locked by: root;
date: 2015/03/02 16:25:17; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.30
date: 2015/03/02 16:22:18; author: root; state: Exp; lines: +13 -2
*** empty log message ***
—————————-
revision 1.29
date: 2015/03/02 15:39:28; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.28
date: 2015/03/02 14:57:44; author: root; state: Exp; lines: +3 -2
writing result into pipe for process1
—————————-
revision 1.27
date: 2015/03/02 14:55:41; author: root; state: Exp; lines: +2 -1
*** empty log message ***
—————————-
revision 1.26
date: 2015/03/02 14:50:22; author: root; state: Exp; lines: +4 -3
*** empty log message ***
—————————-
revision 1.25
date: 2015/03/02 14:45:49; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.24
date: 2015/03/02 14:43:22; author: root; state: Exp; lines: +3 -1
read resut from pipe.
—————————-
revision 1.23
date: 2015/03/02 14:33:10; author: root; state: Exp; lines: +3 -2
write requst to new process2
—————————-
revision 1.22
date: 2015/03/02 14:26:47; author: root; state: Exp; lines: +3 -2
write requet of process1 to process2
—————————-
revision 1.21
date: 2015/03/02 14:17:54; author: root; state: Exp; lines: +1 -1
pass rfd and wfd of pipe to execl()
—————————-
revision 1.20
date: 2015/03/02 14:10:23; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.19
date: 2015/03/02 14:09:45; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.18
date: 2015/03/02 14:09:05; author: root; state: Exp; lines: +5 -2
*** empty log message ***
—————————-
revision 1.17
date: 2015/03/02 13:55:37; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.16
date: 2015/03/02 13:52:12; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.15
date: 2015/03/02 13:49:57; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.14
date: 2015/03/02 13:48:31; author: root; state: Exp; lines: +7 -6
implement invoke_req()
—————————-
revision 1.13
date: 2015/03/02 13:19:33; author: root; state: Exp; lines: +1 -0
new process is created using execl()
—————————-
revision 1.12
date: 2015/03/02 13:11:47; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.11
date: 2015/03/02 13:11:10; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.10
date: 2015/03/02 13:09:48; author: root; state: Exp; lines: +4 -4
*** empty log message ***
—————————-
revision 1.9
date: 2015/03/02 13:07:17; author: root; state: Exp; lines: +26 -0
implement invoke_process()
fork process
—————————-
revision 1.8
date: 2015/03/02 10:06:11; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.7
date: 2015/03/02 10:04:37; author: root; state: Exp; lines: +8 -4
implement the invoke_req()
—————————-
revision 1.6
date: 2015/03/02 09:58:34; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.5
date: 2015/03/02 09:57:48; author: root; state: Exp; lines: +1 -0
*** empty log message ***
—————————-
revision 1.4
date: 2015/03/02 09:53:09; author: root; state: Exp; lines: +7 -1
reading request from pipe
printing request
—————————-
revision 1.3
date: 2015/03/02 09:38:16; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/02 09:36:52; author: root; state: Exp; lines: +5 -0
creat new process using execl()
pass discriptor to new process
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: req_cl1.c,v
Working file: req_cl1.c
head: 1.7
branch:
locks: strict
root: 1.7
access list:
symbolic names:
keyword substitution: kv
total revisions: 7; selected revisions: 7
description:
This is req_cl1.c file
prepare a request using structure request.
—————————-
revision 1.7 locked by: root;
date: 2015/03/02 14:55:42; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.6
date: 2015/03/02 14:54:02; author: root; state: Exp; lines: +4 -0
reading result from pipe.
printing the result
—————————-
revision 1.5
date: 2015/03/02 09:53:31; author: root; state: Exp; lines: +3 -1
writing request to pipe.
—————————-
revision 1.4
date: 2015/03/02 09:42:53; author: root; state: Exp; lines: +1 -1
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/02 09:41:38; author: root; state: Exp; lines: +2 -2
*** empty log message ***
—————————-
revision 1.2
date: 2015/03/02 09:40:31; author: root; state: Exp; lines: +4 -0
conver string into integr and print rfd and wfd
—————————-
revision 1.1
date: 2015/03/02 09:31:43; author: root; state: Exp;
Initial revision
=============================================================================

RCS file: pro_cl1.c,v
Working file: pro_cl1.c
head: 1.5
branch:
locks: strict
root: 1.5
access list:
symbolic names:
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
This is pro_cl1.c file
print filename
__FILE__ is used
—————————-
revision 1.5 locked by: root;
date: 2015/03/02 14:38:26; author: root; state: Exp; lines: +5 -3
calcute result and write it into pipe.
—————————-
revision 1.4
date: 2015/03/02 14:35:29; author: root; state: Exp; lines: +4 -0
*** empty log message ***
—————————-
revision 1.3
date: 2015/03/02 14:33:32; author: root; state: Exp; lines: +4 -1
read request from pipe
—————————-
revision 1.2
date: 2015/03/02 14:15:54; author: root; state: Exp; lines: +12 -1
read rfd and wfd from pipe and print it
—————————-
revision 1.1
date: 2015/03/02 13:20:06; author: root; state: Exp;
Initial revision
=============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC | Leave a comment

implementing ipc by using fork() process\

RCS file: replacing.c,v Working file: replacing.c head: 1.1 branch: locks: strict     emblogic: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1;    selected revisions: 1 description: using pid_t command with fork —————————- revision 1.1    locked by: emblogic; date: 2015/02/26 09:54:59;  author: root;  state: Exp; Initial revision =============================================================================  RCS file: replacing.c,v Working file: replacing.c head: 1.1 branch: locks: strict     emblogic: 1.1 access list: symbolic names: keyword substitution: kv total revisions: 1;    selected revisions: 1 description: using pid_t command with fork —————————- revision 1.1    locked by: emblogic; date: 2015/02/26 09:54:59;  author: root;  state: Exp; Initial revision =============================================================================  RCS file: hello.c,v Working file: hello.c head: 1.2 branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 2;    selected revisions: 2 description: print the statement hello friends. , —————————- revision 1.2 date: 2015/02/26 11:33:08;  author: root;  state: Exp;  lines: +4 -0 using atoi command —————————- revision 1.1 date: 2015/02/26 09:54:59;  author: root;  state: Exp; Initial revision =============================================================================  RCS file: header.c,v Working file: header.c head: branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 0 description: use unistd.h =============================================================================  RCS file: replacing.c,v Working file: replacing.c head: 1.15 branch: locks: strict     root: 1.15 access list: symbolic names: keyword substitution: kv total revisions: 15;    selected revisions: 15 description: using pid_t command with fork —————————- revision 1.15    locked by: root; date: 2015/03/02 09:45:56;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.14 date: 2015/02/28 09:34:03;  author: root;  state: Exp;  lines: +2 -2 *** empty log message *** —————————- revision 1.13 date: 2015/02/28 09:21:46;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.12 date: 2015/02/28 09:16:48;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.11 date: 2015/02/28 09:13:11;  author: root;  state: Exp;  lines: +3 -3 *** empty log message *** —————————- revision 1.10 date: 2015/02/28 09:02:03;  author: root;  state: Exp;  lines: +3 -2 *** empty log message *** —————————- revision 1.9 date: 2015/02/28 06:50:41;  author: root;  state: Exp;  lines: +3 -3 *** empty log message *** —————————- revision 1.8 date: 2015/02/28 06:36:29;  author: root;  state: Exp;  lines: +3 -3 *** empty log message *** —————————- revision 1.7 date: 2015/02/28 06:34:51;  author: root;  state: Exp;  lines: +5 -2 printf the vlues m,ope etc. —————————- revision 1.6 date: 2015/02/28 06:24:34;  author: root;  state: Exp;  lines: +7 -7 *** empty log message *** —————————- revision 1.5 date: 2015/02/28 06:20:44;  author: root;  state: Exp;  lines: +3 -3 , —————————- revision 1.4 date: 2015/02/28 06:16:37;  author: root;  state: Exp;  lines: +5 -3 error modified —————————- revision 1.3 date: 2015/02/28 06:12:49;  author: root;  state: Exp;  lines: +10 -16 write the byte in to array —————————- revision 1.2 date: 2015/02/28 05:53:21;  author: root;  state: Exp;  lines: +32 -4 *** empty log message *** —————————- revision 1.1 date: 2015/02/26 09:54:59;  author: root;  state: Exp; Initial revision =============================================================================  RCS file: header.h,v Working file: header.h head: 1.4 branch: locks: strict     root: 1.4 access list: symbolic names: keyword substitution: kv total revisions: 4;    selected revisions: 4 description: —————————- revision 1.4    locked by: root; date: 2015/02/28 06:13:47;  author: root;  state: Exp;  lines: +1 -1 modifirf error —————————- revision 1.3 date: 2015/02/27 10:05:32;  author: root;  state: Exp;  lines: +5 -0 modified —————————- revision 1.2 date: 2015/02/26 11:41:14;  author: root;  state: Exp;  lines: +1 -0 add the fcntl.h —————————- revision 1.1 date: 2015/02/26 09:56:13;  author: root;  state: Exp; Initial revision =============================================================================  RCS file: hello.c,v Working file: hello.c head: 1.20 branch: locks: strict     root: 1.20 access list: symbolic names: keyword substitution: kv total revisions: 20;    selected revisions: 20 description: print the statement hello friends. , —————————- revision 1.20    locked by: root; date: 2015/03/02 09:42:07;  author: root;  state: Exp;  lines: +2 -0 *** empty log message *** —————————- revision 1.19 date: 2015/03/02 09:32:27;  author: root;  state: Exp;  lines: +0 -2 *** empty log message *** —————————- revision 1.18 date: 2015/02/28 09:23:25;  author: root;  state: Exp;  lines: +2 -2 *** empty log message *** —————————- revision 1.17 date: 2015/02/28 09:21:44;  author: root;  state: Exp;  lines: +2 -2 *** empty log message *** —————————- revision 1.16 date: 2015/02/28 09:18:47;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.15 date: 2015/02/28 09:16:41;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.14 date: 2015/02/28 09:12:54;  author: root;  state: Exp;  lines: +3 -1 *** empty log message *** —————————- revision 1.13 date: 2015/02/28 09:02:00;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.12 date: 2015/02/28 06:58:50;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.11 date: 2015/02/28 06:57:55;  author: root;  state: Exp;  lines: +3 -3 *** empty log message *** —————————- revision 1.10 date: 2015/02/28 06:55:00;  author: root;  state: Exp;  lines: +3 -1 *** empty log message *** —————————- revision 1.9 date: 2015/02/28 06:48:19;  author: root;  state: Exp;  lines: +3 -0 , —————————- revision 1.8 date: 2015/02/28 06:38:59;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.7 date: 2015/02/28 06:34:27;  author: root;  state: Exp;  lines: +1 -1 *** empty log message *** —————————- revision 1.6 date: 2015/02/28 06:29:42;  author: root;  state: Exp;  lines: +2 -2 *** empty log message *** —————————- revision 1.5 date: 2015/02/28 06:27:46;  author: root;  state: Exp;  lines: +1 -1 agrv modified —————————- revision 1.4 date: 2015/02/27 12:10:54;  author: root;  state: Exp;  lines: +5 -4 *** empty log message *** —————————- revision 1.3 date: 2015/02/27 11:52:00;  author: root;  state: Exp;  lines: +16 -1 convert the int into char by atoi  read the character and count them. —————————- revision 1.2 date: 2015/02/26 11:33:08;  author: root;  state: Exp;  lines: +4 -0 using atoi command —————————- revision 1.1 date: 2015/02/26 09:54:59;  author: root;  state: Exp; Initial revision =============================================================================

Posted in Project 03: Client Server Communication using Linux and IPC, Uncategorized | Leave a comment