+ All Categories
Home > Documents > Unixlab Manual for jntu anantapur syllabus

Unixlab Manual for jntu anantapur syllabus

Date post: 18-Feb-2018
Category:
Upload: khanna
View: 221 times
Download: 0 times
Share this document with a friend
54
7/23/2019 Unixlab Manual for jntu anantapur syllabus http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 1/54 UNIX INTERNALS LAB 1.AIM: Write a program to create pipes? PROGRAM #include <stdio!" #include <stdli!" #include <s$s%t$pes!" #de&ine 'AX () main*+ ,  pid-t pid.  int &d/01.  c!ar line/'AX1.  i& *pipe*&d+<)+ ,  perror*23I3E2+.  e4it*5+. 6  pid7&or8*+.  i& *pid<)+ ,  perror*29:R;2+. e4it*5+. 6  i& *pid77)+ AVR & SVR CET Page 1
Transcript
Page 1: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 1/54

UNIX INTERNALS LAB

1.AIM: Write a program to create pipes?

PROGRAM

#include <stdio!"

#include <stdli!"

#include <s$s%t$pes!"

#de&ine 'AX ()

main*+

,

  pid-t pid.

  int &d/01.

  c!ar line/'AX1.

  i& *pipe*&d+<)+

,

 perror*23I3E2+.

  e4it*5+.

6

  pid7&or8*+.

  i& *pid<)+

,

 perror*29:R;2+.

e4it*5+.

6

  i& *pid77)+

AVR & SVR CET Page 1

Page 2: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 2/54

UNIX INTERNALS LAB

  ,

  print&*2=IL> IS ATIE@n2+.

  close*&d/51+.

  read*&d/)1line'AX+.

  print&*23arent 'essage is s@n2line+.

  6

  else

  ,

  print&*23ARENT IS ATIE@n2+.

  close*&d/)1+.

  Crite*&d/512=oC are Dou255+.

  6

6

EXECUTION STEPS:

[sampath@localhost ipc]$ i pipesc

[sampath@localhost ipc]$ cc pipesc

[sampath@localhost ipc]$ %aout

3ARENT IS ATIEF

=IL> IS ATIE

AVR & SVR CET Page 2

Page 3: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 3/54

UNIX INTERNALS LAB

3arent 'essage is =oC are Dou

2.AIM: Write a program &or 9I9:?

PROGRAM

AVR & SVR CET Page 3

Page 4: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 4/54

UNIX INTERNALS LAB

#include <stdio!"

#include <stdli!"

#include <errno!"

#include <string!"

#include <&cntl!"

#include <s$s%t$pes!"

#include <s$s%stat!"

#include <unistd!"

#de&ine 9I9:-NA'E 2SU=RIT-S:LUTI:NS2

#de&ine 9I9:

int main*oid+

,

  c!ar s/G))1.

  int num &d.

  m8nod*9I9:-NA'E SHI 9I9: )JJJ )+.

 print&*2Waiting &or Criters@n2+.

  &d 7 open*9I9:-NA'E :-R>:NLD+.

  print&*2DesK got a Criter@n2+.

  do

 ,

  i& **num 7 read*&d s G))++ 77 H5+

  perror*2read2+.

  else

,

AVR & SVR CET Page 4

Page 5: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 5/54

UNIX INTERNALS LAB

  s/num1 7 @).

  print&*2SolutionsM read d $tesM @2s@2@n2num s+.

  6

  6 C!ile *num " )+.

  return ).

6

EXECUTION STEPS:

[sampath@localhost ipc]$ i &i&oc

[sampath@localhost ipc]$ cc &i&oc

[sampath@localhost ipc]$ %aout

Waiting &or Criters

DesK got a Criter 

acd

SolutionsM read $tesMacd

AVR & SVR CET Page 5

Page 6: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 6/54

UNIX INTERNALS LAB

3.AIM: Write a program to create Crite and read &rom s!ared memor$?

PROGRAM

#include <s$s%t$pes!"

#include <s$s%ipc!"

#include <s$s%s!m!"

#include <unistd!"

#include <string!"

#include <errno!"

AVR & SVR CET Page

Page 7: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 7/54

UNIX INTERNALS LAB

 int main*oid+

,

 pid-t pid.

int Os!ared. %O pointer to t!e s!m O%

int s!mid.

s!mid 7 s!mget*I3-3RIATE siPeo&*int+ I3-REAT )JJJ+.

 print&*2S!ared 'emor$ I>7u2s!mid+.

i& *&or8*+ 77 )+

,

%O !ild O% %O Attac! to s!ared memor$ and print t!e pointer O%

s!ared 7 s!mat*s!mid *oid O+ ) )+.

 print&*2!ild pointer u@n2 s!ared+.

Os!ared75.

 print&*2!ild alue7d@n2 Os!ared+.

sleep*0+.

 print&*2!ild alue7d@n2 Os!ared+.

6

 else

,

%O 3arent O% %O Attac! to s!ared memor$ and print t!e pointer O%

s!ared 7 s!mat*s!mid *oid O+ ) )+.

AVR & SVR CET Page !

Page 8: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 8/54

UNIX INTERNALS LAB

  print&*23arent pointer u@n2 s!ared+.

 print&*23arent alue7d@n2 Os!ared+.

sleep*5+.

Os!ared70.

 print&*23arent alue7d@n2 Os!ared+.

sleep*(+.

s!mctl*s!mid I3-R'I> )+.

6

6

EXECUTION STEPS:

AVR & SVR CET Page "

Page 9: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 9/54

UNIX INTERNALS LAB

/sampat!Qlocal!ost ipc1i s!ared-memc

/sampat!Qlocal!ost ipc1cc s!ared-memc

/sampat!Qlocal!ost ipc1 %aout

S!ared 'emor$ I>7J((G!ild pointer G)JJ))J

!ild alue75

S!ared 'emor$ I>7J((G3arent pointer G)JJ))J

3arent alue75

3arent alue70

!ild alue70

AVR & SVR CET Page #

Page 10: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 10/54

UNIX INTERNALS LAB

4.AIM: 

Write a program to implement arious operations on 'essage ueue ?

PROGRAM

 message-sendc HH creating and sending to a simple message Vueue

#include <s$s%t$pes!"

#include <s$s%ipc!"

#include <s$s%msg!"

#include <stdio!"

#include <string!"

#de&ine 'SS 50

%O >eclare t!e message structure O%

t$pede& struct msgu&

,

long mt$pe.

c!ar mte4t/'SS1.

6 message-u&.

main*+

,

int msVid.

int msg&lg 7 I3-REAT )JJJ.

8e$-t 8e$.

message-u& su&.

AVR & SVR CET Page 1

Page 11: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 11/54

UNIX INTERNALS LAB

  siPe-t u&-lengt!.

%O et t!e message Vueue id &or t!e 2name2 50G C!ic! Cas created $ t!eserer O%

8e$ 7 50G.

*oid+ &print&*stderr 2@nmsggetM alling msgget*#l4@ #o+@n2 8e$ msg&lg+.

i& **msVid 7 msgget*8e$ msg&lg ++ < )+

 ,

 perror*2msgget2+.

e4it*5+.

6

else

*oid+ &print&*stderr2msggetM msgget succeededM msVid 7 d@n2 msVid+.

%O Well send message t$pe O%

su&mt$pe 7 5.

*oid+ &print&*stderr2msggetM msgget succeededM msVid 7 d@n2 msVid+.

*oid+ strcp$*su&mte4t 2>id $ou get t!is?2+.

*oid+ &print&*stderr2msggetM msgget succeededM msVid 7 d@n2 msVid+.

 u&-lengt! 7 strlen*su&mte4t+ Y 5 .

%O Send a messageO%

i& *msgsnd*msVid Zsu& u&-lengt! I3-N:WAIT+ < )+

 ,

 print& *2d d s d@n2 msVid su&mt$pe su&mte4t u&-lengt!+.

 perror*2msgsnd2+.

e4it*5+.

AVR & SVR CET Page 11

Page 12: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 12/54

UNIX INTERNALS LAB

  6

else

 print&*2'essageM @2s@2 Sent@n2 su&mte4t+.

e4it*)+.

6

message-recc HH receiing t!e aoe message

#include <s$s%t$pes!"

#include <s$s%ipc!"

#include <s$s%msg!"

#include <stdio!"

#de&ine 'SS 50

%O >eclare t!e message structure O%

t$pede& struct msgu&

,

long mt$pe.

c!ar mte4t/'SS1.

6 message-u&.

main*+

,

int msVid.

8e$-t 8e$.

AVR & SVR CET Page 12

Page 13: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 13/54

UNIX INTERNALS LAB

  message-u& ru&.

%O et t!e message Vueue id &or t!e 2name2 50G C!ic! Cas created $ t!e serer O%

8e$ 7 50G.

i& **msVid 7 msgget*8e$ )JJJ++ < )+

 ,

 perror*2msgget2+.

e4it*5+.

6

i& *msgrc*msVid Zru& 'SS 5 )+ < )+

 ,

 perror*2msgrc2+.

e4it*5+.

6

%O 3rint t!e ansCer O%

 print&*2s@n2 ru&mte4t+.

e4it*)+.

6

AVR & SVR CET Page 13

Page 14: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 14/54

UNIX INTERNALS LAB

EXECUTION STEPS:

[sampath@localhost msg%e]'i message(se)*+c

[sampath@localhost msg%e]cc message(se)*+c

[sampath@localhost msg%e]m' a+ot msgse)*

[sampath@localhost msg%e]$ +,msgse)*

msgget- Calli)g msgget./4*2 0 1)

msgget- msgget sccee*e*- ms%i*

msgget- msgget sccee*e*- ms%i*

msgget- msgget sccee*e*- ms%i*

essage- i* o get this6 Se)t

AVR & SVR CET Page 14

Page 15: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 15/54

UNIX INTERNALS LAB

 

[sampath@localhost msg%e]'i message(7ec+c

[sampath@localhost msg%e]cc message(7ec+c

[sampath@localhost msg%e]m' a+ot msg7ec

[sampath@localhost msg%e]$ +,msg7ec &

[1] 2#!

[sampath@localhost msg%e]$ i* o get this6

5.AIM: 

3er&orm soc8et programming using U>3?

PROGRAM

 udp-sererc

#include <stdio!"

#include <stdli!"

#include <errno!"

#include <string!"

#include <s$s%t$pes!"

#include <s$s%soc8et!"

AVR & SVR CET Page 15

Page 16: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 16/54

UNIX INTERNALS LAB

#include <netinet%in!"

#include <arpa%inet!"

#include <s$s%Cait!"

#include <&cntl!"

#include <signal!"

#de&ine BU9SIE (50

#de&ine 'D3:RT 555)

#de&ine 'AXNA'E 5))

int main*int c!ar OO +

,

int sdnret.

struct soc8addr-in sereraddresscliaddr.

soc8len-t lengt!.

c!ar clientname/'AXNA'E1datareceied/BU9SIE1.

sd 7 soc8et* A9-INET S:;->RA' ) +.

i&* sd < ) +

,

 perror* 2soc8et2 +.

e4it* 5 +.

6

memset* Zsereraddress ) siPeo&*sereraddress+ +.

memset* Zcliaddr ) siPeo&*cliaddr+ +.

sereraddresssin-&amil$ 7 A9-INET.

sereraddresssin-port 7 !tons*'D3:RT+.%%3:RT N:

sereraddresssin-addrs-addr 7 !tonl*INA>>R-AND+.%%I3 A>>RESS

AVR & SVR CET Page 1

Page 17: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 17/54

UNIX INTERNALS LAB

  ret7ind*sd*struct soc8addrO+ZsereraddresssiPeo&*sereraddress++.

i&*ret<)+

,

 perror*2BIN> 9AILS2+.

e4it*5+.

6

&or*..+

,

 print&*2I am Caiting@n2+.

%OReceied a datagramO%

lengt!7siPeo&*cliaddr+.

n7rec&rom*sddatareceiedBU9SIE) *struct soc8addrO+Zcliaddr Zlengt!+.

 print&*2>ata Receied &rom s@n2 net-ntop*A9-INETZcliaddrsin-addr

clientnamesiPeo&*clientname+++.

%OSending t!e Receied datagram ac8O%

datareceied/n17@).

 print&*2I !ae receied s@n2datareceied+.

sendto*sddatareceiedn)*struct soc8addr O+Zcliaddrlengt!+.

6

6

udp-clientc

#include <stdio!"

#include <stdli!"

AVR & SVR CET Page 1!

Page 18: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 18/54

UNIX INTERNALS LAB

#include <errno!"

#include <string!"

#include <s$s%t$pes!"

#include <s$s%soc8et!"

#include <netinet%in!"

#include <arpa%inet!"

#include <&cntl!"

#include <signal!"

#include <unistd!"

#de&ine BU9SIE (50

static oid sig-usr*int+.

oid str-cli*9ILE O&p int soc8&d struct soc8addr Oserer soc8len-t len+.

int main* int c!ar Oarg/1 +

,

int sd.

struct soc8addr-in sereraddress.

%OInstalling signal =andlersO%

signal*SI3I3Esig-usr+.

signal*SIINTsig-usr+.

i& *NULL77arg/51+

,

 print&*23lease enter t!e I3 Address o& t!e serer@n2+.

e4it*)+.

6

AVR & SVR CET Page 1"

Page 19: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 19/54

UNIX INTERNALS LAB

  i& *NULL77arg/01+

,

 print&*23lease enter t!e 3ort Numer o& t!e serer@n2+.

e4it*)+.

6

sd 7 soc8et* A9-INET S:;->RA' ) +.

i&* sd < ) +

,

 perror* 2soc8et2 +.

e4it* 5 +.

6

memset* Zsereraddress ) siPeo&*sereraddress+ +.

sereraddresssin-&amil$ 7 A9-INET.

sereraddresssin-port 7 !tons*atoi*arg/01++.%%3:RT N:

sereraddresssin-addrs-addr 7 inet-addr*arg/51+.%%A>>RESS

 print&*2lient Starting serice@n2+.

 print&*2Enter >ata 9or t!e serer@n2+.

str-cli*stdinsd *struct soc8addr O+Zsereraddress siPeo&*sereraddress++.

6

static oid sig-usr* int signo+ %OSignal NumerO%

,

c!ar Ostrpipe72REEIE> SI3I3E H ERR:R2.

c!ar Ostrctrl72REEIE> TRLH 9R:' D:U2.

AVR & SVR CET Page 1#

Page 20: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 20/54

UNIX INTERNALS LAB

  i&*signo77SI3I3E+

,

Crite*5strpipestrlen*strpipe++.

e4it*5+.

6

else i&*signo77SIINT+

,

Crite*5strctrlstrlen*strctrl++.

e4it*5+.

6

6

oid str-cli*9ILE O&p %O=ere to e used as stdin as argumentO%

int soc8&d

struct soc8addr Oto soc8len-t lengt!+ %Oonnection Soc8et O%

,

int ma4desn.

&d-set rset.

c!ar sendu&/BU9SIE1 recu&/BU9SIE1 serername/5))1.

struct soc8addr-in sereraddr.

soc8len-t slen.

9>-ER:*Zrset+.

ma4des7*soc8&d"&ileno*&p+?soc8&dY5M&ileno*&p+Y5+.

&or*..+

,

9>-SET*&ileno*&p+ Zrset+.

AVR & SVR CET Page 2

Page 21: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 21/54

UNIX INTERNALS LAB

  9>-SET*soc8&d Zrset+.

select*ma4desZrsetNULLNULLNULL+.

i&*9>-ISSET*soc8&d Z rset++

,

slen7siPeo&*sereraddr+.

n7rec&rom*soc8&drecu&BU9SIE) *structsoc8addrO+ZsereraddrZslen+.

 print&*2>ata Receied &rom serer sM@n2

inet-ntop*A9-INETZsereraddrsin-addr

serernamesiPeo&*serername+++.

Crite*5recu&n+.

 print&*2Enter >ata 9or t!e serer@n2+.

6

i&*9>-ISSET*&ileno*&p+ Z rset++

,

%OReading data &rom t!e 8e$oardO%

&gets*sendu&BU9SIE&p+.

n 7 strlen *sendu&+.

%OSending t!e read data oer soc8etO%

sendto*soc8&dsendu&n)tolengt!+.

 print&*2>ata Sent To Serer@n2+.

6

6

6

AVR & SVR CET Page 21

Page 22: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 22/54

UNIX INTERNALS LAB

EXECUTION STEPS:

8P Clie)t Se7'e7 Applicatio)+

Compiling and running server.

[se7@localhost 9ee:#]$ 'i *p(se7'e7+c

[se7@localhost 9ee:#]$ cc *p(se7'e7+c

[se7@localhost 9ee:#]$ m' a+ot *p(se7'e7

[se7@localhost 9ee:#]$ +, *p(se7'e7

; am 9aiti)g

ata Recei'e* <7om 12!+++1

; ha'e 7ecei'e* a=c* e<gh

7e' is

hg<e *c=a

; am 9aiti)g

Compiling and running client.

se7@localhost 9ee:#]$ 'i *p(clie)t+c

AVR & SVR CET Page 22

Page 23: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 23/54

UNIX INTERNALS LAB

se7@localhost 9ee:#]$ cc *p(clie)t+c

[se7@localhost 9ee:#]$ m' a+ot *p(clie)t

[se7@localhost 9ee:#]$ +, *p(clie)t 12!+++1 11!1

Clie)t Sta7ti)g se7'ice

E)te7 ata >o7 the se7'e7

a=c* e<gh

ata Se)t To Se7'e7

ata Recei'e* <7om se7'e7 12!+++1-

a=c* e<gh

6.AIM: 

3er&orm soc8et programming using T3 ?

PROGRAM

tcpserselect)5c

#include <stdio!"

#include <stdli!"

#include <unistd!"

#include <errno!"

#include <string!"

#include <s$s%t$pes!"

#include <s$s%stat!"

#include <s$s%select!"

AVR & SVR CET Page 23

Page 24: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 24/54

UNIX INTERNALS LAB

#include <s$s%time!"

#include <s$s%soc8et!"

#include <netinet%in!"

#include <arpa%inet!"

#include <&cntl!"

#de&ine 'AXLINE 5))

#de&ine SER-3:RT 5G5(G

int main*int argc c!ar OOarg+

,

int 8 i ma4i ma4&d listen&d conn&d soc8&d.

int nread$ client/9>-SETSIE1.

ssiPe-t n.

&d-set rset allset.

c!ar line/'AXLINE1u&/5))1.

soc8len-t clilen.

struct soc8addr-in cliaddr seraddr.

listen&d 7 soc8et*A9-INET S:;-STREA' )+.

i& *listen&d < ) +

,

 perror*2soc8et2 +.

e4it*5+.

6

 Pero*Zseraddr siPeo&*seraddr++.

seraddrsin-&amil$ 7 A9-INET.

seraddrsin-addrs-addr 7 !tonl*INA>>R-AND+.

AVR & SVR CET Page 24

Page 25: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 25/54

UNIX INTERNALS LAB

  seraddrsin-port 7 !tons*SER-3:RT+.

 ind*listen&d *struct soc8addr O+ Zseraddr siPeo&*seraddr++.

listen*listen&d(+.

ma4&d 7 listen&d. %O initialiPe O%

ma4i 7 H5. %O inde4 into client/1 arra$ O%

&or *i 7 ). i < 9>-SETSIE. iYY+

client/i1 7 H5. %O H5 indicates aailale entr$ O%

9>-ER:*Zallset+.

9>-SET*listen&d Zallset+.

%O end &ig)5 O% %O include &ig)0 O%

&or * . . +

,

 print&*2SererMI am CaitingHHHHHStart o& 'ain Loop@n2+.

rset 7 allset. %O structure assignment O%

nread$ 7 select*ma4&dY5 Zrset NULL NULL NULL+.

i& *9>-ISSET*listen&d Zrset++ , %O neC client connection O%

clilen 7 siPeo&*cliaddr+.

conn&d 7 accept*listen&d *struct soc8addr O+ Zcliaddr Zclilen+.

#i&de& N:T>E9

 print&*2neC clientM s port d@n2 inet-ntop*A9-INET cliaddrsin-addr u& NULL+ nto!s*cliaddrsin-port++.

#endi&

&or *i 7 ). i < 9>-SETSIE. iYY+

i& *client/i1 < )+

  ,

client/i1 7 conn&d. %O sae descriptor O%

AVR & SVR CET Page 25

Page 26: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 26/54

UNIX INTERNALS LAB

  rea8.

6

i& *i 77 9>-SETSIE+

,

 print&*2too man$ clients2+.

e4it*)+.

6

9>-SET*conn&d Zallset+. %O add neC descriptor to set O%

i& *conn&d " ma4&d+

ma4&d 7 conn&d. %O &or select O%

i& *i " ma4i+

ma4i 7 i. %O ma4 inde4 in client/1 arra$ O%

i& *HHnread$ <7 )+

continue. %O no more readale descriptors O%

6

&or *i 7 ). i <7 ma4i. iYY+

,

%O c!ec8 all clients &or data O%

i& * *soc8&d 7 client/i1+ < )+

continue.

i& *9>-ISSET*soc8&d Zrset++

 ,

i& * *n 7 read*soc8&d line 'AXLINE++ 77 )+

 ,

%Oconnection closed $ client O%

AVR & SVR CET Page 2

Page 27: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 27/54

UNIX INTERNALS LAB

  close*soc8&d+.

9>-LR*soc8&d Zallset+.

client/i1 7 H5.

6

else

,

 print&*2@n output at serer@n2+.

&or*87).line/81K7@).8YY+

 print&*2c2toupper*line/81++.

Crite*soc8&d line n+.

6

i& *HHnread$ <7 )+

 rea8. %O no more readale descriptors O%

6

6

6

AVR & SVR CET Page 2!

Page 28: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 28/54

UNIX INTERNALS LAB

tcpclientc

#include <stdio!"

#include <stdli!"

#include <unistd!"

#include <errno!"

#include <string!"

#include <s$s%t$pes!"

#include <s$s%stat!"

#include <s$s%soc8et!"

#include <netinet%in!"

#include <arpa%inet!"

#include <&cntl!"

#de&ine 'AXBU99ER 5)0

oid sendstring*int c!ar O+.

int main* int c!ar O/1 +

,

int sd&d.

c!ar c.

struct soc8addr-in sereraddress.

c!ar te4t/5))1.

int i7).

sd 7 soc8et* A9-INET S:;-STREA' ) +.

i&* sd < ) +

,

 perror* 2soc8et2 +.

AVR & SVR CET Page 2"

Page 29: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 29/54

UNIX INTERNALS LAB

  e4it* 5 +.

6

i& */51 77 NULL +

,

 print& *23L spec&i$ t!e serers I3 Address @n2+.

e4it*)+.

6

i& */01 77 NULL +

 ,

 print& *23L speci&$ t!e serers 3ort No @n2+.

e4it*)+.

6

memset* Zsereraddress ) siPeo&*sereraddress+ +.

sereraddresssin-&amil$ 7 A9-INET.

sereraddresssin-port 7 !tons*atoi*/01++.%%3:RT N:

sereraddresssin-addrs-addr 7 inet-addr*/51+.%%A>>RESS

i& *connect*sd*struct soc8addrO+Zsereraddress siPeo&*sereraddress++<)+

,

 print&*2annot onnect to serer2+.

e4it*5+.

6

 print&*2enter sentence to end enter #2+.

C!ile*5+

,

AVR & SVR CET Page 2#

Page 30: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 30/54

UNIX INTERNALS LAB

c7getc!ar*+.

i&*c77#+

 rea8.

te4t/iYY17c.

6

te4t/i17@).

sendstring*sdte4t+.

close*sd+.

return ).

6

oid sendstring * int sd c!ar O&name+ %OSoc8et >escriptorO% %OArra$ ontaining t!estring O%

,

int n $tesCritten7) Critten .

c!ar u&&er/'AXBU99ER1.

strcp$*u&&er &name+.

n7strlen*u&&er+.

C!ile *$tesCritten<n+

,

Critten7Crite*sd u&&erY$tesCritten*nH$tesCritten++.

 $tesCrittenY7Critten.

6

 print&*2String M s sent to serer @n2u&&er+.

6

AVR & SVR CET Page 3

Page 31: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 31/54

UNIX INTERNALS LAB

EXECUTION STEPS:

 + oncurrent Serer Application Using Select

Compiling an !"nning #$!%$!.

rootQlocal!ost Cee8and1# i tcpserselect)5c

rootQlocal!ost Cee8and1# cc tcpserselect)5c

/rootQlocal!ost Cee8and1# m aout tcpserselect5

/rootQlocal!ost Cee8and1# %tcpserselect5

SererMI am CaitingHHHHHStart o& 'ain Loop

SererMI am CaitingHHHHHStart o& 'ain Loop

output at serer

acd

 SererMI am CaitingHHHHHStart o& 'ain Loop

Compiling an !"nning Cli$n&.

AVR & SVR CET Page 31

Page 32: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 32/54

UNIX INTERNALS LAB

7oot@localhost 9ee:!a)*"]? 'i tcpclientc

 7oot@localhost 9ee:!a)*"]? cc tcpclientc

[7oot@localhost 9ee:!a)*"]? m' a+ot tcpclient

rootQlocal!ost Cee8and1# %tcpclient 50))5 5G5(G

enter sentence to end enter #acd#

String M acd sent to serer

'.AIM:

Write a program &or process creation and process e4ecution &or displa$ enironment

ariales

PROGRAM

#include<stdio!"

int main*int argc c!ar Oarg/1c!ar Oen/1+

,

int i.

 print&*2 m$ os enironmentM @n2+.

&or*i7).en/i1.iYY+

 print&*2s@n2 en/i1+.

return ).

AVR & SVR CET Page 32

Page 33: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 33/54

UNIX INTERNALS LAB

6

#include<stdio!"

e4tern c!ar OO eniron.

int main*+

,

int i.

 print&*2 m$ os enironment@n2+.

&or*i7).eniron/i1.iYY+

 print&*2s@n2eniron/i1+.

return ).

6

AVR & SVR CET Page 33

Page 34: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 34/54

UNIX INTERNALS LAB

EXECUTION STEPS:

[sampath@localhost ipc]$ i en5c

[sampath@localhost ipc]$ cc en5c

[sampath@localhost ipc]$ %aout

m$ os enironment

[sampath@localhost ipc]$ i en0c

[sampath@localhost ipc]$ cc en0c

[sampath@localhost ipc]$ %aout

m$ os enironment

AVR & SVR CET Page 34

Page 35: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 35/54

UNIX INTERNALS LAB

 AIM:

Write a program on process creation and e4ecution &or implement di&&erent t$pes o& e4ecution&unction

 PROGRAM

AVR & SVR CET Page 35

Page 36: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 36/54

UNIX INTERNALS LAB

#include<stdio!"

#include<unistd!"

int main*+

,

c!ar Oconst arg/1 7,2one22tCo2*c!arO+)6.

e4ec*2%arg2arg+.

 print&*2 displa$ read line ariales@n2+.

return ).

6

#include<unistd!"

int main*+

,

e4ecl*2%!ello2252*c!ar O+)+.

 print&*2 displa$ read line ariales@n2+.

6

AVR & SVR CET Page 3

Page 37: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 37/54

UNIX INTERNALS LAB

EXECUTION STEPS:

[sampath@localhost ipc]$ i en5c

[sampath@localhost ipc]$ cc en5c

[sampath@localhost ipc]$ %aout

displa$s read line ariales

[sampath@localhost ipc]$ i en0c

[sampath@localhost ipc]$ cc en0c

AVR & SVR CET Page 3!

Page 38: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 38/54

UNIX INTERNALS LAB

[sampath@localhost ipc]$ %aout

displa$s read line ariales

AVR & SVR CET Page 3"

Page 39: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 39/54

UNIX INTERNALS LAB

(. AIM:

Write a program to create &ile and modi&$ and to delete record

PROGRAM

#include<stdio!"

int main*int argc c!ar Oarg/1+

,

c!ar c!.

9ILE O&p.

&p7&open*arg/512r2+.

i&*&p77NULL+

  ,

 print&*2&ile does not e4it@n2+.

return ).

AVR & SVR CET Page 3#

Page 40: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 40/54

UNIX INTERNALS LAB

  6

C!ile*K&eo&*&p++

  ,

c!7&getc*&p+.

 print&*2c2c!+.

6

&close*&p+.

return ).

6

AVR & SVR CET Page 4

Page 41: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 41/54

UNIX INTERNALS LAB

EXECUTION STEPS:

[sampath@localhost ipc]$ i &ilec

[sampath@localhost ipc]$ cc &ilec

[sampath@localhost ipc]$ %aout

&ile does not e4ist

AVR & SVR CET Page 41

Page 42: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 42/54

UNIX INTERNALS LAB

AVR & SVR CET Page 42

Page 43: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 43/54

UNIX INTERNALS LAB

1).AIM:

Write a program to &ind status and mode alue o& a &ile

PROGRAM

#include<stdio!"

#include<string!"

#include<stdli!"

#include<&cntl!"

c!ar data/51.

c!ar str/5)01.

int main*int argcc!ar Oarg/1+

,

int count.

int c!.

int &d.

int poslen.

i&*argcK70+

,

 print&*2command reVuires tCo arguments%n2+.

e4it*5+.

6

&d7open*arg/51:-R>WR+.

AVR & SVR CET Page 43

Page 44: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 44/54

UNIX INTERNALS LAB

i&*&d<)+

,

 print&*2&ile does not e4it%n2+.

e4it*0+.

6

do

,

 print&*2@n@t9ile :perations@n2+.

 print&*2@tRead5@n2+.

 print&*2@tWrite0@n2+.

 print&*2@tE4itG@n2+.

 print&*2Enter $our c!oice*5HG+M2+.

scan&*2d2Zc!+.

sCitc!*c!+

,

case 5 M

 print&*2Enter &ile position in $teM2+.

scan&*2d2Zpos+.

 print&*2Enter numer o& $te to readM2+.

scan&*2d2Zlen+.

lsee8*&dposH5SEE;-SET+.

count7).

AVR & SVR CET Page 44

Page 45: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 45/54

UNIX INTERNALS LAB

  C!ile*read*&ddata5+")+

,

countYY.

Crite*5data5+.

i&*count77len+rea8.

6

 rea8.

case 0 M

 print&*2Enter t!e position to CriteM2+.

scan&*2d2Zpos+.

 print&*2Enter t!e string toCrite into to &ileM2+.

scan&*2s2str+.

lsee8*&dposH5SEE;-SET+.

Crite*&dstrstrlen*str++.

 rea8.

case G M

e4it*)+.

de&aultM

 print&*2Inalid c!oice Tr$ again%n2+.

6

6C!ile*5+.

e4it*)+.

6

AVR & SVR CET Page 45

Page 46: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 46/54

UNIX INTERNALS LAB

AVR & SVR CET Page 4

Page 47: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 47/54

UNIX INTERNALS LAB

EXECUTION STEPS:

[sampath@localhost ipc]$ i sm&c

[sampath@localhost ipc]$ cc sm&c

[sampath@localhost ipc]$ %aout

ommand reVuires tCo arguments

AVR & SVR CET Page 4!

Page 48: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 48/54

UNIX INTERNALS LAB

55 AIM:

Write a program to &ind C!et!er a &ile is !aing read Crite e4ecute permissions and alsoc!ec8 C!et!er t!e gien name is &ile or director$

PROGRAM

#include<stdio!"

AVR & SVR CET Page 4"

Page 49: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 49/54

UNIX INTERNALS LAB

#include<s$s%t$pes!"

#include<s$s%stat!"

#include<stdli!"

#include<&cntl!"

#include<strings!"

#include<unistd!"

struct stat su&5su&0.

int main*int argc c!ar Oarg/1+

,

int &d5&d0.

int i[.

c!ar O&lines5O&lines0.

i&*argc<G+

,

 print&*23rogram reVuires atleast 0 arguments2+.

e4it*)+.

6

&or*i75.i<argcH5.iYY+

,

&d57open*arg/i1:-R>:NLD+.

i&*&d5<)+ continue.

&lines57malloc*su&5st-siPe+.

&stat*&d5Zsu&5+.

read*&d5&lines5su&5st-siPe+.

&or*[7iY5.[<argc.[YY+

AVR & SVR CET Page 4#

Page 50: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 50/54

UNIX INTERNALS LAB

,

&d07open*arg/[1:-R>:NLD+.

i&*&d0<)+ continue.

&stat*&d0Zsu&0+.

i&*su&5st-siPe77su&0st-siPe+

,

&lines07malloc*su&0st-siPe+.

read*&d0&lines0su&0st-siPe+.

close*&d0+.

i&*cmp*&lines5&lines0su&0st-siPe+77)+

unlin8*arg/[1+.

&ree*&lines0+.

6

6

close*&d5+.

&ree*&lines5+.

6

e4it*)+.

6

EXECUTION STEPS:

[sampath@localhost ipc]$ i &rdc

[sampath@localhost ipc]$ cc &rdc

[sampath@localhost ipc]$ %aout

3rogram reVuires at least 0 arguments

AVR & SVR CET Page 5

Page 51: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 51/54

UNIX INTERNALS LAB

 

50 AIM:

Write a program to create a &or8 &unction and to displa$ c!ild process id parent process idroot id

AVR & SVR CET Page 51

Page 52: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 52/54

UNIX INTERNALS LAB

PROGRAM

#include<stdio!"

#include<unistd!"

int main*int argc c!ar Oarg/1+

,

int ipidalue.

sscan&*arg/512d2Zalue+.

&or *i7).i<alueH5.iYY+

,

 pid7&or8*+.

i&*pid77)+

,

 print&*2Im c!ild '$ pid7d@t2getpid*++.

 print&*2'$ parent pid7d@t 2getppid*++.

 print&*2'$ roupid7d@n 2getgid*++.

6

else

Cait*+.

6

return ).

6

AVR & SVR CET Page 52

Page 53: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 53/54

UNIX INTERNALS LAB

EXECUTION STEPS:

[sampath@localhost ipc]$ i &or8c

[sampath@localhost ipc]$ cc &or8c

[sampath@localhost ipc]$ %aout

Im c!ild '$ pid 7 JG((

AVR & SVR CET Page 53

Page 54: Unixlab Manual for jntu anantapur syllabus

7/23/2019 Unixlab Manual for jntu anantapur syllabus

http://slidepdf.com/reader/full/unixlab-manual-for-jntu-anantapur-syllabus 54/54

UNIX INTERNALS LAB

'$ parent pid 7 JG(G

'$ roupid 7JG()


Recommended