linuxÏÂsystem£¨£©Ïê½â £¨×ª£©
linux²Ù×÷ϵͳÏÂsystem () º¯ÊýÏê½â
¡¡¡¡£¨Ö´ÐÐshell ÃüÁ
¡¡¡¡Ïà¹Øº¯Êý
¡¡¡¡fork£¬execve£¬waitpid£¬popen
¡¡¡¡±íÍ·Îļþ
¡¡¡¡££include<stdlib.h>
¡¡¡¡¶¨Ò庯Êý
¡¡¡¡int system(const char * string);
¡¡¡¡º¯Êý˵Ã÷
¡¡¡¡system()»áµ÷ÓÃfork()²úÉú×Ó½ø³Ì£¬ÓÉ×Ó½ø³ÌÀ´µ÷ÓÃ/bin/sh-c stringÀ´Ö´ÐвÎÊýstring×Ö·û´®Ëù´ú±íµÄÃüÁ´ËÃü>ÁîÖ´ÐÐÍêºóËæ¼´·µ»ØÔµ÷ÓõĽø³Ì¡£ÔÚµ÷ÓÃsystem()ÆÚ¼äSIGCHLD ÐźŻᱻÔÝʱ¸éÖã¬SIGINTºÍSIGQUIT ÐźÅÔò»á±»ºöÂÔ¡£
¡¡¡¡·µ»ØÖµ
¡¡¡¡=-1:³öÏÖ´íÎó
¡¡¡¡=0:µ÷Óóɹ¦µ«ÊÇûÓгöÏÖ×Ó½ø³Ì
¡¡¡¡>0:³É¹¦Í˳öµÄ×Ó½ø³ÌµÄid
¡¡¡¡Èç¹ûsystem()ÔÚµ÷ÓÃ/bin/shʱʧ°ÜÔò·µ»Ø127£¬ÆäËûʧ°ÜÔÒò·µ»Ø-1¡£Èô²ÎÊýstringΪ¿ÕÖ¸Õë(NULL)£¬Ôò·µ»Ø·ÇÁãÖµ>¡£Èç¹ûsystem()µ÷Óóɹ¦Ôò×îºó»á·µ»ØÖ´ÐÐshellÃüÁîºóµÄ·µ»ØÖµ£¬µ«ÊÇ´Ë·µ»ØÖµÒ²ÓпÉÄÜΪ system()µ÷ÓÃ/bin/shʧ°ÜËù·µ»ØµÄ127£¬Òò´Ë×îºÃÄÜÔÙ¼ì²éerrno À´È·ÈÏÖ´Ðгɹ¦¡£
¡¡¡¡¸½¼Ó˵Ã÷
¡¡¡¡ÔÚ±àд¾ßÓÐSUID/SGIDȨÏ޵ijÌÐòʱÇëÎðʹÓÃsystem()£¬system()»á¼Ì³Ð»·¾³±äÁ¿£¬Í¨¹ý»·¾³±äÁ¿¿ÉÄÜ»áÔì³Éϵͳ°²È«µÄÎÊÌâ¡£
¡¡¡¡·¶Àý
¡¡¡¡££i nclude<stdlib.h>
¡¡¡¡main()
¡¡¡¡{
¡¡¡¡system(“ls -al /etc/passwd /etc/shadow”);
¡¡¡¡}
¡¡¡¡Ö´Ðнá¹û£º
¡¡¡¡-rw-r--r-- 1 root root 705 Sep 3 13 :52 /etc/passwd
¡¡¡¡-r--------- 1 root root 572 Sep 2 15 :34 /etc/shado
¡¡¡¡Àý2£º
¡¡¡¡char tmp[];
¡¡¡¡sprintf(tmp,"/bin/mount -t vfat %s /mnt/usb",dev);
¡¡¡¡system(tmp);
¡¡¡¡ÆäÖÐdevÊÇ/dev/sda1.
Ïà¹ØÎĵµ£º
·find path -option [ -print ] [ -exec -ok command ] {} \;
#-print ½«²éÕÒµ½µÄÎļþÊä³öµ½±ê×¼Êä³ö
#-exec command {} \; -----½«²éµ½µÄÎļþÖ´ÐÐcommand²Ù×÷,{} ºÍ \;Ö®¼äÓпոñ
#-ok ºÍ-execÏàͬ£¬Ö»²»¹ýÔÚ²Ù×÷ǰҪѯ ......
[ת]Linux¶¨Ê±Æ÷
ºËÖ÷ÒªÐèÒªÁ½ÖÖÀàÐ͵Äʱ¼ä£º
1.
ÔÚÄÚºËÔËÐÐÆÚ¼ä³ÖÐø¼Ç¼µ±Ç°µÄʱ¼äÓëÈÕÆÚ£¬ÒÔ±ãÄں˶ÔijЩ¶ÔÏóºÍʼþ×÷ʱ¼ä±ê¼Ç£¨
timestamp
£¬Ò²³ÆΪ
“
ʱ¼ä´Á
”
£©£¬»ò¹©ÓÃ
»§Í¨¹ýʱ¼ä
syscall ......
1¡¢ÒýÑÔ
ÔÚlinuxϵͳÏ£¬Èç¹ûÄãÏÂÔز¢°²×°ÁËÓ¦ÓóÌÐò£¬ºÜÓпÉÄÜÔÚ¼üÈëËüµÄÃû³Æʱ³öÏÖ“command not found”µÄÌáʾÄÚÈÝ¡£Èç¹ûÿ´Î¶¼µ½°²×°Ä¿±êÎļþ¼ÐÄÚ£¬ÕÒµ½¿ÉÖ´ÐÐÎļþÀ´½øÐвÙ×÷¾ÍÌ«·±ËöÁË¡£ÕâÉæ¼°µ½»·¾³±äÁ¿PATHµÄÉèÖÃÎÊÌ⣬¶øPATHµÄÉèÖÃÒ²ÊÇÔÚlinux϶¨ÖÆ»·¾³±äÁ¿µÄÒ»¸ö×é³É²¿·Ö¡£±¾ÎÄ»ùÓ ......
±¾ÎÄÀ´×Ô£ºhttp://blog.chinaunix.net/u2/66786/showart.php?id=601766
1.1Ê·Ç°µÄPIC
8259AÊǼ´ÎÒÃÇͨ³£ËµµÄPIC£¬Èçͼ1-1Ëùʾ£º
ͼ1-1 8259A
ÆäÖÐ×îÖØÒªµÄ¹Ü½ÅÊÇIR0~IR7£¨Interrupt Request0~7£¬ÓÃÓÚÁ¬½ÓÉ豸£©¡¢INT£¨Á¬½ÓCPU,µ±ÓÐÖжÏÇëÇóʱ£¬À¸ß¸Ã¹Ü½ÅÒÔ֪ͨCPUÖжϵĵ½À´£©¡¢INTA£¨Á¬½ÓCPU£¬CPUͨ¹ý¸Ã¹Ü½ ......
1.2.2 LAPIC
ÊÕµ½À´×ÔIOAPICµÄÖжÏÏûÏ¢ºó£¬LAPIC»á½«¸ÃÖжϽ»ÓÉCPU´¦Àí¡£ºÍIOAPIC±È½Ï£¬LAPIC¾ßÓиü¶àµÄ¼Ä´æÆ÷ÒÔ¼°¸ü¸´ÔӵĻúÖÆ¡£µ«¶ÔÓÚ´¦ÀíÀ´×ÔIOAPICµÄÖжÏÏûÏ¢£¬×îÖØÒªµÄ¼Ä´æÆ÷»¹ÊÇIRR¡¢ISRÒÔ¼°EOI¡£
ͼ1-4ÏÔʾÁËx86ƽ̨ÉÏ£¬IRRºÍISRµÄ¸ñʽ£º
ͼ1-4 IRR¡¢ISR¹¹³É
ÓëPICÖеÄIRR¡¢ISR²»Í¬µÄÊÇ£¬LAPICµÄISR¡¢ ......