linux ¶¨Ê±Æ÷ʹÓÃÒ»
#include <sys/time.h>
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <string.h>
static char *runStatusFile = "/syscfg/etc/runStatusFile";
//static char *runStatusFile = "runStatusFile";
FILE *pFile = NULL;
char runCountStr[10]={0};
unsigned runCountInt = 0;
char runTimeStr[15]={0};
unsigned runTimeInt = 0;
void doTask()
{
pFile = fopen(runStatusFile, "r+");
/*
if(NULL == pFile)
{
pFile = fopen(runStatusFile,"w+");
fseek (pFile, 0L, SEEK_SET);
fwrite("0", sizeof(char), 1, pFile);
fseek (pFile, 6L, SEEK_SET);
fwrite("0", sizeof(char), 1, pFile);
}
*/
fseek (pFile, 11L, SEEK_SET);
fread (runTimeStr, sizeof(char), 10, pFile);
runTimeInt = atoi(runTimeStr);
runTimeInt += 30;
fseek (pFile, 11L, SEEK_SET);
sprintf(runTimeStr,"%d",runTimeInt);
fwrite(runTimeStr, sizeof(char),10, pFile);
/*
fseek (pFile, 11L, SEEK_SET);
fread (runTimeStr, sizeof(char), 10, pFile);
printf("runTimeStr = %s\n",runTimeStr);
*/
fclose(pFile);
}
// ½¨Á¢ÐźŴ¦Àí»úÖÆ
void init_sigaction(void)
{
struct sigaction tact; /*Ðźŵ½ÁËÒªÖ´ÐеÄÈÎÎñ´¦Àíº¯ÊýΪdoTask*/
tact.sa_handler = doTask;
tact.sa_flags = 0; /*³õʼ»¯Ðźż¯*/
sigemptyset(&tact.sa_mask); /*½¨Á¢ÐźŴ¦Àí»úÖÆ*/
sigaction(SIGALRM, &tact, NULL);
}
void init_time()
{
struct itimerval value; /*É趨ִÐÐÈÎÎñµÄʱ¼ä¼ä¸ôΪ30Ãë0΢Ãë*/
value.it_value.tv_sec = 30;
value.it_value.tv_usec = 0; /*É趨³õʼʱ¼ä¼ÆÊýҲΪ30Ãë0΢Ãë*/
value.it_interval = value.it_value; /*ÉèÖüÆÊ±Æ÷ITIMER_REAL*/
setitimer(ITIMER_REAL, &value, NULL);
}
int main()
{
pFile = fopen(runStatusFile, "r+");
if(pFile == NULL)
{
Ïà¹ØÎĵµ£º
Ò»£ºÇ°ÑÔ
×î½üÔÚÑо¿androidµÄsensor driver£¬Ö÷ÒªÊÇE-compass£¬ÆäÖÐÓõ½ÁËLinux input×Óϵͳ.ÔÚÍøÉÏÒ²¿´Á˺ܶàÕâ·½ÃæµÄ×ÊÁÏ£¬¸Ð¾õ»¹ÊÇÕâÆª·ÖÎöµÄ±È½ÏϸÖÂ͸³¹£¬Òò´Ë×ªÔØÒ»ÏÂÒÔ±ã×Ô¼ºÑ§Ï°£¬Í¬Ê±ºÍ´ó¼Ò·ÖÏí£¡
£¨ÕâÆª²©¿ÍÖ÷ÒªÊÇÒÔ¼üÅÌÇý¶¯ÎªÀýµÄ£¬²»¹ý½²½âµÄÊÇLinux Input Subsystem£¬¿ÉÒÔ×ÐϸµÄÑо¿Ò»Ï£¡£©
¼üÅÌÇý¶¯½«¼ì ......
µ½½ñÈÕ£¬ÔÚandroidƽ̨Éϵ÷ÊÔÉùÒôµÄ·½ÃæÖÕÓÚÓÐÁ˽øÕ¹£¬ÔÀ´ÊÇÐèÒª¸ÄÒ»¸öÅäÖÃÎļþ£¬Ä¿Ç°Ö»Êǽâ¾öÁËÎÊÌ⣬¾ßÌåÔÒòÒÔºóÔÙ·ÖÎö¡£Ó²¼þƽ̨ÊÇ6410+WM9714£¬Èí¼þƽ̨ÊÇANDROID¡£ÏÖÔÚÓÉÓÚandroidϵͳÆô¶¯Ê±£¬¼ÓÔØÒôƵ·þÎñ²»³É¹¦£¬´¦ÓÚÒ»¸öËÀÑ»·ÖУ¬ÀÏÍ£Ôڵǽ½çÃæ¡£´Ëʱ´òÓ¡µÄLogcatÐÅÏ¢ÈçÏ£º
......
ÔÚ×î½üµÄÒ»¸ö¹ØÓÚLKMLµÄÌÖÂÛÖУ¬Linus¸ø³öÁËΪʲô²»ÓÃC++À´Ð´LinuxÄں˵ÄÀíÓÉ£º
"In fact, in Linux we did try C++ once already, back in 1992. It sucks. Trust me - writing kernel code in C++ is a BLOODY STUPID IDEA.
“ÊÂʵÉÏ£¬ÎÒÃÇÔø¾³¢ÊÔ¹ýÓÃC++À´Ð´£¬ÊÇÔÚ1992ÄêµÄʱºò¡£ºÜÔã¸â¡£ÏàÐÅÎÒ--ÓÃC++À´Ð´ÄÚºË ......
ÒëÕߣº¹ùÉÙ±¯
2009/12/02
ÔÎÄ£ºlinux/Documentation/driver-model/class.txt
É豸Àà
½éÉÜ
~~~~
Ò»¸öÉ豸ÀàÃèÊöÁËÒ»ÀàµÄÉ豸£¬ÀýÈçÓïÒôÉ豸»òÕßÍøÂçÉ豸¡£ÏÂÃæÊÇÒѶ¨ÒåµÄÉ豸Àà:
<Insert List of Device Classes Here>
ÿ¸öÉ豸ÀඨÒåÁËÒ»Ì×Óï·¨ºÍÉ豸×ñѵıà³Ì½Ó¿Ú¡£É豸Çý¶¯¾ÍÊÇÎªÌØ¶¨×ÜÏßÉϵÄ
ÌØ¶¨É豸¶ ......
1.ɾ³ýÎļþ¼ÐÓãºrmdir Îļþ¼ÐÃû
µ«ÊÇrmdir²»ÄÜɾ³ý·Ç¿ÕµÄÎļþ¼Ð£¬ÄÇÈçºÎɾ³ý·Ç¿ÕÎļþ¼ÐÄØ£º
2.ͨ³£Çé¿öÏ£¬É¾³ýÎļþÓãºrm ÎļþÃû
-d»ò--directory ¡¡Ö±½Ó°ÑÓûɾ³ýµÄĿ¼µÄÓ²Á¬½ÓÊý¾Ýɾ³É0£¬É¾³ý¸ÃĿ¼¡£
¡¡-f»ò--force ¡¡Ç¿ÖÆÉ¾³ýÎļþ»òĿ¼¡£
¡¡-i»ò--interactive ......