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

LINUXÊØ»¤½ø³Ì


int Daemon(char* szExecName = NULL)
{
 int res = 0;
 pid_t pc;
 pc = fork();
 if(pc < 0)
 {
  fprintf(stderr,"ERROR_Deamon()_fork(): failed!");
  return -1;
 }
 else if(pc == 0) //sub process
 {
 }
 else if(pc > 0)  //parent process
 {
  fprintf(stderr,"parent process exit!\n");
  sleep(2);
  exit(0);
 }
 res = setsid();
 if(res == -1)
 {
  fprintf(stderr,"ERROR_Deamon()_setsid(): errno = %d\n", errno);
  return -1;
 }
 if(pc=fork())
  exit(0);//ÊǵÚÒ»×Ó½ø³Ì£¬½áÊøµÚÒ»×Ó½ø³Ì
 else if(pc< 0)
  exit(1);//forkʧ°Ü£¬Í˳ö
 //Êǵڶþ×Ó½ø³Ì£¬¼ÌÐø
 //µÚ¶þ×Ó½ø³Ì²»ÔÙÊǻỰ×鳤
 // for maybe its path is not current path when run.
 char szModulePath[MAX_PATH] = {0};
 GetModuleFileName(szExecName, szModulePath, sizeof(szModulePath));
 res = chdir(szModulePath);
 if(res == -1)
 {
  fprintf(stderr,"ERROR_Deamon()_chdir(): path = %s, errno = %d\n", szModulePath, errno);
  return -1;
 }
 umask(0);
 //for(int i = 0; i < MAXFILE; i++)
// {
  //close(i);
 //}
 return 0;
}Dstlen)
  *szTmp = '\0';
 return i;
}
1.»ñÈ¡³ÌÐòÔËÐеľø¶Ô·¾¶
int GetModuleFileName(char* sModuleName, char* sModulePath, int nSize)
{
 int ret = -1;
 char* p = getenv("_");
 if(p != NULL && strstr(p, sModuleName) != NULL)
 {
  realpath(p, sModulePath);
  char* p = strrchr(sModulePath, '/');
  p[1] = '\0';
  ret = 0;
 }
 else
 {
  realpath(sModuleName, sModulePath);
  char* p = strrchr(sModuleP/');
  p[1] = '\0';
  ret = 0;
 }
 return ret;
}


Ïà¹ØÎĵµ£º

VIM+GDB linux c/c++ µÄ±à³ÌÀûÆ÷

 VIM+GDB linux c/c++ µÄ±à³ÌÀûÆ÷
http://blog.csdn.net/jackyvan/archive/2010/01/15/5193693.aspx
ÆäʵVIMÒ²ÄܰѱàÒë µ÷ÊÔ¼¯³ÉÔÚÒ»Æð£¬ÏñÊÇÒ»¸öIDEÒ»Ñù¡£
Ê×ÏÈÏÖÔÚVIMµÄÔ´Â룬ÒòΪҪ¼¯³Éµ÷ÊÔ»·¾³µÄ»°ÐèÒªÖØÐ±àÒëVIM²ÅÐУ¬ËùÒÔÎÒÃDz»ÈçÖØÐ°²×°Ò»¸ö¡£
VIMµÄÏÖÔÚµØÖ·£º
http://www.vim.org/sources.php
È»ºóÏ ......

ProxyÔ´´úÂë·ÖÎö ̸̸ÈçºÎѧϰlinuxÍøÂç±à³Ì


±¾Îijö×Ô:http://www.china-pub.com ×÷Õß:ÀîÅàÔ´ (2001-08-10 12:00:00)
LinuxÊÇÒ»¸ö¿É¿¿ÐԷdz£¸ßµÄ²Ù×÷ϵͳ£¬µ«ÊÇËùÓÐÓùýLinuxµÄÅóÓѶ¼»á¸Ð¾õµ½£¬LinuxºÍWindowsÕâÑùµÄ"ɵ¹Ï"²Ù×÷ϵͳ£¨ÕâÀïË¿ºÁûÓбáµÍWindowsµÄÒâ˼£¬Ïà·´ÕâÓ¦¸ÃÊÇWindowsµÄÓŵ㣩Ïà±È£¬ºóÕßÎÞÒÉÔÚÒײÙ×÷ÐÔÉϸüʤһ³ï¡£µ«ÊÇΪʲôÓÖÓÐÄÇô¶àµÄ°®ºÃÕßÖ ......

linux ¸ù¾Ý¶Ë¿ÚºÅ²éÕÒ¶ÔÓ¦½ø³ÌµÄID£¬²Ù×÷½ø³Ì

ÒѾ­Ä³¸ö¶Ë¿ÚºÅ±»Õ¼Óã¬ÈçºÎ¸ù¾Ý¶Ë¿ÚºÅµÃµ½Õ¼ÓÃËüµÄ½ø³ÌµÄIDÄØ
ÓÃlsof
£¬lsofÔÚubuntuϵݲװÃüÁîΪapt-get install lsof
ÈôÒÑÖª¶Ë¿ÚºÅΪ15000£¬Ôò¶ÔÓ¦²éÕÒÃüÁîΪlsof -i | grep 15000
±¾»úÏÔʾ½á¹ûΪ£º
host    3386
trinea    4u  IPv4  16907    & ......

linux ÊØ»¤½ø³Ì


int Daemon(char* szExecName = NULL)
{
 int res = 0;
 pid_t pc;
 pc = fork();
 if(pc < 0)
 {
  fprintf(stderr,"ERROR_Deamon()_fork(): failed!");
  return -1;
 }
 else if(pc == 0) //sub process
 {
 }
 else if( ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ