Linux ϵͳʱ¼äÉèÖᢱà³Ì×ܽá
δÍê´ýÐø...
ÉèÖÃʱ¼ä£º
date -s "2009/11/08 11:23:00"
Ó²¼þʱÖÓÓëϵͳʱ¼äͬ²½Ò»Ï£º
hwclock --systohc
±à³Ì£º
#include <cstdlib>
time_t time(time_t *timer)
µ÷Óú󽫵±Ç°ÏµÍ³Ê±¼äÓë1900Äê1ÔÂ1ÈÕÏà²îµÄÃëÊý´æÈëµ½timerÖУ¬timer¿É¿´³ÉÊÇÒ»¸ö³¤ÕûÐÍÊý
¾ßÌåÃèÊö£º
º¯ÊýÔÐÍ£º time_t time(time_t *timer)
º¯ÊýÓÃ;£º µÃµ½»úÆ÷µÄÈÕÀúʱ¼ä»òÕßÉèÖÃÈÕÀúʱ¼ä
Í· ÎÄ ¼þ£º time.h
ÊäÈë²ÎÊý£º timer:=NULLʱ£¬µÃµ½»úÆ÷ÈÕÀúʱ¼ä,=ʱ¼äÊýֵʱ ÓÃÓÚÉèÖÃÈÕÀúʱ¼ä;
struct tm* localtime(const time_t *timer)
½«time()º¯Êýµ÷ÓõĽá¹û×öΪ²ÎÊý´«Èëµ½localtime()º¯ÊýÖоÍÄܵõ½µ±Ç°Ê±¼äºÍÈÕÆÚ£¬×¢ÒâµÃµ½µÄÄêÊǺÍ1970µÄ²îÖµ£¬Ô·ÝÊǺÍ1ÔµIJîÖµ
struct tmÊÇÒ»¸ö½á¹¹Ì壬¶¨ÒåÈçÏÂ:
struct tm
{
int tm_sec; //µ±Ç°Ãë
int tm_min; //µ±Ç°·ÖÖÓ
int tm_hour; //µ±Ç°Ð¡Ê±
int tm_mday; //µ±Ç°ÔÚ±¾ÔÂÖеÄÌ죬Èç11ÔÂ1ÈÕ£¬ÔòΪ1
int tm_mon; //µ±Ç°Ô£¬·¶Î§ÊÇ0~11
int tm_year; //µ±Ç°ÄêºÍ1900µÄ²îÖµ£¬Èç2006ÄêÔòΪ36
int tm_wday; //µ±Ç°ÔÚ±¾ÐÇÆÚÖеÄÌ죬·¶Î§0~6
int tm_yday; //µ±Ç°ÔÚ±¾ÄêÖеÄÌ죬·¶Î§0~365
int tm_isdst; //Õâ¸öÎÒÒ²²»Çå³þ
}
×¢Ò⣺·µ»ØµÄtm* Ö¸ÏòÒ»¸östaticλÖã¬Ã¿´Îµ÷Ó÷µ»ØµÄ¶¼ÊÇÕâ¸ö¾²Ì¬ÇøÓò£¬ÕâÒ²¾ÍÊDz»ÐèÒªdelete tmµÄÔÒò¡£
Çóµ±Ç°Ê±¼äµÄʾÀý
int getSystemTime()
{
time_t timer;
struct tm* t_tm;
time(&timer);
t_tm = localtime(&timer);
printf("today is %4d%02d%02d%02d%02d%02d\n", t_tm.tm_year+1900,
t_tm.tm_mon+1, t_tm.tm_mday, t_tm.tm_hour, t_tm.tm_min, t_tm.tm_sec);
return 0;
}
ÆäËûʱ¼äµÄº¯ÊýºÍ½á¹¹»¹ÓУº
timeval½á¹¹
#include <include/linux/time.h>
struct timeval
{
time_t tv_sec;
susecond_t tv_usec; //µ±Ç°ÃîÄÚµÄ΢ÃîÊý
};
tms½á¹¹
±£´æ×ÅÒ»¸ö½ø³Ì¼°Æä×Ó½ø³ÌʹÓõÄcpuʱ¼ä
struct tms
{
clock_t tms_utime;
clock_t tms_stime;
clock_t tms_cutime;
clock_t tms_cstime;
}
timer_struct½á¹¹
#include <include/linux/timer.h>
struct timer_struct
{
unsigned long expires; //¶¨Ê±Æ÷±»¼¤»îµÄʱ
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
sys_execve
| - do_execve
|
| - search_binary_handler
|- linux_binfmt= elf_format
|- elf_format-> load_elf_binary
| -&nbs ......
Æß£ºkmem_cache_free£¨£©µÄʵÏÖ
kmem_cache_freeÓÃÓÚ°Ñ´ÓslabÖзÖÅäµÄ¶ÔÏóÊͷŵô£¬Í¬·ÖÅäÒ»Ñù£¬ËüÊ×ÏÈ»á°ÑËü·Åµ½ACÖУ¬Èç¹ûACÂúÁË£¬Ôò°Ñ¶ÔÏóÊͷŵ½shareÁ´ÖУ¬Èç¹ûshareÒ²ÂúÁË£¬Ò²¾Í°ÑËüÊÍ·ÅÖÁslab¡£À´¿´¾ßÌåµÄ´úÂ룺
void kmem_cache_free (kmem_cache_t *cachep, void *objp)
{
unsi ......
Linux ÏÂÃæÊ¹ÓÃRPCÐèҪʹÓõ½ÃüÁîrpcgen.
ÔÚLinuxÏ¿ª·¢RPC³ÌÐòÁ÷³ÌÈçÏ£º
1.дһ¸örpc³ÌÐò£¬
Èçtest.x
2.ʹÓÃrpcgenÉú³É±ØÐëµÄÎļþ£¬Í¨³£Êǿͻ§¶ËºÍ·þÎñÆ÷¶ËÒÔ¼°Í·Îļþ
$rpcgen test.x
3.ʹÓÃrpcgenÉú³É·þÎñÆ÷¶ËºÍ¿Í»§¶ËµÄCÓïÑÔ´úÂë
&n ......