Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

LinuxϽø³Ì¼äͨÐÅ»úÖÆ£ºFIFO£¨ÃüÃû¹ÜµÀ£©

FIFO
£¬ÓÖ³ÆÃüÃû¹ÜµÀ
£¬ÊÇLinuxÏ£¨unix»·¾³Ï£©Ò»ÖÖ½ø³Ì¼äͨÐŵĻúÖÆ£¬Ó¦Óù㷺¡£
º¯Êýmkfifo
ÓÃÓÚ´´½¨ÃüÃû¹ÜµÀ£¬Ê¹ÓÃÃüÁîman 3 mkfifo
¿É²é¿´´Ëº¯ÊýÐÅÏ¢¡£
FIFO´´½¨ºó£¬¿ÉÒÔÏñÆÕͨÎļþÒ»Ñù¶ÔÆä·ÃÎÊ¡£
LinuxÏÂÒ»¸öͬÃûÃüÁîmkfifo
Ò²ÓÃÓÚ´´½¨FIFO£¬ÀýÈ磺
Ö´ÐÐÃüÁî
$ mkfifo /tmp/fifo
$ cat /tmp/fifo
³ÌÐò×èÈû¡£
ÔÙ´ò¿ªÒ»¸öshell£¬Ö´ÐÐ
$ echo hello > /tmp/fifo
ǰһ¸ö³ÌÐò·µ»Ø£¬ÏÔʾhello
ÏÂÃæÓÃÒ»¸ö¼òµ¥³ÌÐò£¬ÑÝʾFIFO IPCµÄÓ÷¨¡£
ÏÂÔØµØÖ·£ºhttp://download.csdn.net/source/2378181
¸Ã³ÌÐò·ÖΪ£²¶Ë£º
server³ÌÐò´´½¨Ò»¸öFIFO£¬²¢´ÓFIFO¶ÁÈ¡×Ö·û£¬×ª»»³É´óдºóÊä³öµ½ÆÁÄ»¡£
client³ÌÐò¶ÁÈ¡Óû§ÊäÈ벢дÈëFIFO¡£
common.h
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#define FIFO_PATH "/tmp/myfifo"
server.c
/*
*½«´ÓFIFOÊÕµ½µ½Êý¾Ý£¨×Ö·û£©×ª»»Îª´óд£¬²¢Êä³öµ½ÆÁÄ»
*/
#include "common.h"
int main()
{
int ret;
int fd;
char buffer;
int nread;
int i;
/*½¨Á¢FIFO*/
ret = mkfifo(FIFO_PATH, 0777);
/*´ò¿ªFIFO*/
fd = open(FIFO_PATH, O_RDONLY);
if(-1 == fd)
{
printf("error\n");
return -1;
}
while(1)
{
nread = read(fd, &buffer, 1);
if(nread > 0)
{
buffer = toupper(buffer);
printf("%c", buffer);
}
}
}

ÔËÐÐserverºó£¬¿É¿´µ½´´½¨ÁËÎļþ/tmp/myfifo£¬ÕâÊÇmkfifoº¯ÊýÖ¸¶¨µÄÃüÃû¹ÜµÀµÄ·¾¶£¨Ãû×Ö£©¡£
µ±È»£¬ÏµÍ³²»»áÕæµÄÔÚ´ÅÅÌÉÏ´´½¨Õâ¸öÎļþ¡£
client.c
/*
*¶ÁÈ¡ÊäÈ룬²¢Ð´ÈëFIFO
*/
#include "common.h"
int main()
{
int fd;
int ret;
char c;
fd = open(FIFO_PATH, O_WRONLY);
if(-1 == fd)
{
printf("error\n");
return -1;
}
while(c = getchar())
{
write(fd, &c, 1);
}
}
ÏÈÆô¶¯server³ÌÐò£¬ÔÙÔËÐÐclient£¬Ëæ±ãÊäÈëЩ×Ö·û¡£
server¶Ë½«ÔÚÆÁÄ»ÉÏÏÔʾת»»Îª´óдºóµÄÊäÈë×Ö·û¡£
×÷ÕߣºZhengZhiren
Ô­ÎÄÁ´½Ó£ºhttp://blog.csdn.net/ZhengZhiRen/archive/2010/05/21/5613843.aspx


Ïà¹ØÎĵµ£º

Linux iptableÎĵµ

×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......

Linux¹ÜÀíÔ±ÃÇ£¬¸ÃË¢ÐÂÄÚºËÁË

Linux¹ÜÀíÔ±ÃÇ£¬¸ÃË¢ÐÂÄÚºËÁË
LinuxÖ®¸¸ÀîÄÉ˹·ÍÐÎÖ×È(Linus Torvalds)Ô®Òý¡¶Ê¥¾­¡·ÖеÄÒ»¾ä»°¼ÄÓïLinux°®ºÃÕߣº“Ò»ÍùÎÞǰ£¬ÉúÉú²»Ï¢¡£”µ«ÊÇʵ¼ÊÉÏ£¬¸ü׼ȷµÄÀí½âÓ¦¸ÃÊǓһÍùÎÞǰ£¬²âÊÔ²»Ö¹”¡£¶ø×îÐÂÐèÒªÎÒÃDzâÊԵľÍÊǽüÆÚ¸Õ·¢²¼µÄ2.6.34°æLinuxÄںˣ¬¸ÃÄں˰汾µÄ·¢²¼Ê±¼ä¾àÀë´Ëǰһ¸ö°æ ......

LinuxÏÂgetsockopt/setsockopt º¯Êý˵Ã÷

¹¦ÄÜÃèÊö£º
        »ñÈ¡»òÕßÉèÖÃÓëij¸öÌ×½Ó×Ö¹ØÁªµÄÑ¡ ÏѡÏî¿ÉÄÜ´æÔÚÓÚ¶à²ãЭÒéÖУ¬ËüÃÇ×Ü»á³öÏÖÔÚ×îÉÏÃæµÄÌ×½Ó×ֲ㡣µ±²Ù×÷Ì×½Ó×ÖÑ¡Ïîʱ£¬Ñ¡ÏîλÓڵIJãºÍÑ¡ÏîµÄÃû³Æ±ØÐë¸ø³ö¡£ÎªÁ˲Ù×÷Ì×½Ó×Ö²ãµÄÑ¡ÏӦ¸Ã ½«²ãµÄÖµÖ¸¶¨ÎªSOL_SOCKET¡£ÎªÁ˲Ù×÷ÆäËü²ãµÄÑ¡Ï¿ØÖÆÑ¡ÏîµÄºÏÊÊЭÒéº ......

LinuxÒôƵ±à³ÌÖ¸ÄÏ






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
H1 { margin-bottom: 0.21cm }
H1.western { font-family: "DejaVu Serif", serif }
H1.cjk { font-family: "AR PL UKai CN"; font-size: 24pt; font-style: normal; font-weight: bold }
H1.ctl { font- ......

linux¸÷ÖÖ¿ª·¢¹¤¾ß¼ò½é

    GCC
    Ŀǰ£¬GCC£¨GNU Compiler Collection£©ÊÇÉçÇø×îºÃµÄ±àÒëÆ÷¡£GCCÒ²¾ÍÊÇÒÔǰµÄGNU C±àÒëÆ÷£¨GNU C Compiler£©£¬ÊÇÓÉegcs³ï»®Ö¸µ¼Î¯Ô±»áά»¤£¬ËûÃǵÄÄ¿±êÊÇÈÃGCC³ÉΪ±ê×¼µÄC±àÒëÆ÷¡£1999ÄêÖУ¬egcsºÍGCC¹¤³ÌºÏ²¢ÎªÒ»¸ö±à¼­Æ÷Ì××°£¬Í¬Äê10Ô·¢²¼GCC 2.95.2¡£
    GCCÊÇÒ»¸ö±à ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ