linuxÏÂCÓïÑÔ¶àÏ̱߳à³ÌʵÀý
ѧ¶«Î÷£¬ÍùÍùʵÀý²ÅÊÇ×îÈÃÈ˸ÐÐËȤµÄ£¬ÀÏÊÇѧ»ù´¡ÀíÂÛ£¬²»¶¯ÊÖ£¬¸Ð¾õûÓгɾ͸У¬ºÇºÇ¡£
ÏÂÃæÏÈÀ´Ò»¸öʵÀý¡£ÎÒÃÇͨ¹ý´´½¨Á½¸öÏß³ÌÀ´ÊµÏÖ¶ÔÒ»¸öÊýµÄµÝ¼Ó¡£
»òÐíÕâ¸öʵÀýûÓÐʵ¼ÊÔËÓõļÛÖµ£¬µ«ÊÇÉÔ΢¸Ä¶¯Ò»Ï£¬ÎÒÃǾͿÉÒÔÓõ½ÆäËûµØ·½È¥À¡£
ÏÂÃæÊÇÎÒÃǵĴúÂ룺
/*thread_example.c : c multiple thread programming in linux
*author : falcon
*E-mail : tunzhj03@st.lzu.edu.cn
*/
#include <pthread.h>
#include <stdio.h>
#include <sys/time.h>
#include <string.h>
#define MAX 10
pthread_t thread[2];
pthread_mutex_t mut;
int number=0, i;
void *thread1()
{
printf ("thread1 : I'm thread 1\n");
for (i = 0; i < MAX; i++)
{
printf("thread1 : number = %d\n",number);
pthread_mutex_lock(&mut);
number++;
pthread_mutex_unlock(&mut);
sleep(2);
}
printf("thread1 :Ö÷º¯ÊýÔÚµÈÎÒÍê³ÉÈÎÎñÂð£¿\n");
pthread_exit(NULL);
}
void *thread2()
{
printf("thread2 : I'm thread 2\n");
for (i = 0; i < MAX; i++)
{
printf("thread2 : number = %d\n",number);
pthread_mutex_lock(&mut);
number++;
pthread_mutex_unlock(&mut);
sleep(3);
}
printf("thread2 :Ö÷º¯ÊýÔÚµÈÎÒÍê³ÉÈÎÎñÂð£¿\n");
pthread_exit(NULL);
}
void thread_create(void)
{
int temp;
memset(&thread, 0, sizeof(thread)); //comment1
/*´´½¨Ïß³Ì*/
if((temp = pthread_create(&thread[0], NULL, thread1, NULL)) != 0) //comment2
printf("Ïß³Ì1´´½¨Ê§°Ü!\n");
else
printf("Ïß³Ì1±»´´½¨\n");
if((temp = pthread_create(&thread[1], NULL, thread2, NULL)) != 0) //comment3
printf("Ïß³Ì2´´½¨Ê§°Ü");
else
printf("Ïß³Ì2±»´´½¨\n");
}
void thread_wait(void)
{
/*µÈ´
Ïà¹ØÎĵµ£º
×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......
½â¾ö²½Ö裺ÒÔarm-linux-gcc-4.3.2.tgzΪÀý
1. °Ñarm-linux-gcc-4.3.2.tgz¿½±´µ½ÄãÖ¸¶¨µÄĿ¼ÀȻºóÓÃtarÃüÁî½âѹµ½µ±Ç°Ä¿Â¼¡£³É¹¦ºó£¬»áÔÚ4.3.2/binÏÂÕÒµ½arm-linux-gcc¡£
ÀýÈ磺/opt/arm-linux-gcc-4.3.2.taz£¬ÒÔÏÂÃüÁºìɫΪϵͳÌáʾ·û£¬ºÚɫΪÓû§ÃüÁî
gylu@dell-desktop:~$ ......
viÓëvimÒ»Ñù¶¼ÊÇ±à¼Æ÷£¬²»Í¬µÄÊÇvim¸ü¸ß¼¶Ò»Ð©£¬¿ÉÒÔÀí½âÊÇviµÄ¸ß¼¶°æ±¾¡£vi¾ÍÏñWindowsÖеļÆÊ±¾£¬¶øvimÔò¿ÉÒÔËãµÄÉÏÊÇ
officeÖеÄword¡£viÖ÷ÒªÓÃÀ´±à¼Ò»Ð©Îļþ£¬vimÊdzÌÐòÔ±µÄºÃ¹¤¾ß¡£ºÃµÄ¡£¡£¡£¡£ÏÂÃæÔÚ½éÉÜÒ»ÏÂviµÄʹÓᣡ£¡£¡£¡£¡£
1.
ʹÓÃvi½øÈëÒ»°ãģʽ
[root@linux ~]# vi test.tx ......
LinuxµÄI/O»úÖÆ¾ÀúÁËһϼ¸¸ö½×¶ÎµÄÑݽø£º
1. ͬ²½×èÈûI/O: Óû§½ø³Ì½øÐÐI/O²Ù×÷£¬Ò»Ö±×èÈûµ½I/O²Ù×÷Íê³ÉΪֹ¡£
2. ͬ²½·Ç×èÈûI/O: Óû§³ÌÐò¿ÉÒÔͨ¹ýÉèÖÃÎļþÃèÊö·ûµÄÊôÐÔO_NONBLOCK£¬I/O²Ù×÷¿ÉÒÔÁ¢¼´·µ»Ø£¬µ«ÊDz¢²»±£Ö¤I/O²Ù×÷³É¹¦¡£
3. Ò첽ʼþ×èÈûI/O: Óû§½ø³Ì¿ÉÒÔ¶ÔI/Oʼþ½øÐÐ×èÈû£¬µ«ÊÇI/O²Ù×÷²¢²»×èÈû¡£Í¨¹ýse ......
http://www.askwan.com/post/28/
haproxy+keepalived
LinuxÆóÒµ¼¯Èº
http://book.51cto.com/art/200806/76015.htm#
µÚÒ»²½:rsyncͬ²½webÊý¾Ý£¨²âÊÔͨ¹ý²¢ÇÒ×Ô¼º¼ÓÈëÁËsshµÄRSA keyÑéÖ¤£©
http://www.linuxsir.org/main/?q=node/256 rsync ·þÎñÆ÷¼ÜÉè·½·¨ v0.1b £¨ÕýÔÚÐÞ¶©ÖУ©
µÚ¶þ²½:°²×°heartbeat²¢ÇÒ¿ ......