linuxϵÄdeamon½ø³Ì
Éè¼ÆÒ»¸ölinuxϵÄdeamon½ø³Ì£¬¹Ø¼üÖ»Óм¸¸ö£º
1.forkÁ½´Î¡£
2.forkµÚÒ»´ÎºÍµÚ¶þ´ÎÖ®¼ä³ÉΪ½ø³Ì×éÍ·¡£
3.¸Ä±ä¹¤×÷Ŀ¼¡£
4.ºöÂÔÐźš£
5.ÉèÖöÁдÑÚÂë¡£
Ò»ÏÂÊÇÒ»¸ö´ÓÍøÂçËѼ¯µ½µÄÀý³Ì£¬·Ç³£ºÃµÄÑÝʾÁËÉÏÊöÒªµã£¬´æ´Ë±¸Íü¡£
#include
#include
#include
#include
void main(int argc, char ** argv)
{
time_t now;
int childpid, fd, fdtablesize;
int error, in, out;
/*ºöÂÔÖÕ¶Ë I/OÐźÅ,STOPÐźÅ*/
signal(SIGTTOU,SIG_IGN);
signal(SIGTTIN,SIG_IGN);
signal(SIGTSTP,SIG_IGN);
signal(SIGHUP,SIG_IGN);
/*¸¸½ø³ÌÍ˳ö£¬³ÌÐò½øÈëºǫ́ÔËÐÐ*/
if( fork()!=0 )
{
exit(1);
}
if( setsid()<0 )
{
exit(1); /*´´½¨Ò»¸öеĻáÒé×é*/
}
/*×Ó½ø³ÌÍ˳ö£¬Ëï½ø³Ìʧȥ¿ØÖÆÖÕ¶ËÁË*/
if( fork()!=0 )
{
exit(1);
}
if( chdir("/tmp")==-1 )
{
exit(1);
}
/*¹Ø±Õ´ò¿ªµÄÎļþÃèÊö·û£¬°üÀ¨±ê×¼ÊäÈë¡¢±ê×¼Êä³öºÍ±ê×¼´íÎóÊä³ö*/
fd=0;
for(fdtablesize=getdtablesize(); fd< fdtablesize;fd++)
{
close(fd);
}
umask(0);/*ÖØÉèÎļþ´´½¨ÑÚÂë*/
signal(SIGCHLD,SIG_IGN);/*ºöÂÔSIGCHLDÐźÅ*/
/*´Ë´¦£¬¿ÉÒÔ×ö×Ô¼ºÏë×öµÄ·þÎñÀý³Ì´úÂë¡£Ò»°ãÊÇÒ»¸öËÀÑ»·£¬Èç¹ûÒª¿ÉÒÔ¿ØÖƵÄÍ˳öµÄ»°£¬¿ÉÒÔÉèÖûñÈ¡Ðźš£ÏÂÃæʾÀýÒ»ÏÂÒ»¸öдlogµÄÀý³Ì
*/
/*дlog£¬²âÊÔ½á¹û*/
syslog(LOG_USER|LOG_INFO,"ÊØ»¤½ø³Ì²âÊÔ£¡\n");
while(1)
{
time(&now);
syslog(LOG_USER|LOG_INFO,"µ±Ç°Ê±¼ä£º\t%s\t\t\n",ctime(&now));
sleep(6);
}
}
ÉÏÊö³ÌÐòÔÚgcc4.0.1ϱàÒëͨ¹ý£¬ÔÚfc4-2.6.11ÏÂÎȶ¨ÔËÐС£
syslog½«Á¬½ÓsyslogdÕâ¸ö·þÎñ£¬ÔÚ/var/log/messageÕâ¸öÎļþÀïÃæÊä³öÏûÏ¢£¬ËùÒÔÐèÒªÆô¶¯syslogd·þÎñ¡£·ñÔòÔÚ/var/log/messageÕâ¸öÎļþÀïÃæ²»»áÓÐÏÔʾ¡£
Ïà¹ØÎĵµ£º
linuxÉ豸Çý¶¯µÄѧϰÊÇÒ»ÏîºÆ´óµÄ¹¤³Ì,¶ÁÕßÐèÒªÊ×ÏÈÕÆÎÕÒÔÏ»ù´¡:
1.Á¼ºÃµÄÓ²¼þ»ù´¡,¶®µÃSRAM,FLASH,SDRAM,Ó²Å̵ĶÁд·½Ê½,UART,I2C,USBµÈÉ豸½Ó ¿Ú,ÂÖѯ,ÖжÏ,DMAµÄÔÀí,PCI×ÜÏߵŤ×÷·½Ê½ÒÔ¼°CPUµÄÄÚ´æ¹ÜÀíµ¥Ôª(MMU)µÈ.
2.Á¼ºÃµÄCÓïÑÔ»ù´¡,ÄÜÁé»îµØÔ ......
×÷Õߣº¸ßÕÅÔ¶Öõ(HiLoveS)
²©¿Í£ºhttp://www.cnblogs.com/hiloves/
תÔØÇë±£Áô¸ÃÐÅÏ¢
XManager ÊÇÒ»¸ö¼òµ¥Ò×ÓõĸßÐÔÄܵÄÔËÐÐÔÚWindowsƽ̨ÉϵÄX-ServerÈí¼þ£¬¶øGnomeºÍKDE¾ÍÊÇX-Client£¬LinuxϵÄX- ServerÔòΪXorg¡£ËüÄÜ°ÑÔ¶¶ËUnix/LinuxµÄ×ÀÃæÎÞ·ìµØ´øµ½ÄãµÄWindowsÉÏ£¬ÉõÖÁµ±ÄãµÄµçÄÔÊÇÔÚÄÚÍø»ò·À»ðǽºó£¬ÄãÒ²ÄÜͨ ......
fdisk -l ÃüÁî¿´µ±Ç°´ÅÅÌÐÅÏ¢
[root@roswell root]# fdisk /dev/sdb
Command (m for help): m --´òÓ¡¸ÃÃüÁîµÄ²ÎÊý¹¦ÄÜÁбí
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibil ......
±¾ÎÄÑ¡×Ô¡¶LinuxϵͳÓëÍøÂç·þÎñ¹ÜÀí¼¼Êõ´óÈ«£¨µÚ2°æ£©¡·Ò»Êé
µÚ2°æ Ç°ÑÔ LinuxÊÇÒ»¸öÓÅÐãµÄ¡¢ÈÕÒæ³ÉÊìµÄ²Ù×÷ϵͳ£¬¾¹ýÊ®¼¸ÄêµÄ·¢Õ¹£¬ÒѾӵÓÐÁË´óÁ¿µÄÓû§¡£ÎªÁËÂú×ãÖÚ¶àLinux³õѧÕß¡¢°®ºÃÕß¼°×¨ÒµÈËÔ±µÄʹÓÃÐèÒª£¬±ÊÕßÔÚ¶àÄê´ÓÊÂLinuxÑо¿¡¢½Ìѧ¼°¿ª·¢¹¤×÷µÄ»ù´¡ÉϾ ......
Õâ¸öÎÊÌâ˵ÆðÀ´¿É´ó¿ÉС£¬¿É³¤¿É¶Ì£¬»ù±¾¶¼ÊÇ×Ô¼ºÇÐÉíµÄ¾Ñé×ܽᡣ
¸ßүү˵¹ý"¹ýÔçµÄÓÅ»¯ÊÇÍò¶ñÖ®Ô´"£¬×ö¿ª·¢²»¿ÉÄÜÒ»¿ªÊ¼¾ÍÏë×ÅÓÅ»¯£¬Ó¦¸Ã´ÓÈ«¾Ö¿¼Á¿£¬´Ó¸÷¸ö½Ç¶Èȥ˼¿¼£¬È¨ºâÀû±×£¬×ö³öÒ»¸ö
·ûºÏ´ó¾ÖÀûÒæµÄÉè¼Æ£¬ÏÂÀ´ÔÙ¿¼ÂÇÈçºÎÓÅ»¯¡£
ÓÅ»¯ÊÇÔÚÏÖÓÐÒѳÉÐεÄÉè¼Æ¼Ü¹¹Ï£¬×öµÄÐÔÄÜÌáÉý¡£¼ÙÈçÄãÒ»¿ªÊ¼¾ÍÉè¼ÆÒ»¸öµÍÐÔÄÜµÄ ......