linuxÏÂͨ¹ýoracle pipe´´½¨Îļþ!
ÏÖÔÚÓиöÕâÑùµÄÐèÇó,ÎÒµÄoracle¹ý³ÌÒª¶¯Ì¬´´½¨Îļþ(ÎļþÊÇÓÃÀ´µ¼³öÊý¾ÝÓõÄ),ÊÂÏÈÎÒ²»ÖªµÀ¸ÄÎļþÊÇ·ñÒѾ´æÔÚ.ËùÒÔÎÒÏëͨ¹ýpipe¹ÜµÀ¸ølinuxµÄÒ»¸ö½Å±¾·¢ËÍÏûÏ¢,¶ø¸Ã½Å±¾È¡µÃoracle ¹ÜµÀ·¢À´µÄÏûÏ¢(ÊÇÎļþµÄĿ¼) ,½«ÏûÏ¢Öض¨Ïòµ½ÁíÍâÒ»¸öÅжϸÃĿ¼ÊÇ·ñ´æÔڵĽű¾,Èç¹û²»´æÔÚÔò´´½¨Ëü.
ÓÃFIFO..
Èç¹ûÄãµÄlinux½Å±¾Ö´Ðнø³Ì¸úÄãµÄoracle½ø³Ì²»ÊÇÇ×Ôµ½ø³Ì£¬¾ÍÓÃÓÐÃû¹ÜµÀFIFO°É¡£²Ù×÷ºÜ¼òµ¥£¬ÀàËÆÎļþ²Ù×÷¡£
FIFO?Ó÷¨¿É·ñ¸øÎÒ½²½²
ÕâÀïÓÐÏêϸÓ÷¨£º
http://hi.baidu.com/glowzrf/blog/item/dcaf96fb28c941136d22eb9f.html
ÕÒ±¾½ø³Ì¼äͨÐŵÄÊ鶼ÓнéÉÜ
ÍøÂç±»ÏÞÖÆÁË,Ö»ÄÜÉÏCSDN.
²é¿´ÎÄÕÂ
ÃüÃû¹ÜµÀFIFO——Linux±Ê¼Ç
2008-04-08 20:15
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
int main(){
int res=mkfifo("/tmp/my_fifo",0777); //int mkfifo(const char *filename,mode_t mode);
if(res==0) printf("FIFO created\n");
exit(EXIT_SUCCESS);
}
FIFOµÄ¶Áд¹æÔò£º£¨³ö×ÔLinux C±à³Ì£©
´ÓFIFOÖжÁÈ¡Êý¾Ý£º
1.Èç¹ûÓнø³Ìд´ò¿ªFIFO£¬ÇÒµ±Ç°FIFOÄÚûÓÐÊý¾Ý£¬Ôò¶ÔÓÚÉèÖÃÁË×èÈû±êÖ¾µÄ¶Á²Ù×÷À´Ëµ£¬½«Ò»Ö±×èÈû¡£¶ÔÓÚûÓÐÉèÖÃ×èÈû±êÖ¾µÄ¶Á²Ù×÷À´ËµÔò·µ»Ø-1£¬µ±Ç°errnoֵΪEAGAIN£¬ÌáÐÑÒÔºóÔÙÊÔ¡£
2.¶ÔÓÚÉèÖÃÁË×èÈû±êÖ¾µÄ¶Á²Ù×÷À´Ëµ£¬Ôì³É×èÈûµÄÔÒòÓÐÁ½ÖÖ£ºÒ»ÖÖÊǵ±Ç°FIFOÄÚÓÐÊý¾Ý£¬µ«ÓÐÆä
Ïà¹ØÎÊ´ð£º
´ó¼ÒºÃ£¬±¾ÈËÄ¿Ç°¸Õ¸Õ½Ó´¥Linux¡£ÏÖÔÚ¹«Ë¾µÄÏîÄ¿ÐèÒªËõ¼õLinuxµÄKernelºÍAPP²¿·ÖµÄCode Size¡£Ä¿Ç°ÎÒÃÇʹÓõÄÊÇLinux2.6.22.15°æ±¾£¬Ó¦ÓÃÓÚADSL Modem£¨¼ÒÍ¥Íø¹Ø£©¡£
1.ÎÒÃDzúÆ·Ó¦ÓÃÊÇADSL Gateway£¬Kernel²¿ ......
Á½Ì¨»úÆ÷ÐͺÅÍêÈ«Ò»Ñù
ÏëÒª°Ñһ̨»úÆ÷µÄÄÚºËÅäÖÃÎļþ¿½±´¸øÁíÍâһ̨
RT
3Q
...
.config Òþ²ØµÄ ÔÚÄãÅäÖùýÄں˺ó¾ÍÉú³ÉÁË
lsÕý½â£¬ÔÚkernelÔ´Â붥²ãĿ¼ÖÐÓиö.configÎļþ£¬ÅäÖ ......
• ʵÑéÄ¿µÄ
ͨ¹ý±¾ÊµÑ飬Á˽âLinuxϵͳµÄ×éÖ¯ºÍÐÐΪ£¬¹Û²ì¸÷Öִ洢ϵͳ״̬ÐÅÏ¢µÄÄں˱äÁ¿£»ÊìϤÕâЩ½á¹¹ÓëÐÅÏ¢¡£
• ʵÑéÄÚÈÝ
±àд³ÌÐò´òÓ¡³öÈç ......
ÒòΪ°²×°cvsÒªÓõ½xinetd·þÎñ£¬·¢ÏÖ»úÆ÷ÉÏûÓС£¡£¾Í´ÓÍøÉÏÏÂÔØÁ˸ö×°ÉÏ£¬
SQL code:
[root@localhost ~]# rpm -qa xinetd
[root@localhost ~]# rpm -qa telnet
telnet-0.17-38.el5
[root@localhost ~]#
¸ ......
ÎÒÒª²éÕÒĿ¼/home/riverdream/ϵÄËùÓеģª.CPPÎļþ
int main(int argc, char *argv[])
{
char str[] = "/home/riverdream/";
DIR* pDir = NULL;
  ......