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

Linuxϵͳµ÷ÓÃ

 ¹¦ÄÜÃèÊö£º
ÔÚÏûÏ¢¶ÓÁÐÉϽøÐÐÊÕ·¢ÏûÏ¢¡£ÎªÁË·¢ËÍÏûÏ¢£¬µ÷Óýø³Ì¶ÔÏûÏ¢¶ÓÁбØÐëÓÐдȨÄÜ¡£½ÓÊÕÏûϢʱ±ØÐëÓжÁȨÄÜ¡£
Ó÷¨£º 
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg);
ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg);
²ÎÊý£º  
msqid£ºÏûÏ¢¶ÓÁеÄʶ±ðÂë¡£
msgp£ºÖ¸ÏòÏûÏ¢»º³åÇøµÄÖ¸Õ룬´ËλÖÃÓÃÀ´ÔÝʱ´æ´¢·¢ËͺͽÓÊÕµÄÏûÏ¢£¬ÊÇÒ»¸öÓû§¿É¶¨ÒåµÄͨÓýṹ£¬ÐÎ̬ÈçÏÂ
struct msgbuf {
    long mtype;     /* ÏûÏ¢ÀàÐÍ£¬±ØÐë > 0 */
    char mtext[1];  /* ÏûÏ¢Îı¾ */
};
msgsz£ºÏûÏ¢µÄ´óС¡£
msgtyp£º´ÓÏûÏ¢¶ÓÁÐÄÚ¶ÁÈ¡µÄÏûÏ¢ÐÎ̬¡£Èç¹ûֵΪÁ㣬Ôò±íʾÏûÏ¢¶ÓÁÐÖеÄËùÓÐÏûÏ¢¶¼»á±»¶ÁÈ¡¡£
msgflg£ºÓÃÀ´Ö¸Ã÷ºËÐijÌÐòÔÚ¶ÓÁÐûÓÐÊý¾ÝµÄÇé¿öÏÂËùÓ¦²ÉÈ¡µÄÐж¯¡£Èç¹ûmsgflgºÍ³£ÊýIPC_NOWAITºÏÓã¬ÔòÔÚmsgsnd()Ö´ÐÐʱÈôÊÇÏûÏ¢¶ÓÁÐÒÑÂú£¬Ôòmsgsnd()½«²»»á×èÈû£¬¶ø»áÁ¢¼´·µ»Ø-1£¬Èç¹ûÖ´ÐеÄÊÇmsgrcv()£¬ÔòÔÚÏûÏ¢¶ÓÁгʿÕʱ£¬²»×öµÈ´ýÂíÉÏ·µ»Ø-1£¬²¢É趨´íÎóÂëΪENOMSG¡£µ±msgflgΪ0ʱ£¬msgsnd()¼°msgrcv()ÔÚ¶ÓÁгÊÂú»ò³Ê¿ÕµÄÇéÐÎʱ£¬²ÉÈ¡×èÈûµÈ´ýµÄ´¦Àíģʽ¡£
   
·µ»ØËµÃ÷£º  
³É¹¦Ö´ÐÐʱ£¬msgsnd()·µ»Ø0£¬msgrcv()·µ»Ø¿½±´µ½mtextÊý×éµÄʵ¼Ê×Ö½ÚÊý¡£Ê§°ÜÁ½Õß¶¼·µ»Ø-1£¬errno±»ÉèΪÒÔϵÄij¸öÖµ
[¶ÔÓÚmsgsnd] 
EACCES£ºµ÷Óýø³ÌÔÚÏûÏ¢¶ÓÁÐÉÏûÓÐдȨÄÜ£¬Í¬Ê±Ã»ÓÐCAP_IPC_OWNERȨÄÜ
EAGAIN£ºÓÉÓÚÏûÏ¢¶ÓÁеÄmsg_qbytesµÄÏÞÖÆºÍmsgflgÖÐÖ¸¶¨IPC_NOWAIT±êÖ¾£¬ÏûÏ¢²»Äܱ»·¢ËÍ
EFAULT£ºmsgpÖ¸ÕëÖ¸ÏòµÄÄÚ´æ¿Õ¼ä²»¿É·ÃÎÊ
EIDRM£ºÏûÏ¢¶ÓÁÐÒѱ»É¾³ý
EINTR£ºµÈ´ýÏûÏ¢¶ÓÁпռä¿ÉÓÃʱ±»ÐźÅÖжÏ
EINVAL£º²ÎÊýÎÞЧ
ENOMEM£ºÏµÍ³ÄÚ´æ²»×㣬ÎÞ·¨½«msgpÖ¸ÏòµÄÏûÏ¢¿½±´½øÀ´
[¶ÔÓÚmsgrcv]
E2BIG£ºÏûÏ¢Îı¾³¤¶È´óÓÚmsgsz£¬²¢ÇÒmsgflgÖÐûÓÐÖ¸¶¨MSG_NOERROR
EACCES£ºµ÷Óýø³ÌûÓжÁȨÄÜ£¬Í¬Ê±Ã»¾ßÓÐCAP_IPC_OWNERȨÄÜ
EAGAIN£ºÏûÏ¢¶ÓÁÐΪ¿Õ£¬²¢ÇÒmsgflgÖÐûÓÐÖ¸¶¨IPC_NOWAIT
EFAULT£ºmsgpÖ¸ÏòµÄ¿Õ¼ä²»¿É·ÃÎÊ
EIDRM£ºµ±½ø³Ì˯Ãߵȴý½ÓÊÕÏûϢʱ£¬ÏûÏ¢Òѱ»É¾³ý
EINTR£ºµ±½ø³Ì˯Ãߵȴý½ÓÊÕÏûϢʱ£¬±»ÐźÅÖжÏ
EINVAL£º²ÎÊýÎÞЧ
ENOMSG£ºmsgflgÖÐÖ¸¶¨ÁËIPC_NOWAIT£¬Í¬Ê±ËùÇëÇ


Ïà¹ØÎĵµ£º

nagios¶ÔlinuxϵͳµÄ¼à¿Ø

ÒýÓÃhttp://www.icanwen.cn/article.asp?id=18
±»¼à¿ØÖ÷»úµÄ°²×°ÅäÖÃ
1.´´½¨ÕʺÅ
  useradd nagios
   passwd nagios
2.°²×°nagios²å¼þ
  tar xvzf nagios-plugins-*.tar.gz
  ./configure
   make && make install
   chown nagios.nagios ......

LINUXÅäÖÃNFSºÍTFTP

     ÕâÁ½Ìì¸ÕÄõ½¿ª·¢°å£¬ÒªÅäÖÃLINIXÏÂÃæµÄµÄ±àÒë»·¾³¡£ÅäÖÃNFS·þÎñÆ÷ºÍTFTP,ÔÚÍíÉÏÓкܶàºÃÐĵÄÈ˰Ñ×Ô¼ºÅäÖõĹý³Ì˵ÁËÒ»±é£¬µ«ÊÇÔÚʵ¼Ê²Ù×÷Öл¹ÊdzöÏֺܶàÎÊÌ⣬ÏÖÔÚ½«×Ô¼ºÕâÁ½ÌìµÄÅäÖùý³Ì×ܽáÈçÏ£¬Ï£Íû¶Ô´ó¼ÒÓÐËù°ïÖú£º
1¡¢NFS·þÎñ
     1£©ÔÚ¿Í»§¶ËÖÐÊäÈësetup->Syst ......

[ת]linuxÏÂgdbµ¥²½µ÷ÊÔ

Óà GDB µ÷ÊÔ³ÌÐò
GDB ¸ÅÊö
————
GDB ÊÇ GNU ¿ªÔ´×éÖ¯·¢²¼µÄÒ»¸öÇ¿´óµÄ UNIX ϵijÌÐòµ÷ÊÔ¹¤¾ß¡£»òÐí£¬¸÷λ±È½Ïϲ»¶ÄÇÖÖͼÐνçÃæ·½Ê½µÄ£¬Ïñ VC ¡¢ BCB µÈ IDE µÄµ÷ÊÔ£¬µ«Èç¹ûÄãÊÇÔÚ UNIX ƽ̨ÏÂ×öÈí¼þ£¬Äã»á·¢ÏÖ GDB Õâ¸öµ÷ÊÔ¹¤¾ßÓÐ±È VC ¡¢ BCB µÄͼÐλ¯µ÷ÊÔÆ÷¸üÇ¿´óµÄ¹¦ÄÜ¡£Ëùν “ ´çÓÐË ......

linux sock_rawԭʼÌ×½Ó×Ö±à³Ì (ת£©


sock_rawԭʼÌ×½Ó×Ö±à³Ì¿ÉÒÔ½ÓÊÕµ½±¾»úÍø¿¨ÉϵÄÊý¾ÝÖ¡»òÕßÊý¾Ý°ü,¶ÔÓë¼àÌýÍøÂçµÄÁ÷Á¿ºÍ·ÖÎöÊǺÜÓÐ×÷ÓõÄ.Ò»¹²¿ÉÒÔÓÐ3ÖÖ·½Ê½´´½¨ÕâÖÖsocket
 
1.socket(AF_INET, SOCK_RAW, IPPROTO_TCP|IPPROTO_UDP|IPPROTO_ICMP)·¢ËͽÓÊÕipÊý¾Ý°ü
2.socket(PF_PACKET, SOCK_RAW, htons(ETH_P_IP|ETH_P_ARP|ETH_P_ALL))·¢ËͽÓÊÕÒÔ ......

Linux ϵĴíÎó error.h

  errno
ÊǸöint±äÁ¿£¬·µ»Ø´íÎó
ÓдíÎóʱʹÓ÷½·¨
fprintf(fp, "%s", strerror(errno))
perrorÓ÷¨
#include <stdio.h>
#include <stdlib.h>
#include<errno.h>
int main(void)
{
FILE *fp;
if((fp=fopen("aaa.txt","r+"))==NULL)
{
puts("²»ÄܽøÈ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ