linux fork() º¯ÊýʵÀýÏê½â
forkº¯Êýѧϰ£º
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
main ()
{
pid_t pid; pid=fork();
if (pid < 0)
printf("error in fork!");
else if (pid == 0)
printf("i am the child process, my process id is %dn",getpid());
else
printf("i am the parent process, my process id is %dn",getpid());
}
Õâ¶Î´úÂëдÁËÒ»¸öʹÓÃforkº¯Êý´´½¨×Ó½ø³Ì£¬¸¸×Ó½ø³ÌͬʱÔËÐжø²úÉú½»´íµÄ£¬²»Ò»ÑùµÄÔËÐнá¹û¡£ÔËÐнá¹ûÈçÏ£º
# ./a.out
i am the child process, my process id is 4286
i am the parent process, my process id is 4285
forkÔÚÓ¢ÎÄÖÐÊDzæ×Ó£¬·Ö²æµÄÒâ˼£¬ÔÚº¯ÊýforkÖУ¬È¡ºóÃæµÄÒâ˼¡£ºÜÐÎÏóµÄ±íʾ³ÌÐò´ÓÕâÀï·Ö²æ£¬forkº¯Êý´´½¨ÁË×Ó½ø³Ì£¬×Ó½ø³ÌºÍ¸¸½ø³Ìͬʱ£¨ÆäʵÊÇcpu·Öʱ´¦Àí£©¿ªÊ¼ÔËÐзֲæÖ®ºóµÄ³ÌÐò¡£
³ÌÐò¸ÄдÏ£º
main()
{
pid_t pid;
printf("\n[%d]not fork pid=%d\n",getpid(),pid);
pid=fork();
printf("\n[%d]forked pid=%d\n",getpid(),pid);
if(pid<0)
{
printf("error in fork!\n");
getchar();
exit(1);
}
else if(pid==0)
printf("\n[%d]in child process,p_id=%d\n",getpid(),getpid());
else
{
printf("\n[%d]in parent process,my pid=%d\n",getpid(),pid);
printf("\n[%d]in parent process,my getpid=%d\n",getpid(),getpid());
}
}
³ÌÐòÔËÐнá¹ûÈçÏ£º
$ ./fork
[3819]not fork
[3820]forked pid=0
[3820]in child process,p_id=3820
[3819]forked pid=3820
[3819]in parent process,my pid=3820
[3819]in parent process,my getpid=3819
¿ÉÒÔÇå³þµÄ¿´µ½ not forkÖ»´òÓ¡ÁËÒ»´Î£¬ÆäÖÐ[3819]ÊǸ¸½ø³ÌµÄ½ø³ÌºÅ£¬´´½¨forkÒÔºó£¬forkº¯Êý·µ»Ø¸ø¸¸½ø³ÌµÄÖµpidÊÇ×Ó½ø³ÌµÄ½ø³ÌºÅ[3820]£¬¶øÔÚ×Ó½ø³ÌÖУ¬pidֵΪÁã¡£Ò²¾ÍÊÇ˵×Ó½ø³ÌÖУ¬pid±»ÖÃÁã¡£ ÒýÓÃÍøÉÏÒ»Î»ÍøÓѵĽâÊÍ“Æäʵ¾ÍÏ൱ÓÚÁ´±í£¬½ø³ÌÐγÉÁËÁ´±í£¬¸¸½ø³Ìpid(p Òâζpoint)Ö¸Ïò×Ó½ø³ÌµÄ½ø³
Ïà¹ØÎĵµ£º
1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......
¹¹½¨ARM Linux½»²æ±àÒ빤¾ßÁ´--Crosstool
ÔÚͬһ¸öÌåϵƽ̨ÉÏ¿ª·¢³ÌÐòÊôÓÚ±¾µØ±àÒ룬ÔÚ²»Í¬µÄÌåϵƽ̨ÉÏ¿ª·¢ÆäËûƽ̨µÄ³ÌÐò£¬Õâʱ¾ÍÐèÒªÀûÓý»²æ±àÒ빤¾ßÁ´£¬ÊôÓÚ½»²æ±àÒë¡£¶øÏÖÔÚÎÒÕýÊÇÔÚi386ƽ̨ÉÏ¿ª·¢armÌåϵµÄ³ÌÐò£¬Õâʱ¾ÍÐèÒª½»²æ±àÒ빤¾ßÁË¡£
......
ÔÚlinuxϰ²×°ÅäÖÃsvn¶ÀÁ¢·þÎñÆ÷
subversion(ÒÔϼò³Æsvn)ÊǽüÄêÀ´áÈÆðµÄ°æ±¾¹ÜÀí¹¤¾ß£¬ÊÇcvsµÄ½Ó°àÈË¡£ svn·þÎñÆ÷ÓÐ2ÖÖÔËÐз½Ê½£º¶ÀÁ¢·þÎñÆ÷ºÍ½èÖúapache¡£2ÖÖ·½Ê½¸÷ÓÐÀû±×¡£
svn´æ´¢°æ±¾Êý¾ÝÒ²ÓÐ2ÖÖ·½Ê½£ºBDBºÍFSFS¡£ÒòΪBDB·½Ê½ÔÚ·þÎñÆ÷ÖжÏʱ£¬ÓпÉÄÜËø×¡Êý¾Ý£¨ÎÒÔÚ¸ãldapʱ¾ÍÉîÊÜÆäº¦£¬Ã»·¨¸ùÖΣ©£¬ËùÒÔ»¹ÊÇ ......
³£¼ûµÄÎÞÏß¼ÓÃÜ·½Ê½ÓÐwepºÍwpaÁ½´óÀà¡£
1.WEP¼ÓÃÜ·½Ê½
ÕâÖÖ·½Ê½¼ÓÃܵÄÎÞÏ߿ͻ§¶Ë¿ÉÖ±½ÓÓÃwireless-toolsÍê³ÉÎÞÏßÁ¬½ÓµÄ½¨Á¢¡£
ÈÝÒ×±»ºöÂÔµÄÒªµãÊÇÔÚÄÚºËÖÐÑ¡ÖÐieee80211_crypt_wepºÍieee80211_crypt£¬µ±È»»ù´¡µÄÎÞÏßÇý¶¯»¹ÊǵÃÔ¤ÏÈ×°ºÃ¡£
È»ºóÓÃ
iwconfig wlan0 essid "ÎÞÏßessid" channel <Ê ......
ά»¤LinuxµÄssh¹¤¾ßÔÚʹÓÃÖУ¬Ò»µ©Óöµ½ÍøÂçÖжϣ¬Ôòµ±Ç°µÄshell¾Í»á×Ô¶¯¹Ø±Õ
µ±Ç°µÄ¹¤×÷½ø¶È¾Í»á¶ªÊ§£¬Õâ¶ÔÓÚÔ¶³ÌÉý¼¶µÈ±È½ÏºÄ·Ñʱ¼äµÄ¹¤×÷ÊǷdz£²»ÀûµÄ
¶ÔÓÚÔ¶³Ìµ÷ÊÊ´úÂëÒ²ÊǺܲ»¿É¿¿²»°²È«µÄ
Ϊ´Ë£¬¿ÉÒÔʹÓÃscreenÕâ¸ö¹¤¾ßÀ´½â¾öÕâ¸öÎÊÌâ¡£
¶ÔÓÚ×îС»¯µÄlinux£¬Í¨³£screenÊDz»°üº¬ÔÚϵͳÄڵġ£
ÐèÒª²éÕÒ²Ù×÷ϵͳµÄ°² ......