CÁC BÀI THỰC HÀNH LINUX - Trang 32

- 31-

fd=number;

printf(" So hieu mo ta la %d\n",fd);
switch (nread=read(fd, texte, sizeof(texte)))

{
case -1:

perror("Loi

doc.");

case 0:

perror("EOF");
default:

printf("Van ban nhan duoc co %d ky tu: %s\n",fd, texte);

}

}
main() {

int

fd[2];

char chaine[10];


if (pipe(fd)==-1)

{ perror("Loi khoi tao pipe.");

exit(1);

}

switch (fork()) {
case -1:

perror(" Loi khoi tao tien trinh.");

break;

case 0:
if

(close(fd[1])==-1)

perror("

Error.");

code_fils(fd[0]);

exit(0);
}

close(fd[0]);
if (write(fd[1]),"hello",6)==-1)

perror("Loi

truyen.");

}

Kết quả chương trình:

So hieu mo ta la: 5
Van ban nhan duoc co 6 ky tu: hello

Chú ý rằng, tiến trình con đọc trong ống dẫn mà không viết ở đó nên nó bắt đầu

bằng cách đóng phần viết fd[1] để tiết kiệm các tín hiệu mô tả của tổ hợp. Tương tự, vì
tiến trình cha chỉ sử dụng phần viết nên nó đóng phần đọc lại (fd[0]). Sau đó tiến trình
cha viết vào ống dẫn 6 ký tự và tiến trình con đã đọc chúng.

Bài 9

Lập trình mạng TCP/IP

9.1. Lập trình client /server theo giao thức TCP/IP

Chương trình tcpClient.c

/* Chuong trinh tcpClient.c */

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.