LINUX C ¶¨Ê±Æ÷
¡¾ÊµÏÖ¹¦ÄÜ¡¿£ºLinuxϵÄC±à³Ì£º±àдһ¸ö³ÌÐò£¨¿â£©£¬ÊµÏÖ¶¨Ê±Æ÷£¨¼ÆÊ±Æ÷£©µÄ¹¦ÄÜ£¬ËüÄÜΪÓû§ÌṩÔÚͬһ½ø³ÌÖжà´ÎʹÓõĶ¨Ê±Æ÷¡£ÕâÀïÒªÇóÓÃÐźÅÀ´ÊµÏÖ¡£
¡¾½âÌâ˼·¡¿£º±àдһ¸ö½á¹¹ÌåTimer´ú±íÒ»¸ö¼ÆÊ±Æ÷£¬È»ºóÔÙ¶¨ÒåTimerÀàÐ͵ÄÊý×émyTimer[N]£¬ÓÃÀ´±£´æÎÒÃÇÉèÖõĶ¨Ê±Æ÷£»ÔÙ¶¨Ò庯ÊýsetTimer£¨£©Éú³É¼ÆÊ±Æ÷£¬²¢½«Éú³ÉµÄ¼ÆÊ±Æ÷±£´æµ½myTimerÖУ¬ÕâÑùͨ¹ý¶à´Îµ÷Ó㬾ͿÉÒÔÔÚͬһ¸ö½ø³ÌÖÐÉú³É¶à¸ö¼ÆÊ±Æ÷£»¶¨Òåtimeout()ÐźŴ¦Àíº¯Êý£¬Ã¿¸ôÒ»Ãë²úÉúÒ»¸öÐźţ¬Í¨¹ýµ÷ÓÃtimeout()¶ÔËùÓеĶ¨Ê±Æ÷ɨÃèÒ»±é£¬¼ì²éÄÄЩ¼ÆÊ±Æ÷³¬Ê±¡£
¡¾³ÌÐò´úÂë¡¿£ºÈçÏÂ
#include<stdlib.h>
#include<unistd.h>
#include<signal.h>
#include<time.h>
#include<sys/time.h>
#define N 100 //ÉèÖÃ×î´óµÄ¶¨Ê±Æ÷¸öÊý
int i=0,t=1; //i´ú±í¶¨Ê±Æ÷µÄ¸öÊý£»t±íʾʱ¼ä£¬ÖðÃëµÝÔö
struct Timer //Timer½á¹¹Ì壬ÓÃÀ´±£´æÒ»¸ö¶¨Ê±Æ÷µÄÐÅÏ¢
{
int total_time; //ÿ¸ôtotal_timeÃë
int left_time; //»¹Ê£left_timeÃë
int func; //¸Ã¶¨Ê±Æ÷³¬Ê±£¬ÒªÖ´ÐеĴúÂëµÄ±êÖ¾
}myTimer[N]; //¶¨ÒåTimerÀàÐ͵ÄÊý×飬ÓÃÀ´±£´æËùÓеĶ¨Ê±Æ÷
void setTimer(int t,int f) //н¨Ò»¸ö¼ÆÊ±Æ÷
{
struct Timer a;
a.total_time=t;
a.left_time=t;
a.func=f;
myTimer[i++]=a;
}
void timeout() //Åж϶¨Ê±Æ÷ÊÇ·ñ³¬Ê±£¬ÒÔ¼°³¬Ê±Ê±ËùÒªÖ´Ðе͝×÷
{
printf("Time: %d\n",t++);
int j;
for(j=0;j<i;j++)
{
if(myTimer[j].left_time!=0)
myTimer[j].left_time--;
else
{
switch(myTimer[j].func){ //ͨ¹ýÆ¥ÅämyTimer[j].func£¬ÅжÏÏÂÒ»²½Ñ¡ÔñÄÄÖÖ²Ù×÷
 
Ïà¹ØÎĵµ£º
°²×°²½Ö裺
Ø °²×°resinǰÏÈÒª±£Ö¤°²×°ÁËJDK£¬¿ÉÒÔÓÃÃüÁî²é¿´ÊÇ·ñ°²×°ÁËJDK£º
[root@wxr webapps]# java -versions
java version "1.6.0_19"
Java(TM) SE Runtime Environment (build 1.6.0_19-b04)
Java HotSpot(TM) Client VM (build 16.2-b04, mixed mode, sharing)
Ø ÏÂÔØRes ......
×î½üÔÚ¿´Ò»¸ö¿ªÔ´µÄ´úÂ룬һ¶Î´úÂë¿´Á˺ܾö¼Ã»Óп´¶®£¬GoogleÁËһϣ¬¾¡È»ÊÇlinuxÖÐÁ´±íµÄ±éÀú¡£
±éÀúÁ´±í£º
±éÀúÁ´±ílist_for_eachÊÇÒ»¸öºê£¬Õ¹¿ªÁ˾ÍÊÇÒ»¸öforÑ»·
#define list_for_each(pos, head) \
for (pos = (head)->next; prefetch(pos->next), pos != ( ......
ºÜ¶àLINUX³õѧÕß·Ö²»Çå³þlinuxºÍXÖ®¼ä,XºÍXfree86Ö®¼ä,XºÍKDE,GNOMEµÈÖ®¼äÊÇʲô¹ØÏµ.³£³£»ìÏý¸ÅÄî,ÎÒÏëÒԱȽÏÒ×ÓÚÀí ½âµÄ·½Ê½ËµÃ÷Ò»ÏÂX,X11,XFREE,WM,KDE,GNOMEµÈÖ®¼äµÄ¹ØÏµ.ÓÉÓÚ±¾ÈËˮƽÓÐÏÞ¿ÉÄÜ´æÔÚ´íÎó,Çë¸ßÊÖÖ¸Õý.
Ò»,linux±¾ÉíûÓÐͼÐνçÃæ,linuxÏÖÔÚµÄͼÐνçÃæµÄʵÏÖÖ»ÊÇlinuxϵÄÓ¦ÓóÌÐòʵÏÖµÄ.
ͼ ÐνçÃæ²¢²»ÊÇ ......
<1> ÈÎÎñ0µÄ¶ÑÕ»ÎÊÌâ
Ò»Ö±²»Ã÷°×schedule.cÀïµÄtask_unionµÄstackºÍuser_stackÊÇʲô¹ØÏµ£¬head.sÀï¾ÍÉèÖÃÁËespÖ¸Ïòuser_stack, ȴһֱûÓÐÓõ½task_union£¬Ö±µ½¿´µ½INIT_TASK²ÅÃ÷°×£¬´Ó½øÈë±£»¤Ä£Ê½µ½Ìø×ª½øÓû§Ì¬¶¼ÊÇÓõÄuser_stackÕâ¸öÕ»£¬¶øÈÎÎñ0µÄtssÖеÄesp0Ö¸Ïòtask_unionµÄstack, Ò²¾ÍÊǵ±ÈÎÎñ0ÔÙÌø×ª½øÄÚºË ......
Covtool
ÊÇÒ»¸öÓöÔ
C++
´úÂë½øÐÐÔËÐÐʱ¸²¸ÇÂʼì²éµÄ¹¤¾ß£¬¿ÉÒÔÒÔÐÐΪµ¥Î»¼ì²é³öÄÇЩ´úÂëÔÚÔËÐÐÖб»Ê¹Óã¬ÄÇЩûÓÐʹÓá£
1.
°²×°
make
make tests
make install
½«
/usr/local/covtool
Ìí¼Óµ½
PATH
½«
/usr/local/covtools
Ìí¼Óµ½
MANPATH£¨´Ë²½ºÜÖØÒª£¬ËüµÄman±ÈÎ ......